mirror of
https://github.com/microsoft/playwright.git
synced 2024-10-27 05:46:28 +03:00
fix(tracing): modernize old resources to new har format (#8453)
This commit is contained in:
parent
a479cb6f52
commit
02bef1eded
@ -38,7 +38,7 @@ export type TracerOptions = {
|
||||
screenshots?: boolean;
|
||||
};
|
||||
|
||||
export const VERSION = 2;
|
||||
export const VERSION = 3;
|
||||
|
||||
type RecordingState = {
|
||||
options: TracerOptions,
|
||||
|
@ -130,6 +130,32 @@ export class TraceModel {
|
||||
}
|
||||
return event;
|
||||
}
|
||||
|
||||
_modernize_2_to_3(event: any): any {
|
||||
if (event.type === 'resource-snapshot' && !event.snapshot.request) {
|
||||
// Migrate from old ResourceSnapshot to new har entry format.
|
||||
const resource = event.snapshot;
|
||||
event.snapshot = {
|
||||
_frameref: resource.frameId,
|
||||
request: {
|
||||
url: resource.url,
|
||||
method: resource.method,
|
||||
headers: resource.requestHeaders,
|
||||
postData: resource.requestSha1 ? { _sha1: resource.requestSha1 } : undefined,
|
||||
},
|
||||
response: {
|
||||
status: resource.status,
|
||||
headers: resource.responseHeaders,
|
||||
content: {
|
||||
mimeType: resource.contentType,
|
||||
_sha1: resource.responseSha1,
|
||||
},
|
||||
},
|
||||
_monotonicTime: resource.timestamp,
|
||||
};
|
||||
}
|
||||
return event;
|
||||
}
|
||||
}
|
||||
|
||||
export type ContextEntry = {
|
||||
|
@ -83,7 +83,8 @@ export class TraceViewer {
|
||||
const networkFile = path.join(tracesDir, (match ? match[1] : debugName) + '.network');
|
||||
const model = new TraceModel(snapshotStorage);
|
||||
await appendTraceEvents(model, traceFile);
|
||||
await appendTraceEvents(model, networkFile);
|
||||
if (fs.existsSync(networkFile))
|
||||
await appendTraceEvents(model, networkFile);
|
||||
model.build();
|
||||
response.end(JSON.stringify(model.contextEntry));
|
||||
})().catch(e => console.error(e));
|
||||
|
Loading…
Reference in New Issue
Block a user