appium-xcuitest-driver
Version:
Appium driver for iOS using XCUITest for backend
45 lines • 1.53 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SafariNetworkLog = void 0;
const lodash_1 = __importDefault(require("lodash"));
const line_consuming_log_1 = require("./line-consuming-log");
const helpers_1 = require("./helpers");
const EVENTS_TO_LOG = [
'Network.loadingFinished',
'Network.loadingFailed',
];
const MONITORED_EVENTS = [
'Network.requestWillBeSent',
'Network.responseReceived',
...EVENTS_TO_LOG,
];
class SafariNetworkLog extends line_consuming_log_1.LineConsumingLog {
constructor(opts) {
super({
log: opts.log,
maxBufferSize: helpers_1.MAX_BUFFERED_EVENTS_COUNT,
});
this._showLogs = opts.showLogs;
}
async startCapture() { }
async stopCapture() { }
get isCapturing() {
return true;
}
onNetworkEvent(method, entry) {
if (!MONITORED_EVENTS.includes(method)) {
return;
}
const serializedEntry = JSON.stringify(entry);
this.broadcast(serializedEntry);
if (this._showLogs && EVENTS_TO_LOG.includes(method)) {
this.log.info(`[SafariNetwork] ${lodash_1.default.truncate(serializedEntry, { length: helpers_1.MAX_JSON_LOG_LENGTH })}`);
}
}
}
exports.SafariNetworkLog = SafariNetworkLog;
exports.default = SafariNetworkLog;
//# sourceMappingURL=safari-network-log.js.map