mirror of
https://github.com/kiwix/kiwix-js.git
synced 2025-09-24 04:54:51 -04:00
Upgade QUnit + minor improvements on unit tests
This commit is contained in:
parent
c03501c4b0
commit
4bd18cbcb5
@ -24,8 +24,8 @@
|
|||||||
along with Evopedia (file LICENSE-GPLv3.txt). If not, see <http://www.gnu.org/licenses/>
|
along with Evopedia (file LICENSE-GPLv3.txt). If not, see <http://www.gnu.org/licenses/>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<link rel="stylesheet" href="tests/qunit-1.12.0.css" />
|
<link rel="stylesheet" href="tests/qunit-1.14.0.css" />
|
||||||
<script src="tests/qunit-1.12.0.js"></script>
|
<script src="tests/qunit-1.14.0.js"></script>
|
||||||
|
|
||||||
<!-- Using require.js, a module system for javascript, include the
|
<!-- Using require.js, a module system for javascript, include the
|
||||||
js files. This loads "main.js", which in turn can load other
|
js files. This loads "main.js", which in turn can load other
|
||||||
|
@ -1,11 +1,12 @@
|
|||||||
/**
|
/*!
|
||||||
* QUnit v1.12.0 - A JavaScript Unit Testing Framework
|
* QUnit 1.14.0
|
||||||
|
* http://qunitjs.com/
|
||||||
*
|
*
|
||||||
* http://qunitjs.com
|
* Copyright 2013 jQuery Foundation and other contributors
|
||||||
*
|
* Released under the MIT license
|
||||||
* Copyright 2012 jQuery Foundation and other contributors
|
|
||||||
* Released under the MIT license.
|
|
||||||
* http://jquery.org/license
|
* http://jquery.org/license
|
||||||
|
*
|
||||||
|
* Date: 2014-01-31T16:40Z
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** Font Family and Sizes */
|
/** Font Family and Sizes */
|
||||||
@ -31,32 +32,29 @@
|
|||||||
#qunit-header {
|
#qunit-header {
|
||||||
padding: 0.5em 0 0.5em 1em;
|
padding: 0.5em 0 0.5em 1em;
|
||||||
|
|
||||||
color: #8699a4;
|
color: #8699A4;
|
||||||
background-color: #0d3349;
|
background-color: #0D3349;
|
||||||
|
|
||||||
font-size: 1.5em;
|
font-size: 1.5em;
|
||||||
line-height: 1em;
|
line-height: 1em;
|
||||||
font-weight: normal;
|
font-weight: 400;
|
||||||
|
|
||||||
border-radius: 5px 5px 0 0;
|
border-radius: 5px 5px 0 0;
|
||||||
-moz-border-radius: 5px 5px 0 0;
|
|
||||||
-webkit-border-top-right-radius: 5px;
|
|
||||||
-webkit-border-top-left-radius: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-header a {
|
#qunit-header a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
color: #c2ccd1;
|
color: #C2CCD1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-header a:hover,
|
#qunit-header a:hover,
|
||||||
#qunit-header a:focus {
|
#qunit-header a:focus {
|
||||||
color: #fff;
|
color: #FFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-testrunner-toolbar label {
|
#qunit-testrunner-toolbar label {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: 0 .5em 0 .1em;
|
padding: 0 0.5em 0 0.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-banner {
|
#qunit-banner {
|
||||||
@ -66,14 +64,14 @@
|
|||||||
#qunit-testrunner-toolbar {
|
#qunit-testrunner-toolbar {
|
||||||
padding: 0.5em 0 0.5em 2em;
|
padding: 0.5em 0 0.5em 2em;
|
||||||
color: #5E740B;
|
color: #5E740B;
|
||||||
background-color: #eee;
|
background-color: #EEE;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-userAgent {
|
#qunit-userAgent {
|
||||||
padding: 0.5em 0 0.5em 2.5em;
|
padding: 0.5em 0 0.5em 2.5em;
|
||||||
background-color: #2b81af;
|
background-color: #2B81AF;
|
||||||
color: #fff;
|
color: #FFF;
|
||||||
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
|
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -89,7 +87,7 @@
|
|||||||
|
|
||||||
#qunit-tests li {
|
#qunit-tests li {
|
||||||
padding: 0.4em 0.5em 0.4em 2.5em;
|
padding: 0.4em 0.5em 0.4em 2.5em;
|
||||||
border-bottom: 1px solid #fff;
|
border-bottom: 1px solid #FFF;
|
||||||
list-style-position: inside;
|
list-style-position: inside;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -103,7 +101,7 @@
|
|||||||
|
|
||||||
#qunit-tests li a {
|
#qunit-tests li a {
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
color: #c2ccd1;
|
color: #C2CCD1;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
#qunit-tests li a:hover,
|
#qunit-tests li a:hover,
|
||||||
@ -120,11 +118,9 @@
|
|||||||
margin-top: 0.5em;
|
margin-top: 0.5em;
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
|
|
||||||
background-color: #fff;
|
background-color: #FFF;
|
||||||
|
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
-moz-border-radius: 5px;
|
|
||||||
-webkit-border-radius: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.qunit-collapsed {
|
.qunit-collapsed {
|
||||||
@ -133,13 +129,13 @@
|
|||||||
|
|
||||||
#qunit-tests table {
|
#qunit-tests table {
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
margin-top: .2em;
|
margin-top: 0.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests th {
|
#qunit-tests th {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
padding: 0 .5em 0 0;
|
padding: 0 0.5em 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests td {
|
#qunit-tests td {
|
||||||
@ -153,26 +149,26 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests del {
|
#qunit-tests del {
|
||||||
background-color: #e0f2be;
|
background-color: #E0F2BE;
|
||||||
color: #374e0c;
|
color: #374E0C;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests ins {
|
#qunit-tests ins {
|
||||||
background-color: #ffcaca;
|
background-color: #FFCACA;
|
||||||
color: #500;
|
color: #500;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*** Test Counts */
|
/*** Test Counts */
|
||||||
|
|
||||||
#qunit-tests b.counts { color: black; }
|
#qunit-tests b.counts { color: #000; }
|
||||||
#qunit-tests b.passed { color: #5E740B; }
|
#qunit-tests b.passed { color: #5E740B; }
|
||||||
#qunit-tests b.failed { color: #710909; }
|
#qunit-tests b.failed { color: #710909; }
|
||||||
|
|
||||||
#qunit-tests li li {
|
#qunit-tests li li {
|
||||||
padding: 5px;
|
padding: 5px;
|
||||||
background-color: #fff;
|
background-color: #FFF;
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
list-style-position: inside;
|
list-style-position: inside;
|
||||||
}
|
}
|
||||||
@ -180,8 +176,8 @@
|
|||||||
/*** Passing Styles */
|
/*** Passing Styles */
|
||||||
|
|
||||||
#qunit-tests li li.pass {
|
#qunit-tests li li.pass {
|
||||||
color: #3c510c;
|
color: #3C510C;
|
||||||
background-color: #fff;
|
background-color: #FFF;
|
||||||
border-left: 10px solid #C6E746;
|
border-left: 10px solid #C6E746;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -189,7 +185,7 @@
|
|||||||
#qunit-tests .pass .test-name { color: #366097; }
|
#qunit-tests .pass .test-name { color: #366097; }
|
||||||
|
|
||||||
#qunit-tests .pass .test-actual,
|
#qunit-tests .pass .test-actual,
|
||||||
#qunit-tests .pass .test-expected { color: #999999; }
|
#qunit-tests .pass .test-expected { color: #999; }
|
||||||
|
|
||||||
#qunit-banner.qunit-pass { background-color: #C6E746; }
|
#qunit-banner.qunit-pass { background-color: #C6E746; }
|
||||||
|
|
||||||
@ -197,24 +193,21 @@
|
|||||||
|
|
||||||
#qunit-tests li li.fail {
|
#qunit-tests li li.fail {
|
||||||
color: #710909;
|
color: #710909;
|
||||||
background-color: #fff;
|
background-color: #FFF;
|
||||||
border-left: 10px solid #EE5757;
|
border-left: 10px solid #EE5757;
|
||||||
white-space: pre;
|
white-space: pre;
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests > li:last-child {
|
#qunit-tests > li:last-child {
|
||||||
border-radius: 0 0 5px 5px;
|
border-radius: 0 0 5px 5px;
|
||||||
-moz-border-radius: 0 0 5px 5px;
|
|
||||||
-webkit-border-bottom-right-radius: 5px;
|
|
||||||
-webkit-border-bottom-left-radius: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#qunit-tests .fail { color: #000000; background-color: #EE5757; }
|
#qunit-tests .fail { color: #000; background-color: #EE5757; }
|
||||||
#qunit-tests .fail .test-name,
|
#qunit-tests .fail .test-name,
|
||||||
#qunit-tests .fail .module-name { color: #000000; }
|
#qunit-tests .fail .module-name { color: #000; }
|
||||||
|
|
||||||
#qunit-tests .fail .test-actual { color: #EE5757; }
|
#qunit-tests .fail .test-actual { color: #EE5757; }
|
||||||
#qunit-tests .fail .test-expected { color: green; }
|
#qunit-tests .fail .test-expected { color: #008000; }
|
||||||
|
|
||||||
#qunit-banner.qunit-fail { background-color: #EE5757; }
|
#qunit-banner.qunit-fail { background-color: #EE5757; }
|
||||||
|
|
||||||
@ -224,13 +217,13 @@
|
|||||||
#qunit-testresult {
|
#qunit-testresult {
|
||||||
padding: 0.5em 0.5em 0.5em 2.5em;
|
padding: 0.5em 0.5em 0.5em 2.5em;
|
||||||
|
|
||||||
color: #2b81af;
|
color: #2B81AF;
|
||||||
background-color: #D2E0E6;
|
background-color: #D2E0E6;
|
||||||
|
|
||||||
border-bottom: 1px solid white;
|
border-bottom: 1px solid #FFF;
|
||||||
}
|
}
|
||||||
#qunit-testresult .module-name {
|
#qunit-testresult .module-name {
|
||||||
font-weight: bold;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Fixture */
|
/** Fixture */
|
File diff suppressed because it is too large
Load Diff
@ -53,6 +53,7 @@ define(function(require) {
|
|||||||
|
|
||||||
module("evopedia_title_search_and_read");
|
module("evopedia_title_search_and_read");
|
||||||
asyncTest("check getTitlesStartingAtOffset 0", function() {
|
asyncTest("check getTitlesStartingAtOffset 0", function() {
|
||||||
|
expect(4);
|
||||||
var callbackFunction = function(titleList) {
|
var callbackFunction = function(titleList) {
|
||||||
equal(titleList.length, 4, "4 titles found, as requested");
|
equal(titleList.length, 4, "4 titles found, as requested");
|
||||||
var indexAbraham = -1;
|
var indexAbraham = -1;
|
||||||
@ -78,6 +79,7 @@ define(function(require) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
asyncTest("check findTitlesWithPrefix Am", function() {
|
asyncTest("check findTitlesWithPrefix Am", function() {
|
||||||
|
expect(4);
|
||||||
var callbackFunction = function(titleList) {
|
var callbackFunction = function(titleList) {
|
||||||
ok(titleList && titleList.length > 0, "At least one title is found");
|
ok(titleList && titleList.length > 0, "At least one title is found");
|
||||||
var firstTitleName = "not found";
|
var firstTitleName = "not found";
|
||||||
@ -107,6 +109,7 @@ define(function(require) {
|
|||||||
titleAbraham.titleOffset = 57;
|
titleAbraham.titleOffset = 57;
|
||||||
|
|
||||||
asyncTest("check getTitleByName with accents : Diego Velázquez", function() {
|
asyncTest("check getTitleByName with accents : Diego Velázquez", function() {
|
||||||
|
expect(2);
|
||||||
var callbackFunction = function(title) {
|
var callbackFunction = function(title) {
|
||||||
ok(title !== null, "Title found");
|
ok(title !== null, "Title found");
|
||||||
equal(title.name, "Diego_Velázquez", "Name of the title is correct");
|
equal(title.name, "Diego_Velázquez", "Name of the title is correct");
|
||||||
@ -115,6 +118,7 @@ define(function(require) {
|
|||||||
localArchive.getTitleByName("Diego_Velázquez", callbackFunction);
|
localArchive.getTitleByName("Diego_Velázquez", callbackFunction);
|
||||||
});
|
});
|
||||||
asyncTest("check getTitleByName with quote : Hundred Years' War", function() {
|
asyncTest("check getTitleByName with quote : Hundred Years' War", function() {
|
||||||
|
expect(2);
|
||||||
var callbackFunction = function(title) {
|
var callbackFunction = function(title) {
|
||||||
ok(title !== null, "Title found");
|
ok(title !== null, "Title found");
|
||||||
equal(title.name, "Hundred_Years'_War", "Name of the title is correct");
|
equal(title.name, "Hundred_Years'_War", "Name of the title is correct");
|
||||||
@ -131,6 +135,7 @@ define(function(require) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
asyncTest("check readArticle", function() {
|
asyncTest("check readArticle", function() {
|
||||||
|
expect(3);
|
||||||
var callbackFunction = function(title, htmlArticle) {
|
var callbackFunction = function(title, htmlArticle) {
|
||||||
ok(htmlArticle && htmlArticle.length > 0, "Article not empty");
|
ok(htmlArticle && htmlArticle.length > 0, "Article not empty");
|
||||||
// Remove new lines
|
// Remove new lines
|
||||||
@ -143,6 +148,7 @@ define(function(require) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
asyncTest("check getTitleByName and readArticle with escape bytes", function() {
|
asyncTest("check getTitleByName and readArticle with escape bytes", function() {
|
||||||
|
expect(5);
|
||||||
var callbackArticleRead = function(title, htmlArticle) {
|
var callbackArticleRead = function(title, htmlArticle) {
|
||||||
ok(htmlArticle && htmlArticle.length > 0, "Article not empty");
|
ok(htmlArticle && htmlArticle.length > 0, "Article not empty");
|
||||||
// Remove new lines
|
// Remove new lines
|
||||||
@ -160,6 +166,7 @@ define(function(require) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
asyncTest("check getTitleByName with a title name that does not exist in the archive", function() {
|
asyncTest("check getTitleByName with a title name that does not exist in the archive", function() {
|
||||||
|
expect(1);
|
||||||
var callbackTitleFound = function(title) {
|
var callbackTitleFound = function(title) {
|
||||||
ok(title === null, "No title found because it does not exist in the archive");
|
ok(title === null, "No title found because it does not exist in the archive");
|
||||||
start();
|
start();
|
||||||
@ -168,6 +175,7 @@ define(function(require) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
asyncTest("check loading a math image", function() {
|
asyncTest("check loading a math image", function() {
|
||||||
|
expect(2);
|
||||||
var callbackFunction = function(data) {
|
var callbackFunction = function(data) {
|
||||||
ok(data && data.length > 0, "Image not empty");
|
ok(data && data.length > 0, "Image not empty");
|
||||||
// edb3069b82c68d270f6642c171cc6293.png should give a "1 1/2" formula (can be found in "Rational_number" article)
|
// edb3069b82c68d270f6642c171cc6293.png should give a "1 1/2" formula (can be found in "Rational_number" article)
|
||||||
@ -286,8 +294,9 @@ define(function(require) {
|
|||||||
equal(float, -118.625, "the IEEE_754 float should be converted as -118.625");
|
equal(float, -118.625, "the IEEE_754 float should be converted as -118.625");
|
||||||
});
|
});
|
||||||
|
|
||||||
module("articles_nearby");
|
module("evopedia_articles_nearby");
|
||||||
asyncTest("check articles found nearby France and Germany", function() {
|
asyncTest("check articles found nearby France and Germany", function() {
|
||||||
|
expect(5);
|
||||||
var callbackTitlesNearbyFound = function(titleList) {
|
var callbackTitlesNearbyFound = function(titleList) {
|
||||||
ok(titleList !== null, "Some titles should be found");
|
ok(titleList !== null, "Some titles should be found");
|
||||||
equal(titleList.length, 3, "3 titles should be found");
|
equal(titleList.length, 3, "3 titles should be found");
|
||||||
@ -316,8 +325,36 @@ define(function(require) {
|
|||||||
localArchive.getTitlesInCoords(rectFranceGermany, 10, callbackTitlesNearbyFound);
|
localArchive.getTitlesInCoords(rectFranceGermany, 10, callbackTitlesNearbyFound);
|
||||||
});
|
});
|
||||||
|
|
||||||
module("random_title");
|
/*
|
||||||
|
asyncTest("check articles found nearby London", function() {
|
||||||
|
expect(2);
|
||||||
|
var callbackTitlesNearbyLondonFound = function(titleList) {
|
||||||
|
ok(titleList !== null, "Some titles should be found");
|
||||||
|
var titleLondon = null;
|
||||||
|
for (var i=0; i<titleList.length; i++) {
|
||||||
|
var title = titleList[i];
|
||||||
|
if (title.name === "London") {
|
||||||
|
titleLondon = title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ok(titleLondon !== null, "The title 'London' should be found");
|
||||||
|
|
||||||
|
start();
|
||||||
|
};
|
||||||
|
var pointLondon = new geometry.point(51, 0);
|
||||||
|
var maxDistance = 100;
|
||||||
|
var rectLondon = new geometry.rect(
|
||||||
|
pointLondon.x - maxDistance,
|
||||||
|
pointLondon.y - maxDistance,
|
||||||
|
maxDistance * 2,
|
||||||
|
maxDistance * 2);
|
||||||
|
localArchive.getTitlesInCoords(rectLondon, 30, callbackTitlesNearbyLondonFound);
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
|
||||||
|
module("evopedia_random_title");
|
||||||
asyncTest("check that a random title is found", function() {
|
asyncTest("check that a random title is found", function() {
|
||||||
|
expect(2);
|
||||||
var callbackRandomTitleFound = function(title) {
|
var callbackRandomTitleFound = function(title) {
|
||||||
ok(title !== null, "One title should be found");
|
ok(title !== null, "One title should be found");
|
||||||
ok(title.name !== null, "The random title should have a name" );
|
ok(title.name !== null, "The random title should have a name" );
|
||||||
|
Loading…
x
Reference in New Issue
Block a user