Skip to content

Commit 269899f

Browse files
committed
Yavalath: Add unit test
1 parent 4627810 commit 269899f

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed

test/games/yavalath.test.ts

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/* eslint-disable no-unused-expressions */
2+
/* eslint-disable @typescript-eslint/no-unused-expressions */
3+
4+
import "mocha";
5+
import { expect } from "chai";
6+
import { YavalathGame } from '../../src/games';
7+
8+
describe("EOG scenarios", () => {
9+
it ("Three loses", () => {
10+
let g = new YavalathGame(2);
11+
g.board.set("e1", 1);
12+
g.board.set("e2", 1);
13+
g.move("e3");
14+
expect(g.gameover).to.be.true;
15+
expect(g.winner).to.have.members([2]);
16+
17+
g = new YavalathGame(2);
18+
g.board.set("i1", 1);
19+
g.board.set("h2", 1);
20+
g.move("g3");
21+
expect(g.gameover).to.be.true;
22+
expect(g.winner).to.have.members([2]);
23+
24+
g = new YavalathGame(2);
25+
g.board.set("i1", 1);
26+
g.board.set("h1", 1);
27+
g.move("g1");
28+
expect(g.gameover).to.be.true;
29+
expect(g.winner).to.have.members([2]);
30+
});
31+
it ("Four wins", () => {
32+
let g = new YavalathGame(2);
33+
g.board.set("e1", 1);
34+
g.board.set("e2", 1);
35+
g.board.set("e4", 1);
36+
g.move("e3");
37+
expect(g.gameover).to.be.true;
38+
expect(g.winner).to.have.members([1]);
39+
40+
g = new YavalathGame(2);
41+
g.board.set("i1", 1);
42+
g.board.set("h2", 1);
43+
g.board.set("f4", 1);
44+
g.move("g3");
45+
expect(g.gameover).to.be.true;
46+
expect(g.winner).to.have.members([1]);
47+
48+
g = new YavalathGame(2);
49+
g.board.set("i1", 1);
50+
g.board.set("h1", 1);
51+
g.board.set("f1", 1);
52+
g.move("g1");
53+
expect(g.gameover).to.be.true;
54+
expect(g.winner).to.have.members([1]);
55+
});
56+
});
57+

0 commit comments

Comments
 (0)