# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from telemetry import story
from page_sets import press_story
class WasmPsPdfKitStory(press_story.PressStory):
URL = 'https://pspdfkit.com/webassembly-benchmark/'
def ExecuteTest(self, action_runner):
action_runner.WaitForElement(text='All done!', timeout_in_seconds=480)
def ParseTestResults(self, action_runner):
self.AddJavaScriptMeasurement(
'Total', 'ms', """
parseInt(document.querySelector(
'#root > div > div:nth-child(10) > div.Result >' +
'div.Result-score > div > div.Score-value'
).textContent)
""")
self.AddJavaScriptMeasurement(
'Rendering', 'ms', """
let text =
document.querySelector(
'#Test-Rendering > details > summary > div.Bench-heading > span'
).textContent;
let value = text.substring(0, text.length - 3);
parseInt(value)
""")
self.AddJavaScriptMeasurement(
'Searching', 'ms', """
text =
document.querySelector(
'#Test-Searching > details > summary > div.Bench-heading > span'
).textContent;
value = text.substring(0, text.length - 3);
parseInt(value)
""")
self.AddJavaScriptMeasurement(
'Exporting', 'ms', """
text =
document.querySelector(
'#Test-Exporting > details > summary > div.Bench-heading > span'
).textContent;
value = text.substring(0, text.length - 3);
parseInt(value)
""")
self.AddJavaScriptMeasurement(
'Annotations', 'ms', """
text =
document.querySelector(
'#Test-Annotations > details > summary > div.Bench-heading > span'
).textContent;
value = text.substring(0, text.length - 3);
parseInt(value)
""")
self.AddJavaScriptMeasurement(
'Initialization', 'ms', """
text =
document.querySelector(
'#Test-Initialization > details > summary > div.Bench-heading > span'
).textContent;
value = text.substring(0, text.length - 3);
parseInt(value)
""")
class WasmPsPdfKitStorySet(story.StorySet):
def __init__(self):
super(WasmPsPdfKitStorySet,
self).__init__(archive_data_file='data/WasmPsPdfKit.json',
cloud_storage_bucket=story.PUBLIC_BUCKET)
self.AddStory(WasmPsPdfKitStory(self))