1
0
Fork 0
firefox/third_party/webkit/PerformanceTests/StyleBench/resources/tests.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

48 lines
1.9 KiB
JavaScript

function makeSteps(configuration)
{
const steps = [];
for (let i = 0; i < configuration.stepCount; ++i) {
if (configuration.isResizeTest) {
for (let width = 300; width <= 800; width += 50) {
steps.push(new BenchmarkTestStep(`Resizing to ${width}px - ${i}`, (bench, contentWindow, contentDocument) => {
bench.resizeViewToWidth(width);
}));
}
continue;
}
steps.push(new BenchmarkTestStep(`Adding classes - ${i}`, (bench, contentWindow, contentDocument) => {
bench.addClasses(configuration.mutationsPerStep);
}));
steps.push(new BenchmarkTestStep(`Removing classes - ${i}`, (bench, contentWindow, contentDocument) => {
bench.removeClasses(configuration.mutationsPerStep);
}));
steps.push(new BenchmarkTestStep(`Mutating attributes - ${i}`, (bench, contentWindow, contentDocument) => {
bench.mutateAttributes(configuration.mutationsPerStep);
}));
steps.push(new BenchmarkTestStep(`Adding leaf elements - ${i}`, (bench, contentWindow, contentDocument) => {
bench.addLeafElements(configuration.mutationsPerStep);
}));
steps.push(new BenchmarkTestStep(`Removing leaf elements - ${i}`, (bench, contentWindow, contentDocument) => {
bench.removeLeafElements(configuration.mutationsPerStep);
}));
}
return steps;
}
function makeSuite(configuration)
{
return {
name: configuration.name,
url: 'style-bench.html',
prepare: (runner, contentWindow, contentDocument) => {
return runner.waitForElement('#testroot').then((element) => {
return contentWindow.createBenchmark(configuration);
});
},
tests: makeSteps(configuration),
};
}
var Suites = [];
for (const configuration of StyleBench.predefinedConfigurations())
Suites.push(makeSuite(configuration));