You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.3 KiB
33 lines
1.3 KiB
import { checkDocument, print } from "../../utilities/index.js"; |
|
export var toMatchDocument = function (actual, document) { |
|
var _this = this; |
|
var hint = this.utils.matcherHint("toMatchDocument"); |
|
var actualDocument = print(validateDocument(actual, hint + |
|
"\n\n".concat(this.utils.RECEIVED_COLOR("received"), " document must be a parsed document."))); |
|
var expectedDocument = print(validateDocument(document, hint + |
|
"\n\n".concat(this.utils.EXPECTED_COLOR("expected"), " document must be a parsed document."))); |
|
var pass = actualDocument === expectedDocument; |
|
return { |
|
pass: pass, |
|
message: function () { |
|
var hint = _this.utils.matcherHint("toMatchDocument", undefined, undefined, { isNot: _this.isNot }); |
|
if (pass) { |
|
return (hint + |
|
"\n\n" + |
|
"Received:\n\n" + |
|
_this.utils.RECEIVED_COLOR(actualDocument)); |
|
} |
|
return (hint + "\n\n" + _this.utils.diff(expectedDocument, actualDocument)); |
|
}, |
|
}; |
|
}; |
|
function validateDocument(document, message) { |
|
try { |
|
checkDocument(document); |
|
} |
|
catch (e) { |
|
throw new Error(message); |
|
} |
|
return document; |
|
} |
|
//# sourceMappingURL=toMatchDocument.js.map
|