mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-09-19 10:49:43 +00:00
a1c8ac624f
There are still some whitespace and attribute ordering issues, but the result runs correctly.
159 lines
6.0 KiB
JavaScript
Executable File
159 lines
6.0 KiB
JavaScript
Executable File
/*global story, jQuery, document, module, test, same strictEqual store */
|
|
(function ($) {
|
|
jQuery(document).ready(function () {
|
|
module("Filters.js");
|
|
|
|
/*
|
|
* tiddler
|
|
*/
|
|
test("filterTiddlers: 'tiddler' should be one tiddlers named foo", function () {
|
|
var tiddlers = store.filterTiddlers("foo");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "foo");
|
|
});
|
|
|
|
/*
|
|
* [[tiddler]]
|
|
*/
|
|
test("filterTiddlers: '[[foo]]' should be one tiddlers named foo", function () {
|
|
var tiddlers = store.filterTiddlers("[[foo]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "foo");
|
|
});
|
|
|
|
/*
|
|
* [[tiddler]][[tiddler]]
|
|
*/
|
|
test("filterTiddlers: '[[foo]][[foo]]' should be two tiddlers named foo", function () {
|
|
var tiddlers = store.filterTiddlers("[[foo]][[foo]]");
|
|
strictEqual(tiddlers.length, 2, 'two tiddlers');
|
|
strictEqual(tiddlers[0].title, "foo");
|
|
strictEqual(tiddlers[1].title, "foo");
|
|
});
|
|
|
|
/*
|
|
* [tag[value]]
|
|
*/
|
|
test("filterTiddlers: '[tag[testTag]]' should be three tiddlers tagged testTag", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[2].title, "testTiddler3");
|
|
});
|
|
|
|
test("filterTiddlers: '[tag[oneTag]]' should be one tiddlers tagged oneTag", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[oneTag]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
});
|
|
|
|
/*
|
|
* combined tags
|
|
*/
|
|
test("filterTiddlers: '[tag[testTag]][tag[twoTag]]' should be three tiddlers tagged testTag and twoTag", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][tag[twoTag]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[2].title, "testTiddler3");
|
|
});
|
|
|
|
/*
|
|
* [limit[n]]
|
|
*/
|
|
test("filterTiddlers: '[tag[testTag]][limit[1]]' should be one tiddlers tagged testTag limited with 1", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][limit[1]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
});
|
|
|
|
test("filterTiddlers: '[tag[testTag]][limit[2]]' should be two tiddlers tagged testTag limited with 2", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][limit[2]]");
|
|
strictEqual(tiddlers.length, 2, 'two tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
});
|
|
|
|
test("filterTiddlers: '[tag[testTag]][limit[3]]' should be three tiddlers tagged testTag limited with 3", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][limit[3]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[2].title, "testTiddler3");
|
|
});
|
|
|
|
test("filterTiddlers: '[tag[testTag]][limit[50]]' should be three tiddlers tagged testTag limited with 50", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][limit[50]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[2].title, "testTiddler3");
|
|
});
|
|
|
|
/*
|
|
* [field[value]]
|
|
*/
|
|
test("filterTiddlers: '[fieldvalue[two]]' should return the tiddler with a fieldvalue 'two'", function () {
|
|
var tiddlers = store.filterTiddlers("[fieldvalue[two]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler2");
|
|
});
|
|
|
|
test("filterTiddlers: '[fieldvalue[three]]' should return the tiddler with a fieldvalue 'three'", function () {
|
|
var tiddlers = store.filterTiddlers("[fieldvalue[three]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler3");
|
|
});
|
|
|
|
test("filterTiddlers: '[server.bag[foo]]' should return the tiddler with a fieldvalue 'three'", function () {
|
|
var tiddlers = store.filterTiddlers("[server.bag[foo]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddler');
|
|
strictEqual(tiddlers[0].title, "testTiddler3");
|
|
});
|
|
|
|
test("filterTiddlers: '[field-thing[bar]]' should return the tiddler with a fieldvalue 'three'", function () {
|
|
var tiddlers = store.filterTiddlers("[field-thing[bar]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddler');
|
|
strictEqual(tiddlers[0].title, "testTiddler3");
|
|
});
|
|
|
|
/*
|
|
* [tag[value]][sort[+title]]
|
|
*/
|
|
test("filterTiddlers: '[tag[testTag]][sort[+title]]' should return three tiddlers tagged testTag, sorted", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][sort[+title]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[0].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[2].title, "testTiddler3");
|
|
});
|
|
|
|
/*
|
|
* [tag[value]][sort[-title]]
|
|
*/
|
|
test("filterTiddlers: '[tag[testTag]][sort[-title]]' should return three tiddlers tagged testTag, reverse sorted", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[testTag]][sort[-title]]");
|
|
strictEqual(tiddlers.length, 3, 'three tiddlers');
|
|
strictEqual(tiddlers[2].title, "testTiddler1");
|
|
strictEqual(tiddlers[1].title, "testTiddler2");
|
|
strictEqual(tiddlers[0].title, "testTiddler3");
|
|
});
|
|
|
|
/*
|
|
* errors ..
|
|
*/
|
|
test("filterTiddlers: '[[]]' should return no tiddlers", function () {
|
|
var tiddlers = store.filterTiddlers("[[]]");
|
|
strictEqual(tiddlers.length, 0, 'no tiddlers');
|
|
});
|
|
|
|
test("filterTiddlers: '[tag[]]' seems to return a tiddler called tag", function () {
|
|
var tiddlers = store.filterTiddlers("[tag[]]");
|
|
strictEqual(tiddlers.length, 1, 'one tiddlers');
|
|
strictEqual(tiddlers[0].title, "tag");
|
|
});
|
|
|
|
});
|
|
}(jQuery));
|