-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest.js
58 lines (55 loc) · 1.64 KB
/
test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
require('chai').should();
const partOne = require('./partOne');
const partTwo = require('./partTwo');
const TESTS = {
part1: {
test1: {
input: 'aA',
result: 0
},
test2: {
input: 'abBA',
result: 0
},
test3: {
input: 'abAB',
result: 4
},
test4: {
input: 'aabAAB',
result: 6
},
test5: {
input: 'dabAcCaCBAcCcaDA',
result: 10
},
},
part2: {
test1: {
input: 'dabAcCaCBAcCcaDA',
result: 4
}
}
};
describe('Part 1', () => {
it(`should return ${TESTS.part1.test1.result} when input is ${TESTS.part1.test1.input}`, () => {
partOne(TESTS.part1.test1.input).should.equal(TESTS.part1.test1.result);
});
it(`should return ${TESTS.part1.test2.result} when input is ${TESTS.part1.test2.input}`, () => {
partOne(TESTS.part1.test2.input).should.equal(TESTS.part1.test2.result);
});
it(`should return ${TESTS.part1.test3.result} when input is ${TESTS.part1.test3.input}`, () => {
partOne(TESTS.part1.test3.input).should.equal(TESTS.part1.test3.result);
});
it(`should return ${TESTS.part1.test4.result} when input is ${TESTS.part1.test4.input}`, () => {
partOne(TESTS.part1.test4.input).should.equal(TESTS.part1.test4.result);
});
it(`should return ${TESTS.part1.test5.result} when input is ${TESTS.part1.test5.input}`, () => {
partOne(TESTS.part1.test5.input).should.equal(TESTS.part1.test5.result);
});
});
describe('Part 2', () => {
it(`should return ${TESTS.part2.test1.result} when input is ${TESTS.part2.test1.input}`, () => {
partTwo(TESTS.part2.test1.input).should.equal(TESTS.part2.test1.result);
});
});