summaryrefslogtreecommitdiffstats
path: root/browser/components/customizableui/test/browser_963639_customizing_attribute_non_customizable_toolbar.js
blob: db829ab4111309d366f5f2b80c43eef168014bde (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
44
45
46
47
48
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

"use strict";

const kToolbar = "test-toolbar-963639-non-customizable-customizing-attribute";

add_task(async function () {
  info(
    "Test for Bug 963639 - CustomizeMode _onToolbarVisibilityChange sets @customizing on non-customizable toolbars"
  );

  let toolbar = document.createXULElement("toolbar");
  toolbar.id = kToolbar;
  gNavToolbox.appendChild(toolbar);

  let testToolbar = document.getElementById(kToolbar);
  ok(testToolbar, "Toolbar was created.");
  is(
    gNavToolbox.getElementsByAttribute("id", kToolbar).length,
    1,
    "Toolbar was added to the navigator toolbox"
  );

  toolbar.setAttribute(
    "toolbarname",
    "NonCustomizableToolbarCustomizingAttribute"
  );
  toolbar.setAttribute("collapsed", "true");

  await startCustomizing();
  window.setToolbarVisibility(toolbar, "true");
  isnot(
    toolbar.getAttribute("customizing"),
    "true",
    "Toolbar doesn't have the customizing attribute"
  );

  await endCustomizing();
  gNavToolbox.removeChild(toolbar);

  is(
    gNavToolbox.getElementsByAttribute("id", kToolbar).length,
    0,
    "Toolbar was removed from the navigator toolbox"
  );
});