testcafe
Version:
Automated browser testing for the modern web development stack.
47 lines • 5.35 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
// -------------------------------------------------------------
// WARNING: this file is used by both the client and the server.
// Do not use any browser or node-specific API!
// -------------------------------------------------------------
const assignable_1 = __importDefault(require("../utils/assignable"));
class BrowserConsoleMessages extends assignable_1.default {
constructor(obj) {
super();
this.log = [];
this.info = [];
this.warn = [];
this.error = [];
this._assignFrom(obj);
}
_getAssignableProperties() {
return [
{ name: 'log' },
{ name: 'info' },
{ name: 'warn' },
{ name: 'error' }
];
}
concat(consoleMessages) {
this.log = this.log.concat(consoleMessages.log);
this.info = this.info.concat(consoleMessages.info);
this.warn = this.warn.concat(consoleMessages.warn);
this.error = this.error.concat(consoleMessages.error);
}
addMessage(type, msg) {
this[type].push(msg);
}
getCopy() {
const copy = {};
const properties = this._getAssignableProperties();
for (const property of properties)
copy[property.name] = this[property.name].slice();
return copy;
}
}
exports.default = BrowserConsoleMessages;
module.exports = exports.default;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci1jb25zb2xlLW1lc3NhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QtcnVuL2Jyb3dzZXItY29uc29sZS1tZXNzYWdlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdFQUFnRTtBQUNoRSxnRUFBZ0U7QUFDaEUsK0NBQStDO0FBQy9DLGdFQUFnRTtBQUNoRSxxRUFBNkM7QUFHN0MsTUFBcUIsc0JBQXVCLFNBQVEsb0JBQVU7SUFDMUQsWUFBYSxHQUFHO1FBQ1osS0FBSyxFQUFFLENBQUM7UUFFUixJQUFJLENBQUMsR0FBRyxHQUFLLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFJLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsSUFBSSxHQUFJLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUVoQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCx3QkFBd0I7UUFDcEIsT0FBTztZQUNILEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUNmLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUNoQixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDaEIsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO1NBQ3BCLENBQUM7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFFLGVBQWU7UUFDbkIsSUFBSSxDQUFDLEdBQUcsR0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLElBQUksR0FBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLElBQUksR0FBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELFVBQVUsQ0FBRSxJQUFJLEVBQUUsR0FBRztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxPQUFPO1FBQ0gsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBRW5ELEtBQUssTUFBTSxRQUFRLElBQUksVUFBVTtZQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFdEQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUNKO0FBekNELHlDQXlDQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFdBUk5JTkc6IHRoaXMgZmlsZSBpcyB1c2VkIGJ5IGJvdGggdGhlIGNsaWVudCBhbmQgdGhlIHNlcnZlci5cbi8vIERvIG5vdCB1c2UgYW55IGJyb3dzZXIgb3Igbm9kZS1zcGVjaWZpYyBBUEkhXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5pbXBvcnQgQXNzaWduYWJsZSBmcm9tICcuLi91dGlscy9hc3NpZ25hYmxlJztcblxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCcm93c2VyQ29uc29sZU1lc3NhZ2VzIGV4dGVuZHMgQXNzaWduYWJsZSB7XG4gICAgY29uc3RydWN0b3IgKG9iaikge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMubG9nICAgPSBbXTtcbiAgICAgICAgdGhpcy5pbmZvICA9IFtdO1xuICAgICAgICB0aGlzLndhcm4gID0gW107XG4gICAgICAgIHRoaXMuZXJyb3IgPSBbXTtcblxuICAgICAgICB0aGlzLl9hc3NpZ25Gcm9tKG9iaik7XG4gICAgfVxuXG4gICAgX2dldEFzc2lnbmFibGVQcm9wZXJ0aWVzICgpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHsgbmFtZTogJ2xvZycgfSxcbiAgICAgICAgICAgIHsgbmFtZTogJ2luZm8nIH0sXG4gICAgICAgICAgICB7IG5hbWU6ICd3YXJuJyB9LFxuICAgICAgICAgICAgeyBuYW1lOiAnZXJyb3InIH1cbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBjb25jYXQgKGNvbnNvbGVNZXNzYWdlcykge1xuICAgICAgICB0aGlzLmxvZyAgID0gdGhpcy5sb2cuY29uY2F0KGNvbnNvbGVNZXNzYWdlcy5sb2cpO1xuICAgICAgICB0aGlzLmluZm8gID0gdGhpcy5pbmZvLmNvbmNhdChjb25zb2xlTWVzc2FnZXMuaW5mbyk7XG4gICAgICAgIHRoaXMud2FybiAgPSB0aGlzLndhcm4uY29uY2F0KGNvbnNvbGVNZXNzYWdlcy53YXJuKTtcbiAgICAgICAgdGhpcy5lcnJvciA9IHRoaXMuZXJyb3IuY29uY2F0KGNvbnNvbGVNZXNzYWdlcy5lcnJvcik7XG4gICAgfVxuXG4gICAgYWRkTWVzc2FnZSAodHlwZSwgbXNnKSB7XG4gICAgICAgIHRoaXNbdHlwZV0ucHVzaChtc2cpO1xuICAgIH1cblxuICAgIGdldENvcHkgKCkge1xuICAgICAgICBjb25zdCBjb3B5ID0ge307XG4gICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSB0aGlzLl9nZXRBc3NpZ25hYmxlUHJvcGVydGllcygpO1xuXG4gICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgb2YgcHJvcGVydGllcylcbiAgICAgICAgICAgIGNvcHlbcHJvcGVydHkubmFtZV0gPSB0aGlzW3Byb3BlcnR5Lm5hbWVdLnNsaWNlKCk7XG5cbiAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgfVxufVxuIl19