-
-
Notifications
You must be signed in to change notification settings - Fork 25
/
Copy pathes-es_test.go
113 lines (107 loc) · 3.49 KB
/
es-es_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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
package ntw
import (
"fmt"
"testing"
"github.com/stretchr/testify/assert"
)
func ExampleIntegerToEsEs() {
fmt.Println(IntegerToEsEs(42))
// Output: cuarenta y dos
}
func TestIntegerToEsEs(t *testing.T) {
t.Parallel()
tests := map[int]string{
-1: "menos uno",
0: "cero",
1: "uno",
2: "dos",
3: "tres",
4: "cuatro",
5: "cinco",
6: "seis",
7: "siete",
8: "ocho",
9: "nueve",
10: "diez",
11: "once",
12: "doce",
13: "trece",
14: "catorce",
15: "quince",
16: "dieciséis",
17: "diecisiete",
18: "dieciocho",
19: "diecinueve",
20: "veinte",
21: "veintiuno",
22: "veintidós",
23: "veintitrés",
24: "veinticuatro",
25: "veinticinco",
26: "veintiséis",
27: "veintisiete",
28: "veintiocho",
29: "veintinueve",
30: "treinta",
31: "treinta y uno",
32: "treinta y dos",
39: "treinta y nueve",
42: "cuarenta y dos",
80: "ochenta",
90: "noventa",
99: "noventa y nueve",
100: "ciento",
101: "ciento uno",
111: "ciento once",
120: "ciento veinte",
121: "ciento veintiuno",
200: "doscientos",
300: "trescientos",
400: "cuatrocientos",
500: "quinientos",
600: "seiscientos",
700: "setecientos",
800: "ochocientos",
900: "novecientos",
909: "novecientos nueve",
919: "novecientos diecinueve",
990: "novecientos noventa",
999: "novecientos noventa y nueve",
1000: "mil",
2000: "dos mil",
4000: "cuatro mil",
5000: "cinco mil",
11000: "once mil",
21000: "veintiún mil",
28000: "veintiocho mil",
//31000: "treinta y un mil",
32000: "treinta y dos mil",
39000: "treinta y nueve mil",
42000: "cuarenta y dos mil",
999000: "novecientos noventa y nueve mil",
999999: "novecientos noventa y nueve mil novecientos noventa y nueve",
1000000: "un millón",
2000000: "dos millones",
4000000: "cuatro millones",
5000000: "cinco millones",
100100100: "ciento millones ciento mil ciento",
500500500: "quinientos millones quinientos mil quinientos",
606606606: "seiscientos seis millones seiscientos seis mil seiscientos seis",
999000000: "novecientos noventa y nueve millones",
999000999: "novecientos noventa y nueve millones novecientos noventa y nueve",
999999000: "novecientos noventa y nueve millones novecientos noventa y nueve mil",
999999999: "novecientos noventa y nueve millones novecientos noventa y nueve mil novecientos noventa y nueve",
1174315110: "un mil millones ciento setenta y cuatro millones trescientos quince mil ciento diez",
1174315119: "un mil millones ciento setenta y cuatro millones trescientos quince mil ciento diecinueve",
15174315119: "quince mil millones ciento setenta y cuatro millones trescientos quince mil ciento diecinueve",
35174315119: "treinta y cinco mil millones ciento setenta y cuatro millones trescientos quince mil ciento diecinueve",
935174315119: "novecientos treinta y cinco mil millones ciento setenta y cuatro millones trescientos quince mil ciento diecinueve",
2935174315119: "dos billones novecientos treinta y cinco mil millones ciento setenta y cuatro millones trescientos quince mil ciento diecinueve",
}
for input, expectedOutput := range tests {
name := fmt.Sprintf("%d", input)
t.Run(name, func(t *testing.T) {
assert.Equal(t, expectedOutput, IntegerToEsEs(input))
})
}
}