1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /* Any copyright is dedicated to the Public Domain.
- http://creativecommons.org/publicdomain/zero/1.0/ */
- "use strict";
- // Tests that graph widgets correctly emit mouse input events.
- const FAST_FPS = 60;
- const SLOW_FPS = 10;
- // Each element represents a second
- const FRAMES = [FAST_FPS, FAST_FPS, FAST_FPS, SLOW_FPS, FAST_FPS];
- const TEST_DATA = [];
- const INTERVAL = 100;
- const DURATION = 5000;
- var t = 0;
- for (let frameRate of FRAMES) {
- for (let i = 0; i < frameRate; i++) {
- // Duration between frames at this rate
- let delta = Math.floor(1000 / frameRate);
- t += delta;
- TEST_DATA.push(t);
- }
- }
- const LineGraphWidget = require("devtools/client/shared/widgets/LineGraphWidget");
- add_task(function* () {
- yield addTab("about:blank");
- yield performTest();
- gBrowser.removeCurrentTab();
- });
- function* performTest() {
- let [host,, doc] = yield createHost();
- let graph = new LineGraphWidget(doc.body, "fps");
- yield testGraph(graph);
- yield graph.destroy();
- host.destroy();
- }
- function* testGraph(graph) {
- console.log("test data", TEST_DATA);
- yield graph.setDataFromTimestamps(TEST_DATA, INTERVAL, DURATION);
- is(graph._avgTooltip.querySelector("[text=value]").textContent, "50",
- "The average tooltip displays the correct value.");
- }
|