| Index: tools/perf/page_sets/motionmark.py
|
| diff --git a/tools/perf/page_sets/motionmark.py b/tools/perf/page_sets/motionmark.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..1664832b6055342fa8da7ad8c608a352c0cb9150
|
| --- /dev/null
|
| +++ b/tools/perf/page_sets/motionmark.py
|
| @@ -0,0 +1,102 @@
|
| +# Copyright 2017 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.
|
| +from telemetry.page import page as page_module
|
| +from telemetry import story
|
| +
|
| +
|
| +class MotionMarkPage(page_module.Page):
|
| + def __init__(self, page_set, suite_name, test_name, complexity):
|
| + name = suite_name + ' - ' + test_name
|
| + suite_name = ''.join(c for c in suite_name if c not in ' .,')
|
| + test_name = ''.join(c for c in test_name if c not in ' .,')
|
| + url = (
|
| + 'http://browserbench.org/MotionMark/developer.html'
|
| + '?suite-name=%s'
|
| + '&test-name=%s'
|
| + '&complexity=%d'
|
| + '&test-interval=20'
|
| + '&display=minimal'
|
| + '&tiles=big'
|
| + '&controller=fixed'
|
| + '&frame-rate=50'
|
| + '&kalman-process-error=1'
|
| + '&kalman-measurement-error=4'
|
| + '&time-measurement=performance'
|
| + ) % (suite_name, test_name, complexity)
|
| + super(MotionMarkPage, self).__init__(
|
| + url=url, page_set=page_set, name=name)
|
| +
|
| + def RunPageInteractions(self, action_runner):
|
| + with action_runner.CreateInteraction('Filter'):
|
| + action_runner.Wait(2)
|
| +
|
| +class MotionMarkPageSet(story.StorySet):
|
| + """
|
| + Description: MotionMark test suites.
|
| + """
|
| + def __init__(self):
|
| + super(MotionMarkPageSet, self).__init__(
|
| + archive_data_file='data/motionmark.json',
|
| + cloud_storage_bucket=story.PARTNER_BUCKET)
|
| +
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Multiply', 1000))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Canvas Arcs', 1200))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Leaves', 1400))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Paths', 2500))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Canvas Lines', 7500))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Focus', 200))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Images', 100))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Design', 200))
|
| + self.AddStory(MotionMarkPage(self, 'Animometer', 'Suits', 800))
|
| +
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing circles', 1200))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing clipped rects', 800))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing gradient circles', 1200))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing blend circles', 600))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing filter circles', 300))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing SVG images', 400))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'CSS bouncing tagged images', 1000))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'Leaves 2.0', 1200))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'Focus 2.0', 200))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'DOM particles, SVG masks', 300))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'HTML suite', 'Composited Transforms', 1200))
|
| +
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'canvas bouncing clipped rects', 1500))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'canvas bouncing gradient circles', 2000))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'canvas bouncing SVG images', 500))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'canvas bouncing PNG images', 5000))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'Stroke shapes', 800))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'Fill shapes', 1000))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'Canvas suite', 'Canvas put/get image data', 1000))
|
| +
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'SVG suite', 'SVG bouncing circles', 3500))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'SVG suite', 'SVG bouncing clipped rects', 800))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'SVG suite', 'SVG bouncing gradient circles', 2200))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'SVG suite', 'SVG bouncing SVG images', 400))
|
| + self.AddStory(MotionMarkPage(
|
| + self, 'SVG suite', 'SVG bouncing PNG images', 700))
|
| +
|
| + self.AddStory(MotionMarkPage(self, '3D Graphics', 'WebGL', 18000))
|
|
|