-
Notifications
You must be signed in to change notification settings - Fork 0
/
say.spec.js
78 lines (60 loc) · 2.07 KB
/
say.spec.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
var say = require('./say');
describe('say', function () {
it('zero', function () {
expect(say.inEnglish(0)).toBe('zero');
});
xit('one', function () {
expect(say.inEnglish(1)).toBe('one');
});
xit('fourteen', function () {
expect(say.inEnglish(14)).toBe('fourteen');
});
xit('twenty', function () {
expect(say.inEnglish(20)).toBe('twenty');
});
xit('twenty-two', function () {
expect(say.inEnglish(22)).toBe('twenty-two');
});
xit('one hundred', function () {
expect(say.inEnglish(100)).toBe('one hundred');
});
xit('one hundred twenty-three', function () {
expect(say.inEnglish(123)).toBe('one hundred twenty-three');
});
xit('one thousand', function () {
expect(say.inEnglish(1000)).toBe('one thousand');
});
xit('one thousand two hundred thirty-four', function () {
expect(say.inEnglish(1234)).toBe('one thousand two hundred thirty-four');
});
xit('one million', function () {
expect(say.inEnglish(1000000)).toBe('one million');
});
xit('one million two', function () {
expect(say.inEnglish(1000002)).toBe('one million two');
});
xit('one million two thousand three hundred forty-five', function () {
expect(say.inEnglish(1002345))
.toBe('one million two thousand three hundred forty-five');
});
xit('one billion', function () {
expect(say.inEnglish(1000000000)).toBe('one billion');
});
xit('a really big number', function () {
var expected = 'nine hundred eighty-seven billion ';
expected += 'six hundred fifty-four million ';
expected += 'three hundred twenty-one thousand ';
expected += 'one hundred twenty-three';
expect(say.inEnglish(987654321123)).toBe(expected);
});
xit('raises an error below zero', function () {
expect(function () {
say.inEnglish(-1);
}).toThrow(new Error('Number must be between 0 and 999,999,999,999.'));
});
xit('raises an error above 999,999,999,999', function () {
expect(function () {
say.inEnglish(1000000000000);
}).toThrow(new Error('Number must be between 0 and 999,999,999,999.'));
});
});