UNPKG

chrome-devtools-frontend

Version:
36 lines (29 loc) 1.61 kB
// Copyright 2024 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import {describeWithEnvironment} from '../../../testing/EnvironmentHelpers.js'; import {getInsightOrError} from '../../../testing/InsightHelpers.js'; import {TraceLoader} from '../../../testing/TraceLoader.js'; export async function processTrace(testContext: Mocha.Suite|Mocha.Context|null, traceFile: string) { const {parsedTrace, insights} = await TraceLoader.traceEngine(testContext, traceFile); if (!insights) { throw new Error('No insights'); } return {data: parsedTrace, insights}; } describeWithEnvironment('ForcedReflow', function() { // Skip to re-open the tree it.skip('[crbug.com/392557418]: generates call stacks', async function() { const {data, insights} = await processTrace(this, 'forced-reflow.json.gz'); assert.strictEqual(insights.size, 1); const insight = getInsightOrError('ForcedReflow', insights, data.Meta.navigationsByNavigationId.values().next().value); assert.strictEqual(insight.topLevelFunctionCallData?.topLevelFunctionCall.columnNumber, 25217); assert.strictEqual(insight.topLevelFunctionCallData?.topLevelFunctionCall.lineNumber, 6); assert.strictEqual(insight.topLevelFunctionCallData?.totalReflowTime, 26052); const callStack = insight.aggregatedBottomUpData[1]; assert.strictEqual(callStack.bottomUpData.columnNumber, 137906); assert.strictEqual(callStack.bottomUpData.lineNumber, 6); assert.lengthOf(callStack.relatedEvents, 2); }); });