Files
react-native-devtools-frontend/node_modules/domhandler/test/tests.js
T
Alex Rudenko 6c0f161c95 Revert "Update stylelint to 14.0.1"
This reverts commit 1e08ee816b.

Reason for revert: tree is closed due to errors https://ci.chromium.org/ui/p/devtools-frontend/builders/ci/Stand-alone%20Linux/8169/overview

Original change's description:
> Update stylelint to 14.0.1
>
> This also upgrades PostCSS to 8.3.11.
>
> DISABLE_THIRD_PARTY_CHECK=Updating Stylelint configuration
> R=​szuend@chromium.org
>
> Bug: none
> Change-Id: I606540b03509d7c6e73f3d490327cd4174e03d31
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3259541
> Reviewed-by: Simon Zünd <szuend@chromium.org>
> Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>

Bug: none
Change-Id: Icb1c02b41dbccc3b4fc5760f5dd0b78eca078b61
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3263399
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Alex Rudenko <alexrudenko@chromium.org>
Commit-Queue: Alex Rudenko <alexrudenko@chromium.org>
2021-11-05 06:32:31 +00:00

60 lines
1.5 KiB
JavaScript

var fs = require("fs"),
path = require("path"),
assert = require("assert"),
util = require("util"),
Parser = require("htmlparser2").Parser,
Handler = require("../");
var basePath = path.resolve(__dirname, "cases"),
inspectOpts = { showHidden: true, depth: null };
fs
.readdirSync(basePath)
.filter(RegExp.prototype.test, /\.json$/) //only allow .json files
.map(function(name){
return path.resolve(basePath, name);
})
.map(require)
.forEach(function(test){
it(test.name, function(){
var expected = test.expected;
var handler = new Handler(function(err, actual){
assert.ifError(err);
try {
compare(expected, actual);
} catch(e){
e.expected = util.inspect(expected, inspectOpts);
e.actual = util.inspect(actual, inspectOpts);
throw e;
}
}, test.options);
var data = test.html;
var parser = new Parser(handler, test.options);
//first, try to run the test via chunks
if (test.streaming || test.streaming === undefined){
for(var i = 0; i < data.length; i++){
parser.write(data.charAt(i));
}
parser.done();
}
//then parse everything
parser.parseComplete(data);
});
});
function compare(expected, result){
assert.equal(typeof expected, typeof result, "types didn't match");
if(typeof expected !== "object" || expected === null){
assert.strictEqual(expected, result, "result doesn't equal expected");
} else {
for(var prop in expected){
assert.ok(prop in result, "result didn't contain property " + prop);
compare(expected[prop], result[prop]);
}
}
}