1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-06-16 02:19:55 +00:00

Cleaned up jasmine test suite output (#5377)

* Cleaned up jasmine test suite output

Also testing for expected log messages, instead of just letting them print
to the console every single time, constantly making you think there's some
warning you need to worry about, and making all those dots not line up nicely.

* switched single quotes to double in collectLogs
This commit is contained in:
Cameron Fischer 2021-01-09 15:53:17 -05:00 committed by GitHub
parent 65932a9b21
commit b8a9826f23
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -14,6 +14,22 @@ Tests the filtering mechanism.
/* global $tw, require */
"use strict";
// This wrapper method is used to collect warnings which should be emitted
// by certain deprecated tests.
function collectLog(block) {
var messages = [];
var oldLog = console.log;
console.log = function(a) {
messages.push(Array.prototype.join.call(arguments, " "));
}
try {
block();
} finally {
console.log = oldLog;
}
return messages;
};
describe("Filter tests", function() {
// Test filter parsing
@ -249,8 +265,14 @@ function runTests(wiki) {
// The following 2 tests should write a log -> WARNING: Filter modifier has a deprecated regexp operand XXXX
// The test should pass anyway.
it("should handle the field operator with a regular expression operand", function() {
expect(wiki.filterTiddlers("[modifier/JoeBloggs/]").join(",")).toBe("TiddlerOne");
expect(wiki.filterTiddlers("[modifier/Jo/]").join(",")).toBe("TiddlerOne,$:/TiddlerTwo,Tiddler Three,a fourth tiddler,one");
var warnings = collectLog(function() {
expect(wiki.filterTiddlers("[modifier/JoeBloggs/]").join(",")).toBe("TiddlerOne");
});
expect(warnings).toEqual(["WARNING: Filter modifier has a deprecated regexp operand /JoeBloggs/"]);
warnings = collectLog(function() {
expect(wiki.filterTiddlers("[modifier/Jo/]").join(",")).toBe("TiddlerOne,$:/TiddlerTwo,Tiddler Three,a fourth tiddler,one");
});
expect(warnings).toEqual(["WARNING: Filter modifier has a deprecated regexp operand /Jo/"]);
});
it("should handle the prefix operator", function() {