Wed, 31 Dec 2014 13:27:57 +0100
Ignore runtime configuration files generated during quality assurance.
1 /* Any copyright is dedicated to the Public Domain.
2 * http://creativecommons.org/publicdomain/zero/1.0/ */
4 "use strict";
7 add_task(function* checkNoAddingToPanel() {
8 let area = CustomizableUI.AREA_PANEL;
9 let previousPlacements = getAreaWidgetIds(area);
10 CustomizableUI.addWidgetToArea("separator", area);
11 CustomizableUI.addWidgetToArea("spring", area);
12 CustomizableUI.addWidgetToArea("spacer", area);
13 assertAreaPlacements(area, previousPlacements);
15 let oldNumberOfItems = previousPlacements.length;
16 if (getAreaWidgetIds(area).length != oldNumberOfItems) {
17 CustomizableUI.reset();
18 }
19 });
21 add_task(function* checkAddingToToolbar() {
22 let area = CustomizableUI.AREA_NAVBAR;
23 let previousPlacements = getAreaWidgetIds(area);
24 CustomizableUI.addWidgetToArea("separator", area);
25 CustomizableUI.addWidgetToArea("spring", area);
26 CustomizableUI.addWidgetToArea("spacer", area);
27 let expectedPlacements = [...previousPlacements].concat([
28 /separator/,
29 /spring/,
30 /spacer/
31 ]);
32 assertAreaPlacements(area, expectedPlacements);
34 let newlyAddedElements = getAreaWidgetIds(area).slice(-3);
35 while (newlyAddedElements.length) {
36 CustomizableUI.removeWidgetFromArea(newlyAddedElements.shift());
37 }
39 assertAreaPlacements(area, previousPlacements);
41 let oldNumberOfItems = previousPlacements.length;
42 if (getAreaWidgetIds(area).length != oldNumberOfItems) {
43 CustomizableUI.reset();
44 }
45 });
48 add_task(function* checkDragging() {
49 let startArea = CustomizableUI.AREA_NAVBAR;
50 let targetArea = CustomizableUI.AREA_PANEL;
51 let startingToolbarPlacements = getAreaWidgetIds(startArea);
52 let startingTargetPlacements = getAreaWidgetIds(targetArea);
54 CustomizableUI.addWidgetToArea("separator", startArea);
55 CustomizableUI.addWidgetToArea("spring", startArea);
56 CustomizableUI.addWidgetToArea("spacer", startArea);
58 let placementsWithSpecials = getAreaWidgetIds(startArea);
59 let elementsToMove = [];
60 for (let id of placementsWithSpecials) {
61 if (CustomizableUI.isSpecialWidget(id)) {
62 elementsToMove.push(id);
63 }
64 }
65 is(elementsToMove.length, 3, "Should have 3 elements to try and drag.");
67 yield startCustomizing();
68 for (let id of elementsToMove) {
69 simulateItemDrag(document.getElementById(id), PanelUI.contents);
70 }
72 assertAreaPlacements(startArea, placementsWithSpecials);
73 assertAreaPlacements(targetArea, startingTargetPlacements);
75 for (let id of elementsToMove) {
76 simulateItemDrag(document.getElementById(id), gCustomizeMode.visiblePalette);
77 }
79 assertAreaPlacements(startArea, startingToolbarPlacements);
80 assertAreaPlacements(targetArea, startingTargetPlacements);
82 ok(!gCustomizeMode.visiblePalette.querySelector("toolbarspring,toolbarseparator,toolbarspacer"),
83 "No specials should make it to the palette alive.");
84 yield endCustomizing();
85 });
88 add_task(function* asyncCleanup() {
89 yield endCustomizing();
90 CustomizableUI.reset();
91 });