| Index: LayoutTests/inspector/split-widget.html
|
| diff --git a/LayoutTests/inspector/split-widget.html b/LayoutTests/inspector/split-widget.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..04ce1455b22355c482d32c57901a9efd100a563e
|
| --- /dev/null
|
| +++ b/LayoutTests/inspector/split-widget.html
|
| @@ -0,0 +1,128 @@
|
| +<html>
|
| +<head>
|
| +<script src="../http/tests/inspector/inspector-test.js"></script>
|
| +<script>
|
| +
|
| +function test()
|
| +{
|
| + var settingIndex = 0;
|
| + function createAndShowSplitWidget(isVertical, secondIsSidebar, settingName, defaultSidebarWidth, defaultSidebarHeight, shouldSaveShowMode)
|
| + {
|
| + var splitWidget = new WebInspector.SplitWidget(isVertical, secondIsSidebar, settingName, defaultSidebarWidth, defaultSidebarHeight);
|
| + splitWidget.setMainWidget(new WebInspector.Widget());
|
| + splitWidget.setSidebarWidget(new WebInspector.Widget());
|
| + if (shouldSaveShowMode)
|
| + splitWidget.enableShowModeSaving();
|
| + splitWidget.element.style.position = "absolute";
|
| + splitWidget.element.style.top = "0";
|
| + splitWidget.element.style.left = "0";
|
| + splitWidget.element.style.height = "500px";
|
| + splitWidget.element.style.width = "500px";
|
| + splitWidget.markAsRoot();
|
| + splitWidget.show(document.body);
|
| + return splitWidget;
|
| + }
|
| +
|
| + function dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget)
|
| + {
|
| + var sidebarSize = splitWidget.isVertical() ? splitWidget.sidebarWidget().element.offsetWidth : splitWidget.sidebarWidget().element.offsetHeight;
|
| + var orientation = splitWidget.isVertical() ? "vertical" : "horizontal";
|
| + InspectorTest.addResult(" Sidebar size = " + sidebarSize + ", showMode = " + splitWidget.showMode() + ", " + orientation);
|
| + InspectorTest.addResult(" Setting value: " + JSON.stringify(WebInspector.settings.settingForTest(splitWidget._setting._name).get()));
|
| + }
|
| +
|
| + function testSplitWidgetSizes(useFraction, shouldSaveShowMode)
|
| + {
|
| + var secondIsSidebar = true;
|
| + var settingName = "splitWidgetStateSettingName" + (++settingIndex);
|
| + var defaultSidebarWidth = useFraction ? 0.23 : 101;
|
| + var defaultSidebarHeight = useFraction ? 0.24 : 102;
|
| + var newWidth = useFraction ? 125 : 201;
|
| + var newHeight = useFraction ? 130 : 202;
|
| +
|
| + var splitWidget;
|
| + InspectorTest.addResult("Create default split widget");
|
| + var params = "useFraction = " + useFraction + ", shouldSaveShowMode = " + shouldSaveShowMode;
|
| + InspectorTest.addResult("Running split widget test with the following parameters: " + params);
|
| +
|
| + InspectorTest.addResult("Creating split widget");
|
| + splitWidget = createAndShowSplitWidget(true, secondIsSidebar, settingName, defaultSidebarWidth, defaultSidebarHeight, shouldSaveShowMode);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Hiding sidebar");
|
| + splitWidget.hideSidebar();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Showing sidebar");
|
| + splitWidget.showBoth();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Resizing");
|
| + splitWidget.setSidebarSize(newWidth);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Hiding sidebar");
|
| + splitWidget.hideSidebar();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Showing sidebar");
|
| + splitWidget.showBoth();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Making horizontal");
|
| + splitWidget.setVertical(false);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Resizing");
|
| + splitWidget.setSidebarSize(newHeight);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Hiding sidebar");
|
| + splitWidget.hideSidebar();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + splitWidget.element.remove();
|
| +
|
| + InspectorTest.addResult("Recreating split widget");
|
| + splitWidget = createAndShowSplitWidget(true, secondIsSidebar, settingName, defaultSidebarWidth, defaultSidebarHeight, shouldSaveShowMode);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Hiding sidebar");
|
| + splitWidget.hideSidebar();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Making horizontal");
|
| + splitWidget.setVertical(false);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Showing sidebar");
|
| + splitWidget.showBoth();
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + splitWidget.element.remove();
|
| +
|
| + InspectorTest.addResult("Recreating split widget");
|
| + splitWidget = createAndShowSplitWidget(true, secondIsSidebar, settingName, defaultSidebarWidth, defaultSidebarHeight, shouldSaveShowMode);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + InspectorTest.addResult("Making horizontal");
|
| + splitWidget.setVertical(false);
|
| + dumpSplitWidgetOrientationShowModeAndSidebarSize(splitWidget);
|
| +
|
| + splitWidget.element.remove();
|
| + InspectorTest.addResult("");
|
| + }
|
| +
|
| + // Test all combinations of useFraction and shouldSaveShowMode flags
|
| + testSplitWidgetSizes(false, false);
|
| + testSplitWidgetSizes(false, true);
|
| + testSplitWidgetSizes(true, false);
|
| + testSplitWidgetSizes(true, true);
|
| + InspectorTest.completeTest();
|
| +}
|
| +</script>
|
| +</head>
|
| +<body onload="runTest()">
|
| +<p>Tests how split widget saving to settings works.</p>
|
| +</body>
|
| +</html>
|
|
|