Skip to content

Commit d52ce8b

Browse files
committed
Adding tests for "Winamax".
1 parent de54b67 commit d52ce8b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+540
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1313
- Tests for "Roller coaster".
1414
- Tests for "Super computer".
1515
- Tests for "TAN network".
16+
- Tests for "Winamax".
1617

1718
## [1.3.0] - 2022-03-02
1819
### Added
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
/**
2+
* The "Winamax" puzzle.
3+
*/
4+
function execute(readline) {
5+
var inputs = readline().split(' ');
6+
const width = parseInt(inputs[0]);
7+
const height = parseInt(inputs[1]);
8+
for (let i = 0; i < height; i++) {
9+
const row = readline();
10+
}
11+
}
12+
13+
export { execute };
Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
import { assert } from 'chai';
2+
import sinon from 'sinon';
3+
import File from '../../../File.js';
4+
import { assertOutputAnswer } from '../../../assertOutputAnswer.js';
5+
import { execute } from '../../../../lib/training/hard/winamax/winamax.js';
6+
7+
/**
8+
* Tests for the "Winamax" puzzle.
9+
*/
10+
suite('Winamax', function() {
11+
const sandbox = sinon.createSandbox();
12+
13+
setup(function () {
14+
sandbox.stub(console, "log");
15+
});
16+
17+
teardown(function () {
18+
sandbox.restore();
19+
});
20+
21+
22+
test('Test 1', function() {
23+
let inputFile = new File('./test/training/hard/winamax/input/01 - test 1.txt');
24+
25+
execute(inputFile.readline.bind(inputFile));
26+
27+
assert.strictEqual(
28+
console.log.getCall(0).args[0],
29+
">."
30+
);
31+
});
32+
33+
test('Test 2', function() {
34+
let inputFile = new File('./test/training/hard/winamax/input/02 - test 2.txt');
35+
36+
execute(inputFile.readline.bind(inputFile));
37+
38+
assertOutputAnswer('./test/training/hard/winamax/output/02 - test 2.txt');
39+
});
40+
41+
test('Test 3', function() {
42+
let inputFile = new File('./test/training/hard/winamax/input/03 - test 3.txt');
43+
44+
execute(inputFile.readline.bind(inputFile));
45+
46+
assertOutputAnswer('./test/training/hard/winamax/output/03 - test 3.txt');
47+
});
48+
49+
test('Test 4', function() {
50+
let inputFile = new File('./test/training/hard/winamax/input/04 - test 4.txt');
51+
52+
execute(inputFile.readline.bind(inputFile));
53+
54+
assertOutputAnswer('./test/training/hard/winamax/output/04 - test 4.txt');
55+
});
56+
57+
test('Test 5', function() {
58+
let inputFile = new File('./test/training/hard/winamax/input/05 - test 5.txt');
59+
60+
execute(inputFile.readline.bind(inputFile));
61+
62+
assertOutputAnswer('./test/training/hard/winamax/output/05 - test 5.txt');
63+
});
64+
65+
test('Test 6', function() {
66+
let inputFile = new File('./test/training/hard/winamax/input/06 - test 6.txt');
67+
68+
execute(inputFile.readline.bind(inputFile));
69+
70+
assertOutputAnswer('./test/training/hard/winamax/output/06 - test 6.txt');
71+
});
72+
73+
test('Test 7', function() {
74+
let inputFile = new File('./test/training/hard/winamax/input/07 - test 7.txt');
75+
76+
execute(inputFile.readline.bind(inputFile));
77+
78+
assertOutputAnswer('./test/training/hard/winamax/output/07 - test 7.txt');
79+
});
80+
81+
test('Test 8', function() {
82+
let inputFile = new File('./test/training/hard/winamax/input/08 - test 8.txt');
83+
84+
execute(inputFile.readline.bind(inputFile));
85+
86+
assertOutputAnswer('./test/training/hard/winamax/output/08 - test 8.txt');
87+
});
88+
89+
test('Test 9', function() {
90+
let inputFile = new File('./test/training/hard/winamax/input/09 - test 9.txt');
91+
92+
execute(inputFile.readline.bind(inputFile));
93+
94+
assertOutputAnswer('./test/training/hard/winamax/output/09 - test 9.txt');
95+
});
96+
97+
test('Test 10', function() {
98+
let inputFile = new File('./test/training/hard/winamax/input/10 - test 10.txt');
99+
100+
execute(inputFile.readline.bind(inputFile));
101+
102+
assertOutputAnswer('./test/training/hard/winamax/output/10 - test 10.txt');
103+
});
104+
105+
test('Test 11', function() {
106+
let inputFile = new File('./test/training/hard/winamax/input/11 - test 11.txt');
107+
108+
execute(inputFile.readline.bind(inputFile));
109+
110+
assertOutputAnswer('./test/training/hard/winamax/output/11 - test 11.txt');
111+
});
112+
113+
test('Test 12', function() {
114+
let inputFile = new File('./test/training/hard/winamax/input/12 - test 12.txt');
115+
116+
execute(inputFile.readline.bind(inputFile));
117+
118+
assertOutputAnswer('./test/training/hard/winamax/output/12 - test 12.txt');
119+
});
120+
121+
test('Test 13', function() {
122+
let inputFile = new File('./test/training/hard/winamax/input/13 - test 13.txt');
123+
124+
execute(inputFile.readline.bind(inputFile));
125+
126+
assertOutputAnswer('./test/training/hard/winamax/output/13 - test 13.txt');
127+
});
128+
129+
test('Test 14', function() {
130+
let inputFile = new File('./test/training/hard/winamax/input/14 - test 14.txt');
131+
132+
execute(inputFile.readline.bind(inputFile));
133+
134+
assertOutputAnswer('./test/training/hard/winamax/output/14 - test 14.txt');
135+
});
136+
137+
test('Test 15', function() {
138+
let inputFile = new File('./test/training/hard/winamax/input/15 - test 15.txt');
139+
140+
execute(inputFile.readline.bind(inputFile));
141+
142+
assertOutputAnswer('./test/training/hard/winamax/output/15 - test 15.txt');
143+
});
144+
145+
test('Test 16', function() {
146+
let inputFile = new File('./test/training/hard/winamax/input/16 - test 16.txt');
147+
148+
execute(inputFile.readline.bind(inputFile));
149+
150+
assertOutputAnswer('./test/training/hard/winamax/output/16 - test 16.txt');
151+
});
152+
153+
test('Test 17', function() {
154+
let inputFile = new File('./test/training/hard/winamax/input/17 - test 17.txt');
155+
156+
execute(inputFile.readline.bind(inputFile));
157+
158+
assertOutputAnswer('./test/training/hard/winamax/output/17 - test 17.txt');
159+
});
160+
161+
test('Test 18', function() {
162+
let inputFile = new File('./test/training/hard/winamax/input/18 - test 18.txt');
163+
164+
execute(inputFile.readline.bind(inputFile));
165+
166+
assertOutputAnswer('./test/training/hard/winamax/output/18 - test 18.txt');
167+
});
168+
169+
test('Test 19', function() {
170+
let inputFile = new File('./test/training/hard/winamax/input/19 - test 19.txt');
171+
172+
execute(inputFile.readline.bind(inputFile));
173+
174+
assertOutputAnswer('./test/training/hard/winamax/output/19 - test 19.txt');
175+
});
176+
177+
test('Test 20', function() {
178+
let inputFile = new File('./test/training/hard/winamax/input/20 - test 20.txt');
179+
180+
execute(inputFile.readline.bind(inputFile));
181+
182+
assertOutputAnswer('./test/training/hard/winamax/output/20 - test 20.txt');
183+
});
184+
185+
test('Test 21', function() {
186+
let inputFile = new File('./test/training/hard/winamax/input/21 - test 21.txt');
187+
188+
execute(inputFile.readline.bind(inputFile));
189+
190+
assertOutputAnswer('./test/training/hard/winamax/output/21 - test 21.txt');
191+
});
192+
});
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
2 1
2+
1H
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
3 3
2+
2.X
3+
..H
4+
.H1
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
5 5
2+
4..XX
3+
.H.H.
4+
...H.
5+
.2..2
6+
.....
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
6 6
2+
3..H.2
3+
.2..H.
4+
..H..H
5+
.X.2.X
6+
......
7+
3..H..
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
8 8
2+
.XXX.5X.
3+
X.4.X..X
4+
X4..X3.X
5+
X...X.X.
6+
.X.X.H.X
7+
X.HX...X
8+
X..X.H.X
9+
.XH.XXX.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
8 8
2+
.......4
3+
....HH.2
4+
..5.....
5+
H....22X
6+
.3XH.HXX
7+
..X3.H.X
8+
..XH....
9+
H2X.H..3
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
8 8
2+
4H5.....
3+
......3.
4+
......H.
5+
.....H3.
6+
........
7+
....HH..
8+
.43.....
9+
..H3H...

0 commit comments

Comments
 (0)