aboutsummaryrefslogtreecommitdiff
path: root/node_modules/htmlparser2/test/test-helper.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2019-03-27 21:01:33 +0100
committerFlorian Dold <florian.dold@gmail.com>2019-03-27 21:01:33 +0100
commitcc97a4dd2a967e1c2273bd5f4c5f49a5bf2e2585 (patch)
tree92c5d88706a6ffc654d1b133618d357890e7096b /node_modules/htmlparser2/test/test-helper.js
parent3771b4d6b67b34c130f3a9a1a15f42deefdb2eda (diff)
remove node_modules
Diffstat (limited to 'node_modules/htmlparser2/test/test-helper.js')
-rw-r--r--node_modules/htmlparser2/test/test-helper.js81
1 files changed, 0 insertions, 81 deletions
diff --git a/node_modules/htmlparser2/test/test-helper.js b/node_modules/htmlparser2/test/test-helper.js
deleted file mode 100644
index 5111259b2..000000000
--- a/node_modules/htmlparser2/test/test-helper.js
+++ /dev/null
@@ -1,81 +0,0 @@
-var htmlparser2 = require(".."),
- fs = require("fs"),
- path = require("path"),
- assert = require("assert"),
- Parser = htmlparser2.Parser,
- CollectingHandler = htmlparser2.CollectingHandler;
-
-exports.writeToParser = function(handler, options, data){
- var parser = new Parser(handler, options);
- //first, try to run the test via chunks
- for(var i = 0; i < data.length; i++){
- parser.write(data.charAt(i));
- }
- parser.end();
- //then parse everything
- parser.parseComplete(data);
-};
-
-//returns a tree structure
-exports.getEventCollector = function(cb){
- var handler = new CollectingHandler({onerror: cb, onend: function(){
- cb(null, handler.events.reduce(eventReducer, []));
- }});
-
- return handler;
-};
-
-function eventReducer(events, arr){
- if(arr[0] === "onerror" || arr[0] === "onend");
- else if(arr[0] === "ontext" && events.length && events[events.length-1].event === "text"){
- events[events.length-1].data[0] += arr[1];
- } else {
- events.push({
- event: arr[0].substr(2),
- data: arr.slice(1)
- });
- }
-
- return events;
-}
-
-function getCallback(expected, done){
- var repeated = false;
-
- return function(err, actual){
- assert.ifError(err);
- try {
- assert.deepEqual(expected, actual, "didn't get expected output");
- } catch(e){
- e.expected = JSON.stringify(expected, null, 2);
- e.actual = JSON.stringify(actual, null, 2);
- throw e;
- }
-
- if(repeated) done();
- else repeated = true;
- };
-}
-
-exports.mochaTest = function(name, root, test){
- describe(name, readDir);
-
- function readDir(cb){
- var dir = path.join(root, name);
-
- fs
- .readdirSync(dir)
- .filter(RegExp.prototype.test, /^[^\._]/) //ignore all files with a leading dot or underscore
- .map(function(name){
- return path.join(dir, name);
- })
- .map(require)
- .forEach(runTest);
- }
-
- function runTest(file){
- it(file.name, function(done){
- test(file, getCallback(file.expected, done));
- });
- }
-}; \ No newline at end of file