Skip to content

Commit 380bcce

Browse files
committed
Added QUnit tests.
1 parent c565755 commit 380bcce

File tree

5 files changed

+2634
-0
lines changed

5 files changed

+2634
-0
lines changed

tests/no-locale.html

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<!DOCTYPE html>
2+
<html lang="ch">
3+
<head>
4+
<meta charset="utf-8">
5+
<title>No Translation Test</title>
6+
<link rel="stylesheet" href="qunit.css">
7+
</head>
8+
<body>
9+
<div id="qunit"></div>
10+
<div id="qunit-fixture"></div>
11+
<script src="../l10n.js"></script>
12+
<script src="qunit.js"></script>
13+
</body>
14+
<script>
15+
test('toLocaleString Unaffected', function () {
16+
var input = "The quick brown fox jumps over the lazy dog.",
17+
expected = "The quick brown fox jumps over the lazy dog.";
18+
equal(input, expected, 'This should work with no problem.');
19+
equal(input.toLocaleString(), expected, 'l10n.js does not alter the default behaviour.');
20+
});
21+
</script>
22+
</html>
23+

tests/one-locale.html

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>No Translation Test</title>
6+
<link rel="stylesheet" href="qunit.css">
7+
</head>
8+
<body>
9+
<div id="qunit"></div>
10+
<div id="qunit-fixture"></div>
11+
<script src="../l10n.js"></script>
12+
<script src="qunit.js"></script>
13+
</body>
14+
<script>
15+
test('1 locale (default)', function () {
16+
var input = "There is 1 book on the shelf.",
17+
inputVar = '%sentence',
18+
expected = "There is 1 book on the shelf.";
19+
20+
//initiate 1 locale
21+
String.toLocaleString({
22+
'en': {
23+
'%sentence': 'There is 1 book on the shelf.'
24+
}
25+
});
26+
27+
equal(input, expected, 'This should work with no problem.');
28+
equal(input.toLocaleString(), expected,
29+
'This should also work with no problem.');
30+
equal(inputVar, '%sentence',
31+
'Wrong way to use l10n.');
32+
equal(inputVar.toLocaleString(), expected,
33+
'Translation with variable successful.');
34+
});
35+
36+
test('1 locale (specified)', function () {
37+
var input = "There is 1 book on the shelf.",
38+
inputVar = '%sentence',
39+
expected = "There is 1 book on the shelf.";
40+
41+
String.locale = 'en';
42+
43+
equal(input, expected, 'This should work with no problem.');
44+
equal(input.toLocaleString(), expected,
45+
'This should also work with no problem.');
46+
equal(inputVar, '%sentence',
47+
'Wrong way to use l10n.');
48+
equal(inputVar.toLocaleString(), expected,
49+
'Translation with variable successful.');
50+
});
51+
</script>
52+
</html>
53+

tests/qunit.css

