flagpole
Version:
Simple and fast DOM integration, headless or headful browser, and REST API testing framework.
42 lines • 1.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const _1 = require(".");
class AssertionResult {
get isDetails() {
return !!this._rawDetails;
}
get detailsMessage() {
if (_1.Flagpole.isNullOrUndefined(this._rawDetails)) {
return '';
}
const type = _1.Flagpole.toType(this._rawDetails);
const details = this._rawDetails;
if (type == 'array') {
const arr = details;
if (arr.every((item) => { return typeof item == 'string'; })) {
return this._rawDetails;
}
}
else if (details && details.message) {
return details.message;
}
return String(details);
}
static failOptional(message, details) {
return new AssertionResult(false, message, true, details);
}
static fail(message, details) {
return new AssertionResult(false, message, false, details);
}
static pass(message) {
return new AssertionResult(true, message, false);
}
constructor(passed, message, isOptional, details) {
this.passed = passed;
this.message = message;
this.isOptional = isOptional;
this._rawDetails = details || null;
}
}
exports.AssertionResult = AssertionResult;
//# sourceMappingURL=assertionresult.js.map