Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / dom / html / level2 / events / initEvent04.js
blobf049096b2500967c89c71e1cea396344c55108de
1 /*
2 Copyright Â© 2001-2004 World Wide Web Consortium,
3 (Massachusetts Institute of Technology, European Research Consortium
4 for Informatics and Mathematics, Keio University). All
5 Rights Reserved. This work is distributed under the W3C® Software License [1] in the
6 hope that it will be useful, but WITHOUT ANY WARRANTY; without even
7 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
9 [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
12    /**
13     *  Gets URI that identifies the test.
14     *  @return uri identifier of test
15     */
16 function getTargetURI() {
17       return "http://www.w3.org/2001/DOM-Test-Suite/level2/events/initEvent04";
18    }
20 var docsLoaded = -1000000;
21 var builder = null;
24 //   This function is called by the testing framework before
25 //      running the test suite.
27 //   If there are no configuration exceptions, asynchronous
28 //        document loading is started.  Otherwise, the status
29 //        is set to complete and the exception is immediately
30 //        raised when entering the body of the test.
32 function setUpPage() {
33    setUpPageStatus = 'running';
34    try {
35      //
36      //   creates test document builder, may throw exception
37      //
38      builder = createConfiguredBuilder();
39        checkFeature("MutationEvents", "2.0");
41       docsLoaded = 0;
43       var docRef = null;
44       if (typeof(this.doc) != 'undefined') {
45         docRef = this.doc;
46       }
47       docsLoaded += preload(docRef, "doc", "hc_staff");
49        if (docsLoaded == 1) {
50           setUpPageStatus = 'complete';
51        }
52     } catch(ex) {
53         catchInitializationError(builder, ex);
54         setUpPageStatus = 'complete';
55     }
59 //   This method is called on the completion of
60 //      each asychronous load started in setUpTests.
62 //   When every synchronous loaded document has completed,
63 //      the page status is changed which allows the
64 //      body of the test to be executed.
65 function loadComplete() {
66     if (++docsLoaded == 1) {
67         setUpPageStatus = 'complete';
68     }
71 /**
73 The Event.initEvent method is called for event returned by
74 DocumentEvent.createEvent("MutationEvents")
75 and the state is checked to see if it reflects the parameters.
77 * @author Curt Arnold
78 * @see http://www.w3.org/TR/DOM-Level-2-Events/events#Events-Event-initEvent
80 function initEvent04() {
81    var success;
82     if(checkInitialization(builder, "initEvent04") != null) return;
83     var doc;
84       var event;
85       var expectedEventType = "rotate";
86       var actualEventType;
87       var expectedCanBubble = true;
88       var actualCanBubble;
89       var expectedCancelable = false;
90       var actualCancelable;
92       var docRef = null;
93       if (typeof(this.doc) != 'undefined') {
94         docRef = this.doc;
95       }
96       doc = load(docRef, "doc", "hc_staff");
97       event = doc.createEvent("MutationEvents");
98       assertNotNull("notnull",event);
99 event.initEvent(expectedEventType,expectedCanBubble,expectedCancelable);
100       actualEventType = event.type;
102       assertEquals("type",expectedEventType,actualEventType);
103        actualCancelable = event.cancelable;
105       assertEquals("cancelable",expectedCancelable,actualCancelable);
106        actualCanBubble = event.bubbles;
108       assertEquals("canBubble",expectedCanBubble,actualCanBubble);
112 function runTest() {
113    initEvent04();