Lines changed: 244 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,244 @@
1+
/**
2+
* QUnit v1.12.0 - A JavaScript Unit Testing Framework
3+
*
4+
* http://qunitjs.com
5+
*
6+
* Copyright 2012 jQuery Foundation and other contributors
7+
* Released under the MIT license.
8+
* http://jquery.org/license
9+
*/
10+
11+
/** Font Family and Sizes */
12+
13+
#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
14+
font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
15+
}
16+
17+
#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
18+
#qunit-tests { font-size: smaller; }
19+
20+
21+
/** Resets */
22+
23+
#qunit-tests, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult, #qunit-modulefilter {
24+
margin: 0;
25+
padding: 0;
26+
}
27+
28+
29+
/** Header */
30+
31+
#qunit-header {
32+
padding: 0.5em 0 0.5em 1em;
33+
34+
color: #8699a4;
35+
background-color: #0d3349;
36+
37+
font-size: 1.5em;
38+
line-height: 1em;
39+
font-weight: normal;
40+
41+
border-radius: 5px 5px 0 0;
42+
-moz-border-radius: 5px 5px 0 0;
43+
-webkit-border-top-right-radius: 5px;
44+
-webkit-border-top-left-radius: 5px;
45+
}
46+
47+
#qunit-header a {
48+
text-decoration: none;
49+
color: #c2ccd1;
50+
}
51+
52+
#qunit-header a:hover,
53+
#qunit-header a:focus {
54+
color: #fff;
55+
}
56+
57+
#qunit-testrunner-toolbar label {
58+
display: inline-block;
59+
padding: 0 .5em 0 .1em;
60+
}
61+
62+
#qunit-banner {
63+
height: 5px;
64+
}
65+
66+
#qunit-testrunner-toolbar {
67+
padding: 0.5em 0 0.5em 2em;
68+
color: #5E740B;
69+
background-color: #eee;
70+
overflow: hidden;
71+
}
72+
73+
#qunit-userAgent {
74+
padding: 0.5em 0 0.5em 2.5em;
75+
background-color: #2b81af;
76+
color: #fff;
77+
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
78+
}
79+
80+
#qunit-modulefilter-container {
81+
float: right;
82+
}
83+
84+
/** Tests: Pass/Fail */
85+
86+
#qunit-tests {
87+
list-style-position: inside;
88+
}
89+
90+
#qunit-tests li {
91+
padding: 0.4em 0.5em 0.4em 2.5em;
92+
border-bottom: 1px solid #fff;
93+
list-style-position: inside;
94+
}
95+
96+
#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running {
97+
display: none;
98+
}
99+
100+
#qunit-tests li strong {
101+
cursor: pointer;
102+
}
103+
104+
#qunit-tests li a {
105+
padding: 0.5em;
106+
color: #c2ccd1;
107+
text-decoration: none;
108+
}
109+
#qunit-tests li a:hover,
110+
#qunit-tests li a:focus {
111+
color: #000;
112+
}
113+
114+
#qunit-tests li .runtime {
115+
float: right;
116+
font-size: smaller;
117+
}
118+
119+
.qunit-assert-list {
120+
margin-top: 0.5em;
121+
padding: 0.5em;
122+
123+
background-color: #fff;
124+
125+
border-radius: 5px;
126+
-moz-border-radius: 5px;
127+
-webkit-border-radius: 5px;
128+
}
129+
130+
.qunit-collapsed {
131+
display: none;
132+
}
133+
134+
#qunit-tests table {
135+
border-collapse: collapse;
136+
margin-top: .2em;
137+
}
138+
139+
#qunit-tests th {
140+
text-align: right;
141+
vertical-align: top;
142+
padding: 0 .5em 0 0;
143+
}
144+
145+
#qunit-tests td {
146+
vertical-align: top;
147+
}
148+
149+
#qunit-tests pre {
150+
margin: 0;
151+
white-space: pre-wrap;
152+
word-wrap: break-word;
153+
}
154+
155+
#qunit-tests del {
156+
background-color: #e0f2be;
157+
color: #374e0c;
158+
text-decoration: none;
159+
}
160+
161+
#qunit-tests ins {
162+
background-color: #ffcaca;
163+
color: #500;
164+
text-decoration: none;
165+
}
166+
167+
/*** Test Counts */
168+
169+
#qunit-tests b.counts { color: black; }
170+
#qunit-tests b.passed { color: #5E740B; }
171+
#qunit-tests b.failed { color: #710909; }
172+
173+
#qunit-tests li li {
174+
padding: 5px;
175+
background-color: #fff;
176+
border-bottom: none;
177+
list-style-position: inside;
178+
}
179+
180+
/*** Passing Styles */
181+
182+
#qunit-tests li li.pass {
183+
color: #3c510c;
184+
background-color: #fff;
185+
border-left: 10px solid #C6E746;
186+
}
187+
188+
#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
189+
#qunit-tests .pass .test-name { color: #366097; }
190+
191+
#qunit-tests .pass .test-actual,
192+
#qunit-tests .pass .test-expected { color: #999999; }
193+
194+
#qunit-banner.qunit-pass { background-color: #C6E746; }
195+
196+
/*** Failing Styles */
197+
198+
#qunit-tests li li.fail {
199+
color: #710909;
200+
background-color: #fff;
201+
border-left: 10px solid #EE5757;
202+
white-space: pre;
203+
}
204+
205+
#qunit-tests > li:last-child {
206+
border-radius: 0 0 5px 5px;
207+
-moz-border-radius: 0 0 5px 5px;
208+
-webkit-border-bottom-right-radius: 5px;
209+
-webkit-border-bottom-left-radius: 5px;
210+
}
211+
212+
#qunit-tests .fail { color: #000000; background-color: #EE5757; }
213+
#qunit-tests .fail .test-name,
214+
#qunit-tests .fail .module-name { color: #000000; }
215+
216+
#qunit-tests .fail .test-actual { color: #EE5757; }
217+
#qunit-tests .fail .test-expected { color: green; }
218+
219+
#qunit-banner.qunit-fail { background-color: #EE5757; }
220+
221+
222+
/** Result */
223+
224+
#qunit-testresult {
225+
padding: 0.5em 0.5em 0.5em 2.5em;
226+
227+
color: #2b81af;
228+
background-color: #D2E0E6;
229+
230+
border-bottom: 1px solid white;
231+
}
232+
#qunit-testresult .module-name {
233+
font-weight: bold;
234+
}
235+
236+
/** Fixture */
237+
238+
#qunit-fixture {
239+
position: absolute;
240+
top: -10000px;
241+
left: -10000px;
242+
width: 1000px;
243+
height: 1000px;
244+
}

0 commit comments

Comments
 (0)