7b803a33335b1a7ccbfcf8d3bf0574b042a32c4e
[WebKit-https.git] / Tools / WebKitTestRunner / InjectedBundle / Bindings / LayoutTestController.idl
1 /*
2  * Copyright (C) 2010 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 module WTR {
27
28     interface LayoutTestController {
29         // The basics.
30         void dumpAsText();
31         void dumpChildFramesAsText();
32         void waitUntilDone();
33         void notifyDone();
34
35         // Other dumping.
36         void dumpBackForwardList();
37         void dumpChildFrameScrollPositions();
38         void dumpEditingCallbacks();
39         void dumpSelectionRect();
40         void dumpStatusCallbacks();
41         void dumpTitleChanges();
42
43         // Special options.
44         void keepWebHistory();
45         void setAcceptsEditing(in boolean value);
46         void setCanOpenWindows(in boolean value);
47         void setCloseRemainingWindowsWhenComplete(in boolean value);
48         void setXSSAuditorEnabled(in boolean value);
49         void setAllowUniversalAccessFromFileURLs(in boolean value);
50         void setAllowFileAccessFromFileURLs(in boolean value);
51
52         // Special DOM functions.
53         void clearBackForwardList();
54         object computedStyleIncludingVisitedInfo(in object element);
55         DOMString counterValueForElementById(in DOMString elementId);
56         void execCommand(in DOMString name, in DOMString argument);
57         boolean isCommandEnabled(in DOMString name);
58         DOMString markerTextForListItem(in object element);
59         unsigned long windowCount();
60         object shadowRoot(in object element);
61
62         // Repaint testing.
63         void testRepaint();
64         void repaintSweepHorizontally();
65         void display();
66
67         // Printing
68         int numberOfPages(in double pageWidthInPixels, in double pageHeightInPixels);
69         int pageNumberForElementById(in DOMString id, in double pageWidthInPixels, in double pageHeightInPixels);
70
71         // Animation testing.
72         int numberOfActiveAnimations();
73         boolean pauseAnimationAtTimeOnElementWithId(in DOMString animationName, in double time, in DOMString elementId);
74         void suspendAnimations();
75         void resumeAnimations();
76
77         // UserContent testing.
78         void addUserScript(in DOMString source, in boolean runAtStart, in boolean allFrames);
79         void addUserStyleSheet(in DOMString source, in boolean allFrames);
80
81         // Local storage API
82         void clearAllDatabases();
83         void setDatabaseQuota(in unsigned long long quota);
84
85         // Compositing testing.
86         DOMString layerTreeAsText();
87
88         // Text search testing.
89         boolean findString(in DOMString target, in object optionsArray);
90
91         // Evaluating script in a special context.
92         [PassContext] void evaluateScriptInIsolatedWorld(in unsigned long worldID, in DOMString script);
93
94         // For Web Inspector tests
95         void showWebInspector();
96         void closeWebInspector();
97         void evaluateInWebInspector(in long callID, in DOMString script);
98         void setTimelineProfilingEnabled(in boolean enabled);
99
100         void setPOSIXLocale(in DOMString locale);
101
102         void setWillSendRequestReturnsNull(in boolean flag);
103     };
104
105 }