Skip to content

Commit d73e4a1

Browse files
committed
Conflicts: package.json
2 parents 2fb7b66 + d9a2c71 commit d73e4a1

File tree

4 files changed

+184
-1
lines changed

4 files changed

+184
-1
lines changed

test/languages/de.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
({
2+
hello: "Hallo {firstname} {lastname}"
3+
})

test/languages/en.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
({
2+
sum: "The result of the operation {operation} is {result}",
3+
inbox: "You Have {mails} mensajes",
4+
hello: "Hi {firstname} {lastname}"
5+
})

test/languages/es.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
({
2+
sum: "El resultado de tu operación {operation} es {result}",
3+
inbox: [
4+
"No tienes mensajes", //hello
5+
"Tienes un solo mensaje",
6+
"Tienes {$num} mensajes"
7+
],
8+
magic: "El texto {texto} al reves es: ·{params.texto.split('').reverse().join('')}·",
9+
hello: "Hola {firstname} {lastname}",
10+
func: function(){
11+
var square = param * param;
12+
return "El cuadrado de {param} es " + square;
13+
}
14+
})

test/test.js

Lines changed: 162 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,163 @@
11
var test = require('unit.js');
2-
require("../index");
2+
var i18n = require("../index.js");
3+
4+
describe("Textualization -----",function(){
5+
describe("Simple use",function(){
6+
it("Simple i18n",function(){
7+
i18n.load("i18nSample",{
8+
hello: "Hola {firstname} {lastname}"
9+
},"es");
10+
i18n.load("i18nSample",{
11+
hello: "Hello {firstname} {lastname}"
12+
},"en");
13+
14+
var user = {
15+
firstname: "Homer",
16+
lastname: "Simpson"
17+
}
18+
19+
test
20+
.value(i18n("i18nSample.hello",user,"es"))
21+
.isType("string")
22+
.is("Hola Homer Simpson")
23+
24+
.value(i18n("i18nSample.hello",user,"en"))
25+
.isType("string")
26+
.is("Hello Homer Simpson")
27+
28+
})
29+
30+
31+
it("Numerals - Plural & Singular",function(){
32+
i18n.load("i18nSample",{
33+
inbox: [
34+
"Tienes un mensaje",
35+
"Tienes {$num} mensajes"
36+
]
37+
},"es");
38+
39+
test
40+
.value(i18n("i18nSample.inbox",{$num:0},"es"))
41+
.isType("string")
42+
.is("Tienes 0 mensajes")
43+
.value(i18n("i18nSample.inbox",{$num:8},"es"))
44+
.isType("string")
45+
.is("Tienes 8 mensajes")
46+
.value(i18n("i18nSample.inbox",{$num:14999},"es"))
47+
.isType("string")
48+
.is("Tienes 14999 mensajes")
49+
.value(i18n("i18nSample.inbox",{$num:1},"es"))
50+
.isType("string")
51+
.is("Tienes un mensaje")
52+
53+
})
54+
55+
56+
it("Numerals - Multiple items",function(){
57+
i18n.load("i18nSample",{
58+
nodo: [
59+
"No hay elementos",
60+
"Un elemento",
61+
"Dos elementos",
62+
"Tres elementos",
63+
"cuatro elementos",
64+
"cinco elementos",
65+
"{$num} elementos"
66+
]
67+
},"es");
68+
69+
test
70+
.value(i18n("i18nSample.nodo",{$num:0},"es"))
71+
.isType("string")
72+
.is("No hay elementos")
73+
.value(i18n("i18nSample.nodo",{$num:1},"es"))
74+
.isType("string")
75+
.is("Un elemento")
76+
.value(i18n("i18nSample.nodo",{$num:2},"es"))
77+
.isType("string")
78+
.is("Dos elementos")
79+
.value(i18n("i18nSample.nodo",{$num:3},"es"))
80+
.isType("string")
81+
.is("Tres elementos")
82+
.value(i18n("i18nSample.nodo",{$num:4},"es"))
83+
.isType("string")
84+
.is("cuatro elementos")
85+
.value(i18n("i18nSample.nodo",{$num:5},"es"))
86+
.isType("string")
87+
.is("cinco elementos")
88+
.value(i18n("i18nSample.nodo",{$num:6},"es"))
89+
.isType("string")
90+
.is("6 elementos")
91+
.value(i18n("i18nSample.nodo",{$num:7},"es"))
92+
.isType("string")
93+
.is("7 elementos")
94+
.value(i18n("i18nSample.nodo",7,"es"))
95+
.isType("string")
96+
.is("7 elementos")
97+
98+
})
99+
100+
it("Functions ",function(){
101+
i18n.load("i18nSample",{
102+
func: function(){
103+
var square = param * param;
104+
return "El cuadrado de {param} es " + square;
105+
}
106+
},"es");
107+
108+
test
109+
.value(i18n("i18nSample.func",{param:5},"es"))
110+
.isType("string")
111+
.is("El cuadrado de 5 es 25")
112+
113+
})
114+
115+
})
116+
117+
describe("Load",function(){
118+
it("Load 3 languages",function(){
119+
i18n.load("i18nSampleLoad","./test/languages");
120+
i18n.languages = ["es","en","de"];
121+
122+
var user = {
123+
firstname: "Homer",
124+
lastname: "Simpson"
125+
};
126+
127+
test
128+
.value(i18n("i18nSampleLoad.hello",user,"es"))
129+
.isType("string")
130+
.is("Hola Homer Simpson")
131+
132+
.value(i18n("i18nSampleLoad.hello",user,"en"))
133+
.isType("string")
134+
.is("Hi Homer Simpson")
135+
136+
.value(i18n("i18nSampleLoad.hello",user,"de"))
137+
.isType("string")
138+
.is("Hallo Homer Simpson")
139+
140+
})
141+
142+
it("Load 3 languages and after 2",function(){
143+
i18n.load("i18nSampleLoad","./test/languages");
144+
i18n.languages = ["es","en","de"];
145+
i18n.languages = ["es","en"];
146+
i18n.reload();
147+
148+
var user = {
149+
firstname: "Homer",
150+
lastname: "Simpson"
151+
};
152+
153+
//console.log(i18n.heap);
154+
155+
test
156+
.value(i18n("i18nSampleLoad.hello",user,"de"))
157+
.is("Hallo Homer Simpson")
158+
})
159+
160+
})
161+
162+
163+
});

0 commit comments

Comments
 (0)