summaryrefslogtreecommitdiffstats
path: root/devtools/client/inspector/animation/test/browser_animation_short-duration.js
blob: c953d886ff9b1de54902a5650b7a360cdeb7ceca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

// Test tooltips and iteration path of summary graph with short duration animation.

add_task(async function () {
  await addTab(URL_ROOT + "doc_short_duration.html");
  const { panel } = await openAnimationInspector();

  const animationItemEl = await findAnimationItemByTargetSelector(
    panel,
    ".short"
  );
  const summaryGraphEl = animationItemEl.querySelector(
    ".animation-summary-graph"
  );

  info("Check tooltip");
  assertTooltip(summaryGraphEl);

  info("Check iteration path");
  assertIterationPath(summaryGraphEl);
});

function assertTooltip(summaryGraphEl) {
  const tooltip = summaryGraphEl.getAttribute("title");
  const expected = "Duration: 0s";
  ok(tooltip.includes(expected), `Tooltip should include '${expected}'`);
}

function assertIterationPath(summaryGraphEl) {
  const pathEl = summaryGraphEl.querySelector(
    ".animation-computed-timing-path .animation-iteration-path"
  );
  const expected = [
    { x: 0, y: 0 },
    { x: 0.999, y: 99.9 },
    { x: 1, y: 0 },
  ];
  assertPathSegments(pathEl, true, expected);
}