diff --git a/src/main/ts/move-validation.ts b/src/main/ts/move-validation.ts
index 749cf64d3099b1c58a7f771c785fd7144a1d189a..519ea08f9b2e3c290b9d51894397b6c5b6b629a7 100644
--- a/src/main/ts/move-validation.ts
+++ b/src/main/ts/move-validation.ts
@@ -102,7 +102,7 @@ export function queenMove(board: Chessboard, move: Move): boolean {
  */
 export function empressMove(board: Chessboard, move: Move): boolean {
     // #TODO: Implement this function
-    return true;
+    return move.from.rank === move.to.rank;
 }
 
 /**
diff --git a/src/test/ts/empress-move-validation.spec.ts b/src/test/ts/empress-move-validation.spec.ts
index b5371dcfeffadd3835aa98cb12c53cfa23316d77..2dfcad0af352edf2276f7de6b895d782b8818c6f 100644
--- a/src/test/ts/empress-move-validation.spec.ts
+++ b/src/test/ts/empress-move-validation.spec.ts
@@ -1,25 +1,89 @@
 import { Expect, Test, Setup} from "alsatian";
-import { Chessboard, createEmptyChessboard, putPiece } from '../../main/ts/chessboard';
+import * as isPossible from '../../main/ts/move-validation'
+import * as pieces from '../../main/ts/piece'
+import { Chessboard, createEmptyChessboard, putPiece, pieceAtPosition } from '../../main/ts/chessboard';
+import {Position, position} from '../../main/ts/position';
+import { Move, move } from '../../main/ts/movements';
 
 let chessboard : Chessboard;
 
+const positionA4 : Position = position(0, 3) // A4
+const positionA5 : Position = position(0, 4) // A5
+const positionA6 : Position = position(0, 5) // A6
+const positionA7 : Position = position(0, 6) // A7
+const positionA8 : Position = position(0, 7) // A8
+
+const positionB1 : Position = position(1, 0) // B1
+const positionB2 : Position = position(1, 1) // B2
+const positionB3 : Position = position(1, 2) // B3
+const positionB5 : Position = position(1, 4) // B5
+const positionB6 : Position = position(1, 5) // B6
+
+const positionC3 : Position = position(2, 1) // C3
+const positionC4 : Position = position(2, 3) // C4
+const positionC5 : Position = position(2, 4) // C5
+const positionC6 : Position = position(2, 5) // C6
+const positionC7 : Position = position(2, 6) // C7
+
+const positionD1 : Position = position(3, 0) // D1
+const positionD2 : Position = position(3, 1) // D2
+const positionD3 : Position = position(3, 2) // D3
+const positionD4 : Position = position(3, 3) // D4
+const positionD5 : Position = position(3, 4) // D5
+const positionD6 : Position = position(3, 5) // D6
+const positionD7 : Position = position(3, 6) // D7
+
+
+const positionE1 : Position = position(4, 0) // E1
+const positionE4 : Position = position(4, 3) // E4
+const positionE8 : Position = position(4, 7) // E8
+
+const positionF1 : Position = position(5, 0) // F1
+const positionF2 : Position = position(5, 1) // F2
+const positionF6 : Position = position(5, 5) // F6
+const positionF7 : Position = position(5, 6) // F7
+const positionG3 : Position = position(6, 2) // G3
+const positionG5 : Position = position(6, 4) // G5
+
+const positionH1 : Position = position(7, 0) // H1
+const positionH3 : Position = position(7, 2) // H3
+const positionH4 : Position = position(7, 3) // H4
+const positionH5 : Position = position(7, 4) // H5
+const positionH7 : Position = position(7, 6) // H7
+
+// Horizontal moves
+const moveE4_H4 : Move = move(positionE4, positionH4);
+const moveE4_A4 : Move = move(positionE4, positionA4);
+
+// Vertical moves
+const moveE4_E1 : Move = move(positionE4, positionE1);
+const moveE4_E8 : Move = move(positionE4, positionE8);
+
+
 export class TestEmpressMoves {
     @Setup
     beforeEach() {
-        // TODO:
-        // Initialize an empty chessboard
-        // Place a white Empress on E4
+        chessboard = createEmptyChessboard ();
+        
+        //La variable "positionE4" a été crée au début du module pour simplifier le code des tests
+        //Place une Impératrice sur la case E4 de l'échiquier vide
+
+        putPiece(chessboard, positionE4, pieces.blackEmpress)
+        
     }
 
     @Test("An Empress can move horizontally")
     testCanMoveHorizontally() {
+       Expect(isPossible.empressMove(chessboard, moveE4_H4)).toBeTruthy();
+       Expect(isPossible.empressMove(chessboard, moveE4_A4)).toBeTruthy();
         // TODO:
         // Check the following moves are possible: moveE4_H4, moveE4_A4 
     }
 
     @Test("A Empress can move vertically")
     testCanMoveVertically() {
-        // TODO:
+        Expect(isPossible.empressMove(chessboard, moveE4_E8)).toBeTruthy();
+        Expect(isPossible.empressMove(chessboard, moveE4_E1)).toBeTruthy();
         // Check the following moves are possible: moveE4_E1, moveE4_E8        
     }
 
@@ -78,3 +142,5 @@ export class TestEmpressMoves {
         // Check the move moveE4_E1 is impossible        
     }
 }
+
+    
\ No newline at end of file