-
-
Notifications
You must be signed in to change notification settings - Fork 24
/
ja-jp_test.go
74 lines (68 loc) · 2.21 KB
/
ja-jp_test.go
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
package ntw
import (
"fmt"
"testing"
"github.com/stretchr/testify/assert"
)
func ExampleIntegerToJaJp() {
fmt.Println(IntegerToJaJp(42))
// Output: 四十二
}
func TestIntegerToJaJp(t *testing.T) {
t.Parallel()
tests := map[int]string{
-1: "マイナス一",
0: "零",
1: "一",
9: "九",
10: "十",
11: "十一",
19: "十九",
20: "二十",
21: "二十一",
80: "八十",
90: "九十",
99: "九十九",
100: "百",
101: "百一",
111: "百十一",
120: "百二十",
121: "百二十一",
900: "九百",
909: "九百九",
919: "九百十九",
990: "九百九十",
999: "九百九十九",
1000: "千",
2000: "二千",
4000: "四千",
5000: "五千",
11000: "一万千",
21000: "二万千",
999000: "九十九万九千",
999999: "九十九万九千九百九十九",
1000000: "百万",
2000000: "二百万",
4000000: "四百万",
5000000: "五百万",
100100100: "一億十万百",
500500500: "五億五十万五百",
606606606: "六億六百六十万六千六百六",
999000000: "九億九千九百万",
999000999: "九億九千九百万九百九十九",
999990009: "九億九千九百九十九万九",
999999999: "九億九千九百九十九万九千九百九十九",
1174315110: "十一億七千四百三十一万五千百十",
1174315119: "十一億七千四百三十一万五千百十九",
15174315119: "百五十一億七千四百三十一万五千百十九",
35174315119: "三百五十一億七千四百三十一万五千百十九",
935174315119: "九千三百五十一億七千四百三十一万五千百十九",
2935174315119: "二兆九千三百五十一億七千四百三十一万五千百十九",
}
for input, expectedOutput := range tests {
name := fmt.Sprintf("%d", input)
t.Run(name, func(t *testing.T) {
assert.Equal(t, expectedOutput, IntegerToJaJp(input))
})
}
}