appium-xcuitest-driver
Version:
Appium driver for iOS using XCUITest for backend
44 lines • 1.68 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 {
_showLogs;
constructor(opts) {
super({
log: opts.log,
maxBufferSize: helpers_1.MAX_BUFFERED_EVENTS_COUNT,
});
this._showLogs = opts.showLogs;
}
get isCapturing() {
return true;
}
async startCapture() { }
async stopCapture() { }
onNetworkEvent(err, entry, method) {
if (!lodash_1.default.includes(MONITORED_EVENTS, method)) {
this.log.debug(`[SafariNetwork] Ignoring unmonitored event: ${method}`);
return;
}
const serializedEntry = JSON.stringify({ method, event: entry });
this.broadcast(serializedEntry);
if (this._showLogs && lodash_1.default.includes(EVENTS_TO_LOG, 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