summaryrefslogtreecommitdiffstats
path: root/devtools/client/animationinspector/test/browser_animation_toggle_button_toggles_animations.js
blob: 4d55e0433437dc6c8f3e20d183abd0683e54bcac (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
/* vim: set ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
 http://creativecommons.org/publicdomain/zero/1.0/ */

"use strict";

requestLongerTimeout(2);

// Test that the main toggle button actually toggles animations.
// This test doesn't need to be extra careful about checking that *all*
// animations have been paused (including inside iframes) because there's an
// actor test in /devtools/server/tests/browser/ that does this.

add_task(function* () {
  yield addTab(URL_ROOT + "doc_simple_animation.html");
  let {panel} = yield openAnimationInspector();

  info("Click the toggle button");
  yield panel.toggleAll();
  yield checkState("paused");

  info("Click again the toggle button");
  yield panel.toggleAll();
  yield checkState("running");
});

function* checkState(state) {
  for (let selector of [".animated", ".multi", ".long"]) {
    let playState = yield getAnimationPlayerState(selector);
    is(playState, state, "The animation on node " + selector + " is " + state);
  }
}