From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- dom/tests/browser/beforeunload_test_page.html | 92 + dom/tests/browser/browser.toml | 177 + .../browser/browser_ConsoleAPI_originAttributes.js | 108 + .../browser/browser_ConsoleStorageAPITests.js | 108 + .../browser_ConsoleStoragePBTest_perwindowpb.js | 96 + .../browser/browser_alert_from_about_blank.js | 42 + dom/tests/browser/browser_autofocus_background.js | 59 + dom/tests/browser/browser_autofocus_preference.js | 16 + .../browser_beforeunload_between_chrome_content.js | 152 + dom/tests/browser/browser_bug1004814.js | 47 + .../browser_bug1008941_dismissGeolocationHanger.js | 45 + dom/tests/browser/browser_bug1236512.js | 119 + dom/tests/browser/browser_bug1238427.js | 40 + dom/tests/browser/browser_bug1316330.js | 52 + dom/tests/browser/browser_bug1563629.js | 79 + dom/tests/browser/browser_bug1685807.js | 78 + dom/tests/browser/browser_bug1709346.js | 48 + dom/tests/browser/browser_bug396843.js | 342 ++ dom/tests/browser/browser_bytecode_cache_asm_js.js | 31 + .../browser_cancel_keydown_keypress_event.js | 41 + .../browser_data_document_crossOriginIsolated.js | 68 + .../browser/browser_focus_steal_from_chrome.js | 214 + ...ser_focus_steal_from_chrome_during_mousedown.js | 82 + ...ser_form_associated_custom_elements_validity.js | 111 + dom/tests/browser/browser_frame_elements.html | 15 + dom/tests/browser/browser_frame_elements.js | 74 + .../browser/browser_hasActivePeerConnections.js | 134 + dom/tests/browser/browser_hasbeforeunload.js | 875 ++++ dom/tests/browser/browser_keypressTelemetry.js | 69 + dom/tests/browser/browser_localStorage_e10s.js | 284 ++ dom/tests/browser/browser_localStorage_fis.js | 529 +++ .../browser_localStorage_privatestorageevent.js | 87 + .../browser/browser_localStorage_snapshotting.js | 774 ++++ .../browser_navigate_replace_browsingcontext.js | 23 + dom/tests/browser/browser_noopener.js | 176 + dom/tests/browser/browser_noopener_null_uri.js | 15 + dom/tests/browser/browser_persist_cookies.js | 128 + .../browser/browser_persist_cross_origin_iframe.js | 198 + dom/tests/browser/browser_persist_image_accept.js | 139 + .../browser/browser_persist_mixed_content_image.js | 109 + dom/tests/browser/browser_pointerlock_warning.js | 129 + .../browser/browser_sessionStorage_navigation.js | 271 ++ .../browser_test_focus_after_modal_state.js | 71 + .../browser_test_new_window_from_content.js | 221 + .../browser/browser_test_toolbars_visibility.js | 323 ++ ...nlinkable_about_page_can_load_module_scripts.js | 84 + dom/tests/browser/browser_wakelock.js | 40 + .../browser/browser_windowProxy_transplant.js | 219 + dom/tests/browser/browser_xhr_sandbox.js | 62 + .../browser/create_webrtc_peer_connection.html | 28 + dom/tests/browser/dummy.html | 13 + dom/tests/browser/dummy.png | Bin 0 -> 703 bytes dom/tests/browser/file_bug1685807.html | 12 + dom/tests/browser/file_coop_coep.html | 6 + dom/tests/browser/file_coop_coep.html^headers^ | 2 + dom/tests/browser/file_empty.html | 0 dom/tests/browser/file_empty_cross_site_frame.html | 2 + dom/tests/browser/file_load_module_script.html | 8 + dom/tests/browser/file_module_loaded.mjs | 9 + dom/tests/browser/file_module_loaded2.mjs | 3 + dom/tests/browser/file_postMessage_parent.html | 48 + dom/tests/browser/focus_after_prompt.html | 18 + dom/tests/browser/geo_leak_test.html | 17 + dom/tests/browser/helper_localStorage.js | 302 ++ dom/tests/browser/image.html | 2 + dom/tests/browser/load_forever.sjs | 15 + dom/tests/browser/mimeme.sjs | 32 + dom/tests/browser/page_bytecode_cache_asm_js.html | 10 + dom/tests/browser/page_bytecode_cache_asm_js.js | 30 + dom/tests/browser/page_localStorage.js | 127 + dom/tests/browser/page_localstorage.html | 8 + dom/tests/browser/page_localstorage_coop+coep.html | 8 + .../page_localstorage_coop+coep.html^headers^ | 2 + .../browser/page_localstorage_snapshotting.html | 68 + dom/tests/browser/page_privatestorageevent.html | 5 + dom/tests/browser/position.html | 29 + dom/tests/browser/prevent_return_key.html | 34 + .../browser/set-samesite-cookies-and-redirect.sjs | 43 + dom/tests/browser/test-console-api.html | 78 + dom/tests/browser/test_bug1004814.html | 8 + dom/tests/browser/test_mixed_content_image.html | 1 + .../test_new_window_from_content_child.html | 25 + dom/tests/browser/test_noopener_source.html | 15 + dom/tests/browser/test_noopener_target.html | 9 + dom/tests/browser/worker_bug1004814.js | 6 + dom/tests/mochitest/ajax/jquery/ChangeLog.txt | 98 + dom/tests/mochitest/ajax/jquery/GPL-LICENSE.txt | 278 ++ dom/tests/mochitest/ajax/jquery/MIT-LICENSE.txt | 20 + dom/tests/mochitest/ajax/jquery/dist/jquery.js | 3549 +++++++++++++++ dom/tests/mochitest/ajax/jquery/manifest.json | 1 + dom/tests/mochitest/ajax/jquery/mochitest.toml | 38 + dom/tests/mochitest/ajax/jquery/test/data/cow.jpg | Bin 0 -> 1635 bytes .../mochitest/ajax/jquery/test/data/dashboard.xml | 11 + .../mochitest/ajax/jquery/test/data/iframe.html | 8 + .../ajax/jquery/test/data/json_assigned_obj.js | 1 + .../mochitest/ajax/jquery/test/data/json_obj.js | 1 + .../mochitest/ajax/jquery/test/data/name.html | 1 + .../ajax/jquery/test/data/offset/absolute.html | 39 + .../ajax/jquery/test/data/offset/fixed.html | 33 + .../ajax/jquery/test/data/offset/relative.html | 31 + .../ajax/jquery/test/data/offset/scroll.html | 39 + .../ajax/jquery/test/data/offset/static.html | 31 + .../ajax/jquery/test/data/offset/table.html | 43 + .../mochitest/ajax/jquery/test/data/test.html | 7 + dom/tests/mochitest/ajax/jquery/test/data/test.js | 3 + .../mochitest/ajax/jquery/test/data/test2.html | 5 + .../mochitest/ajax/jquery/test/data/test3.html | 3 + .../mochitest/ajax/jquery/test/data/testrunner.js | 334 ++ .../mochitest/ajax/jquery/test/data/testsuite.css | 117 + .../mochitest/ajax/jquery/test/data/with_fries.xml | 25 + dom/tests/mochitest/ajax/jquery/test/fix.html | 48 + dom/tests/mochitest/ajax/jquery/test/index.html | 187 + dom/tests/mochitest/ajax/jquery/test/offset.html | 27 + dom/tests/mochitest/ajax/jquery/test/test.js | 41 + dom/tests/mochitest/ajax/jquery/test/unit/ajax.js | 837 ++++ dom/tests/mochitest/ajax/jquery/test/unit/core.js | 1700 +++++++ .../mochitest/ajax/jquery/test/unit/dimensions.js | 86 + dom/tests/mochitest/ajax/jquery/test/unit/event.js | 348 ++ dom/tests/mochitest/ajax/jquery/test/unit/fx.js | 435 ++ .../mochitest/ajax/jquery/test/unit/offset.js | 164 + .../mochitest/ajax/jquery/test/unit/selector.js | 224 + dom/tests/mochitest/ajax/jquery/test_jQuery.html | 24 + dom/tests/mochitest/ajax/jquery/version.txt | 1 + dom/tests/mochitest/ajax/lib/AJAX_setup.js | 35 + dom/tests/mochitest/ajax/lib/test.css | 28 + .../mochitest/ajax/mochikit/MochiKit/Async.js | 699 +++ dom/tests/mochitest/ajax/mochikit/MochiKit/Base.js | 1412 ++++++ .../mochitest/ajax/mochikit/MochiKit/Color.js | 902 ++++ .../mochitest/ajax/mochikit/MochiKit/Controls.js | 1388 ++++++ dom/tests/mochitest/ajax/mochikit/MochiKit/DOM.js | 1276 ++++++ .../mochitest/ajax/mochikit/MochiKit/DateTime.js | 216 + .../ajax/mochikit/MochiKit/DragAndDrop.js | 824 ++++ .../mochitest/ajax/mochikit/MochiKit/Format.js | 304 ++ dom/tests/mochitest/ajax/mochikit/MochiKit/Iter.js | 851 ++++ .../mochitest/ajax/mochikit/MochiKit/Logging.js | 321 ++ .../ajax/mochikit/MochiKit/LoggingPane.js | 374 ++ .../mochitest/ajax/mochikit/MochiKit/MochiKit.js | 154 + .../mochitest/ajax/mochikit/MochiKit/MockDOM.js | 115 + .../mochitest/ajax/mochikit/MochiKit/Position.js | 258 ++ .../mochitest/ajax/mochikit/MochiKit/Selector.js | 431 ++ .../mochitest/ajax/mochikit/MochiKit/Signal.js | 899 ++++ .../mochitest/ajax/mochikit/MochiKit/Sortable.js | 589 +++ .../mochitest/ajax/mochikit/MochiKit/Style.js | 445 ++ dom/tests/mochitest/ajax/mochikit/MochiKit/Test.js | 181 + .../mochitest/ajax/mochikit/MochiKit/Visual.js | 1981 +++++++++ .../ajax/mochikit/MochiKit/__package__.js | 18 + dom/tests/mochitest/ajax/mochikit/manifest.json | 1 + dom/tests/mochitest/ajax/mochikit/mochitest.toml | 27 + .../mochitest/ajax/mochikit/test_Mochikit.html | 15 + .../mochitest/ajax/mochikit/tests/FakeJSAN.js | 40 + .../ajax/mochikit/tests/MochiKit-Async.html | 408 ++ .../ajax/mochikit/tests/MochiKit-Base.html | 34 + .../ajax/mochikit/tests/MochiKit-Color.html | 84 + .../ajax/mochikit/tests/MochiKit-DOM.html | 316 ++ .../ajax/mochikit/tests/MochiKit-DateTime.html | 39 + .../ajax/mochikit/tests/MochiKit-DragAndDrop.html | 54 + .../ajax/mochikit/tests/MochiKit-Format.html | 39 + .../ajax/mochikit/tests/MochiKit-Iter.html | 38 + .../ajax/mochikit/tests/MochiKit-JSAN.html | 32 + .../ajax/mochikit/tests/MochiKit-Logging.html | 40 + .../ajax/mochikit/tests/MochiKit-MochiKit.html | 18 + .../ajax/mochikit/tests/MochiKit-Selector.html | 274 ++ .../ajax/mochikit/tests/MochiKit-Signal.html | 43 + .../ajax/mochikit/tests/MochiKit-Style.html | 141 + .../ajax/mochikit/tests/MochiKit-Visual.html | 190 + .../ajax/mochikit/tests/SimpleTest/SimpleTest.js | 473 ++ .../ajax/mochikit/tests/SimpleTest/TestRunner.js | 177 + .../ajax/mochikit/tests/SimpleTest/test.css | 28 + dom/tests/mochitest/ajax/mochikit/tests/cli.js | 6 + dom/tests/mochitest/ajax/mochikit/tests/index.html | 25 + .../mochitest/ajax/mochikit/tests/standalone.js | 16 + .../mochitest/ajax/mochikit/tests/test_Base.js | 509 +++ .../mochitest/ajax/mochikit/tests/test_Color.js | 137 + .../mochitest/ajax/mochikit/tests/test_DateTime.js | 45 + .../ajax/mochikit/tests/test_DragAndDrop.js | 30 + .../mochitest/ajax/mochikit/tests/test_Format.js | 80 + .../mochitest/ajax/mochikit/tests/test_Iter.js | 176 + .../mochitest/ajax/mochikit/tests/test_Logging.js | 75 + .../ajax/mochikit/tests/test_MochiKit-Async.json | 1 + .../mochitest/ajax/mochikit/tests/test_Signal.js | 441 ++ .../mochitest/ajax/prototype/dist/prototype.js | 4681 ++++++++++++++++++++ .../ajax/prototype/dist/prototype_update_helper.js | 417 ++ dom/tests/mochitest/ajax/prototype/manifest.json | 1 + dom/tests/mochitest/ajax/prototype/mochitest.toml | 68 + .../mochitest/ajax/prototype/test/browser.html | 229 + .../mochitest/ajax/prototype/test/console.html | 110 + .../ajax/prototype/test/functional/event.html | 243 + .../mochitest/ajax/prototype/test/lib/unittest.js | 602 +++ dom/tests/mochitest/ajax/prototype/test/test.css | 50 + .../ajax/prototype/test/unit/ajax_test.js | 286 ++ .../ajax/prototype/test/unit/array_test.js | 190 + .../ajax/prototype/test/unit/base_test.js | 511 +++ .../mochitest/ajax/prototype/test/unit/dom_test.js | 1404 ++++++ .../prototype/test/unit/element_mixins_test.js | 32 + .../ajax/prototype/test/unit/enumerable_test.js | 263 ++ .../ajax/prototype/test/unit/event_test.js | 286 ++ .../ajax/prototype/test/unit/fixtures/ajax.html | 2 + .../ajax/prototype/test/unit/fixtures/ajax.js | 42 + .../ajax/prototype/test/unit/fixtures/array.html | 1 + .../ajax/prototype/test/unit/fixtures/base.html | 6 + .../ajax/prototype/test/unit/fixtures/base.js | 106 + .../ajax/prototype/test/unit/fixtures/content.html | 1 + .../ajax/prototype/test/unit/fixtures/data.json | 1 + .../ajax/prototype/test/unit/fixtures/dom.css | 85 + .../ajax/prototype/test/unit/fixtures/dom.html | 285 ++ .../ajax/prototype/test/unit/fixtures/dom.js | 17 + .../test/unit/fixtures/element_mixins.html | 4 + .../prototype/test/unit/fixtures/element_mixins.js | 2 + .../ajax/prototype/test/unit/fixtures/empty.html | 0 .../ajax/prototype/test/unit/fixtures/empty.js | 1 + .../prototype/test/unit/fixtures/enumerable.html | 8 + .../prototype/test/unit/fixtures/enumerable.js | 23 + .../ajax/prototype/test/unit/fixtures/event.html | 4 + .../ajax/prototype/test/unit/fixtures/form.html | 112 + .../ajax/prototype/test/unit/fixtures/hash.js | 25 + .../ajax/prototype/test/unit/fixtures/hello.js | 1 + .../ajax/prototype/test/unit/fixtures/logo.gif | Bin 0 -> 3502 bytes .../prototype/test/unit/fixtures/position.html | 9 + .../prototype/test/unit/fixtures/selector.html | 69 + .../ajax/prototype/test/unit/fixtures/string.js | 8 + .../prototype/test/unit/fixtures/unittest.html | 18 + .../ajax/prototype/test/unit/form_test.js | 384 ++ .../ajax/prototype/test/unit/hash_test.js | 178 + .../ajax/prototype/test/unit/number_test.js | 44 + .../ajax/prototype/test/unit/position_test.js | 44 + .../ajax/prototype/test/unit/range_test.js | 58 + .../ajax/prototype/test/unit/selector_test.js | 377 ++ .../ajax/prototype/test/unit/string_test.js | 540 +++ .../ajax/prototype/test/unit/tmp/ajax_test.html | 42 + .../ajax/prototype/test/unit/tmp/array_test.html | 39 + .../ajax/prototype/test/unit/tmp/base_test.html | 45 + .../ajax/prototype/test/unit/tmp/dom_test.html | 326 ++ .../test/unit/tmp/element_mixins_test.html | 43 + .../prototype/test/unit/tmp/enumerable_test.html | 48 + .../ajax/prototype/test/unit/tmp/event_test.html | 42 + .../ajax/prototype/test/unit/tmp/form_test.html | 150 + .../ajax/prototype/test/unit/tmp/hash_test.html | 40 + .../ajax/prototype/test/unit/tmp/number_test.html | 38 + .../prototype/test/unit/tmp/position_test.html | 47 + .../ajax/prototype/test/unit/tmp/range_test.html | 38 + .../prototype/test/unit/tmp/selector_test.html | 107 + .../ajax/prototype/test/unit/tmp/string_test.html | 40 + .../ajax/prototype/test/unit/tmp/unit_test.html | 56 + .../ajax/prototype/test/unit/unittest_test.js | 143 + .../mochitest/ajax/prototype/test_Prototype.html | 15 + .../mochitest/ajax/scriptaculous/lib/prototype.js | 3271 ++++++++++++++ .../mochitest/ajax/scriptaculous/manifest.json | 1 + .../mochitest/ajax/scriptaculous/mochitest.toml | 34 + .../mochitest/ajax/scriptaculous/src/builder.js | 136 + .../mochitest/ajax/scriptaculous/src/controls.js | 875 ++++ .../mochitest/ajax/scriptaculous/src/dragdrop.js | 970 ++++ .../mochitest/ajax/scriptaculous/src/effects.js | 1094 +++++ .../ajax/scriptaculous/src/scriptaculous.js | 58 + .../mochitest/ajax/scriptaculous/src/slider.js | 277 ++ .../mochitest/ajax/scriptaculous/src/sound.js | 60 + .../mochitest/ajax/scriptaculous/src/unittest.js | 586 +++ .../test/unit/_ajax_inplaceeditor_result.html | 1 + .../test/unit/_ajax_inplaceeditor_text.html | 1 + .../test/unit/_ajax_updater_result.html | 20 + .../test/unit/_autocomplete_result.html | 11 + .../test/unit/_autocomplete_result_nobr.html | 1 + .../test/unit/ajax_autocompleter_test.html | 232 + .../test/unit/ajax_inplaceeditor_test.html | 152 + .../ajax/scriptaculous/test/unit/bdd_test.html | 138 + .../ajax/scriptaculous/test/unit/builder_test.html | 258 ++ .../scriptaculous/test/unit/dragdrop_test.html | 131 + .../ajax/scriptaculous/test/unit/effects_test.html | 250 ++ .../ajax/scriptaculous/test/unit/element_test.html | 104 + .../ajax/scriptaculous/test/unit/icon.png | Bin 0 -> 281 bytes .../ajax/scriptaculous/test/unit/loading_test.html | 41 + .../test/unit/position_clone_test.html | 312 ++ .../ajax/scriptaculous/test/unit/slider_test.html | 438 ++ .../scriptaculous/test/unit/sortable_test.html | 205 + .../ajax/scriptaculous/test/unit/string_test.html | 67 + .../ajax/scriptaculous/test/unit/unit_test.html | 154 + .../ajax/scriptaculous/test_Scriptaculous.html | 15 + dom/tests/mochitest/beacon/beacon-frame.html | 24 + dom/tests/mochitest/beacon/beacon-handler.sjs | 149 + .../beacon/beacon-originheader-handler.sjs | 45 + .../mochitest/beacon/beacon-preflight-handler.sjs | 37 + .../mochitest/beacon/beacon-redirect-handler.sjs | 46 + dom/tests/mochitest/beacon/beacon-set-cookie.sjs | 10 + dom/tests/mochitest/beacon/chrome.toml | 15 + dom/tests/mochitest/beacon/file_beaconCookies.html | 8 + .../mochitest/beacon/file_beaconSafelist.html | 11 + dom/tests/mochitest/beacon/mochitest.toml | 37 + dom/tests/mochitest/beacon/test_beacon.html | 60 + .../mochitest/beacon/test_beaconContentPolicy.html | 103 + dom/tests/mochitest/beacon/test_beaconCookies.html | 84 + dom/tests/mochitest/beacon/test_beaconFrame.html | 118 + .../mochitest/beacon/test_beaconOriginHeader.html | 66 + .../test_beaconPreflightWithCustomContentType.html | 57 + .../mochitest/beacon/test_beaconRedirect.html | 57 + .../test_beaconWithSafelistedContentType.html | 101 + dom/tests/mochitest/bugs/bug289714.sjs | 16 + dom/tests/mochitest/bugs/bug346659-echoer.html | 4 + .../mochitest/bugs/bug346659-opener-echoer.html | 6 + dom/tests/mochitest/bugs/bug346659-opener.html | 9 + .../mochitest/bugs/bug346659-parent-echoer.html | 5 + dom/tests/mochitest/bugs/bug346659-parent.html | 11 + dom/tests/mochitest/bugs/bug458091_child.html | 13 + dom/tests/mochitest/bugs/child_bug260264.html | 11 + dom/tests/mochitest/bugs/devicemotion_inner.html | 10 + dom/tests/mochitest/bugs/devicemotion_outer.html | 19 + dom/tests/mochitest/bugs/file1_bug414291.html | 1 + dom/tests/mochitest/bugs/file2_bug414291.html | 1 + dom/tests/mochitest/bugs/file3_bug414291.html | 1 + dom/tests/mochitest/bugs/file_bug593174_1.html | 5 + dom/tests/mochitest/bugs/file_bug593174_2.html | 30 + dom/tests/mochitest/bugs/file_bug809290_b1.html | 14 + dom/tests/mochitest/bugs/file_bug809290_b2.html | 14 + dom/tests/mochitest/bugs/file_bug809290_c.html | 10 + dom/tests/mochitest/bugs/file_bug873229.js | 6 + dom/tests/mochitest/bugs/file_bug927901.html | 18 + dom/tests/mochitest/bugs/file_cookieOutputter.html | 13 + dom/tests/mochitest/bugs/file_empty.html | 2 + dom/tests/mochitest/bugs/file_prime_cookie.html | 14 + dom/tests/mochitest/bugs/file_redirector.sjs | 9 + .../mochitest/bugs/file_resize_move_windows_1.html | 20 + .../mochitest/bugs/file_resize_move_windows_2.html | 13 + dom/tests/mochitest/bugs/file_window_bar.html | 7 + dom/tests/mochitest/bugs/grandchild_bug260264.html | 18 + dom/tests/mochitest/bugs/iframe_bug304459-1.html | 12 + dom/tests/mochitest/bugs/iframe_bug304459-2.html | 18 + dom/tests/mochitest/bugs/iframe_bug430276-2.html | 23 + dom/tests/mochitest/bugs/iframe_bug430276.html | 21 + dom/tests/mochitest/bugs/iframe_bug440572.html | 23 + dom/tests/mochitest/bugs/iframe_bug49312.html | 7 + .../bugs/iframe_domparser_after_blank.html | 22 + dom/tests/mochitest/bugs/mochitest.toml | 325 ++ dom/tests/mochitest/bugs/test1_bug369306.html | 1 + dom/tests/mochitest/bugs/test1_bug622361.html | 1 + dom/tests/mochitest/bugs/test2_bug369306.html | 1 + dom/tests/mochitest/bugs/test2_bug622361.html | 1 + .../bugs/test_DOMWindowCreated_chromeonly.html | 15 + dom/tests/mochitest/bugs/test_bug1022869.html | 39 + dom/tests/mochitest/bugs/test_bug1112040.html | 32 + .../mochitest/bugs/test_bug1160342_marquee.html | 288 ++ dom/tests/mochitest/bugs/test_bug1171215.html | 66 + dom/tests/mochitest/bugs/test_bug132255.html | 39 + dom/tests/mochitest/bugs/test_bug1530292.html | 47 + ...childnodes_nodelist_keeps_childnodes_alive.html | 37 + dom/tests/mochitest/bugs/test_bug159849.html | 44 + dom/tests/mochitest/bugs/test_bug1774135.html | 114 + dom/tests/mochitest/bugs/test_bug260264.html | 198 + .../mochitest/bugs/test_bug260264_nested.html | 138 + dom/tests/mochitest/bugs/test_bug265203.html | 108 + dom/tests/mochitest/bugs/test_bug289714.html | 44 + dom/tests/mochitest/bugs/test_bug291377.html | 40 + dom/tests/mochitest/bugs/test_bug304459.html | 47 + dom/tests/mochitest/bugs/test_bug308856.html | 42 + dom/tests/mochitest/bugs/test_bug327891.html | 33 + dom/tests/mochitest/bugs/test_bug333983.html | 35 + dom/tests/mochitest/bugs/test_bug335976.xhtml | 68 + dom/tests/mochitest/bugs/test_bug342448.html | 36 + dom/tests/mochitest/bugs/test_bug345521.html | 36 + dom/tests/mochitest/bugs/test_bug346659.html | 207 + dom/tests/mochitest/bugs/test_bug369306.html | 137 + dom/tests/mochitest/bugs/test_bug370098.html | 50 + dom/tests/mochitest/bugs/test_bug377539.html | 55 + dom/tests/mochitest/bugs/test_bug384122.html | 32 + dom/tests/mochitest/bugs/test_bug389366.html | 65 + dom/tests/mochitest/bugs/test_bug393974.html | 68 + dom/tests/mochitest/bugs/test_bug394769.html | 42 + dom/tests/mochitest/bugs/test_bug396843.html | 240 + dom/tests/mochitest/bugs/test_bug400204.html | 64 + dom/tests/mochitest/bugs/test_bug404748.html | 31 + dom/tests/mochitest/bugs/test_bug414291.html | 28 + dom/tests/mochitest/bugs/test_bug42976.html | 81 + dom/tests/mochitest/bugs/test_bug430276.html | 41 + dom/tests/mochitest/bugs/test_bug440572.html | 54 + dom/tests/mochitest/bugs/test_bug456151.html | 73 + dom/tests/mochitest/bugs/test_bug458091.html | 100 + dom/tests/mochitest/bugs/test_bug459848.html | 60 + dom/tests/mochitest/bugs/test_bug465263.html | 49 + dom/tests/mochitest/bugs/test_bug484775.html | 55 + dom/tests/mochitest/bugs/test_bug492925.html | 45 + dom/tests/mochitest/bugs/test_bug49312.html | 47 + dom/tests/mochitest/bugs/test_bug495219.html | 27 + dom/tests/mochitest/bugs/test_bug529328.html | 122 + dom/tests/mochitest/bugs/test_bug531176.html | 66 + dom/tests/mochitest/bugs/test_bug531542.html | 40 + dom/tests/mochitest/bugs/test_bug534149.html | 85 + dom/tests/mochitest/bugs/test_bug541530.html | 94 + dom/tests/mochitest/bugs/test_bug545314.html | 29 + dom/tests/mochitest/bugs/test_bug548828.html | 37 + dom/tests/mochitest/bugs/test_bug558973.html | 42 + dom/tests/mochitest/bugs/test_bug562433.html | 35 + dom/tests/mochitest/bugs/test_bug563487.html | 34 + dom/tests/mochitest/bugs/test_bug581072.html | 47 + dom/tests/mochitest/bugs/test_bug583225.html | 41 + dom/tests/mochitest/bugs/test_bug585240.html | 33 + dom/tests/mochitest/bugs/test_bug585819.html | 38 + dom/tests/mochitest/bugs/test_bug593174.html | 85 + dom/tests/mochitest/bugs/test_bug61098.html | 370 ++ dom/tests/mochitest/bugs/test_bug612267.html | 27 + dom/tests/mochitest/bugs/test_bug617296.html | 27 + dom/tests/mochitest/bugs/test_bug620947.html | 31 + dom/tests/mochitest/bugs/test_bug622361.html | 53 + dom/tests/mochitest/bugs/test_bug633133.html | 47 + dom/tests/mochitest/bugs/test_bug642026.html | 56 + dom/tests/mochitest/bugs/test_bug648465.html | 33 + dom/tests/mochitest/bugs/test_bug654137.html | 25 + dom/tests/mochitest/bugs/test_bug664737.html | 39 + dom/tests/mochitest/bugs/test_bug665548.html | 28 + dom/tests/mochitest/bugs/test_bug684544.html | 54 + dom/tests/mochitest/bugs/test_bug691707.html | 36 + dom/tests/mochitest/bugs/test_bug698061.html | 40 + dom/tests/mochitest/bugs/test_bug698551.html | 39 + dom/tests/mochitest/bugs/test_bug707749.html | 34 + dom/tests/mochitest/bugs/test_bug740811.html | 27 + dom/tests/mochitest/bugs/test_bug743615.html | 83 + dom/tests/mochitest/bugs/test_bug755320.html | 30 + dom/tests/mochitest/bugs/test_bug777628.html | 42 + dom/tests/mochitest/bugs/test_bug809290.html | 54 + dom/tests/mochitest/bugs/test_bug817476.html | 45 + dom/tests/mochitest/bugs/test_bug823173.html | 30 + dom/tests/mochitest/bugs/test_bug848088.html | 48 + dom/tests/mochitest/bugs/test_bug850517.html | 47 + dom/tests/mochitest/bugs/test_bug857555.html | 33 + dom/tests/mochitest/bugs/test_bug862540.html | 31 + dom/tests/mochitest/bugs/test_bug873229.html | 83 + dom/tests/mochitest/bugs/test_bug876098.html | 52 + dom/tests/mochitest/bugs/test_bug927901.html | 40 + .../bugs/test_devicemotion_multiple_listeners.html | 35 + .../mochitest/bugs/test_domparser_after_blank.html | 33 + dom/tests/mochitest/bugs/test_errorReporting.html | 72 + .../bugs/test_instanceof_error_message.html | 111 + .../mochitest/bugs/test_navigator_buildID.html | 93 + .../mochitest/bugs/test_no_find_showDialog.html | 88 + dom/tests/mochitest/bugs/test_onerror_message.html | 97 + dom/tests/mochitest/bugs/test_postmessage.html | 65 + dom/tests/mochitest/bugs/test_protochains.html | 59 + .../mochitest/bugs/test_resize_move_windows.html | 349 ++ .../mochitest/bugs/test_sizetocontent_clamp.html | 80 + dom/tests/mochitest/bugs/test_toJSON.html | 71 + dom/tests/mochitest/bugs/test_window_bar.html | 151 + dom/tests/mochitest/bugs/utils_bug260264.js | 69 + dom/tests/mochitest/bugs/utils_bug743615.js | 30 + dom/tests/mochitest/bugs/window_bug1171215.html | 86 + dom/tests/mochitest/bugs/worker_bug743615.js | 44 + dom/tests/mochitest/chrome/489127.html | 268 ++ .../mochitest/chrome/DOMWindowCreated_chrome.xhtml | 33 + .../mochitest/chrome/DOMWindowCreated_content.html | 9 + dom/tests/mochitest/chrome/child_focus_frame.html | 57 + dom/tests/mochitest/chrome/chrome.toml | 132 + .../chrome/file_DOM_element_instanceof.xhtml | 32 + .../mochitest/chrome/file_bug1224790-1_modal.xhtml | 34 + .../chrome/file_bug1224790-1_nonmodal.xhtml | 28 + .../mochitest/chrome/file_bug1224790-2_modal.xhtml | 36 + .../chrome/file_bug1224790-2_nonmodal.xhtml | 42 + dom/tests/mochitest/chrome/file_bug800817.xhtml | 79 + dom/tests/mochitest/chrome/file_bug830858.xhtml | 66 + .../chrome/file_clipboard_events_chrome.html | 1 + .../chrome/file_popup_blocker_chrome.html | 6 + .../chrome/file_resize_move_windows_1.html | 19 + .../chrome/file_resize_move_windows_2.html | 8 + .../mochitest/chrome/file_subscript_bindings.js | 1 + dom/tests/mochitest/chrome/focus_dialog.xhtml | 71 + dom/tests/mochitest/chrome/focus_frameset.html | 25 + dom/tests/mochitest/chrome/focus_window2.xhtml | 26 + dom/tests/mochitest/chrome/queryCaretRectUnix.html | 209 + dom/tests/mochitest/chrome/queryCaretRectWin.html | 218 + .../mochitest/chrome/selectAtPoint-innerframe.html | 6 + dom/tests/mochitest/chrome/selectAtPoint.html | 278 ++ .../mochitest/chrome/sizemode_attribute.xhtml | 86 + .../mochitest/chrome/test_DOMWindowCreated.xhtml | 29 + .../chrome/test_DOM_element_instanceof.xhtml | 34 + dom/tests/mochitest/chrome/test_activation.xhtml | 42 + dom/tests/mochitest/chrome/test_bug1224790-1.xhtml | 69 + dom/tests/mochitest/chrome/test_bug1224790-2.xhtml | 70 + dom/tests/mochitest/chrome/test_bug800817.xhtml | 43 + dom/tests/mochitest/chrome/test_bug830858.xhtml | 36 + .../mochitest/chrome/test_callback_wrapping.xhtml | 22 + .../chrome/test_clipboard_events_chrome.html | 60 + dom/tests/mochitest/chrome/test_clonewrapper.xhtml | 117 + .../mochitest/chrome/test_cyclecollector.xhtml | 54 + .../mochitest/chrome/test_docshell_swap.xhtml | 71 + .../mochitest/chrome/test_elements_proto.xhtml | 29 + dom/tests/mochitest/chrome/test_focus.xhtml | 32 + dom/tests/mochitest/chrome/test_focus_dialog.xhtml | 33 + dom/tests/mochitest/chrome/test_focus_docnav.xhtml | 27 + .../chrome/test_focused_link_scroll.xhtml | 46 + dom/tests/mochitest/chrome/test_geolocation.xhtml | 54 + .../mochitest/chrome/test_getTransformTo.html | 117 + dom/tests/mochitest/chrome/test_indexedSetter.html | 38 + .../chrome/test_intlUtils_getDisplayNames.html | 351 ++ .../chrome/test_intlUtils_isAppLocaleRTL.html | 37 + .../mochitest/chrome/test_moving_nodeList.xhtml | 44 + dom/tests/mochitest/chrome/test_moving_xhr.xhtml | 40 + .../mochitest/chrome/test_nodesFromPoint.html | 119 + dom/tests/mochitest/chrome/test_nodesFromRect.html | 21 + dom/tests/mochitest/chrome/test_parsingMode.html | 68 + .../chrome/test_popup_blocker_chrome.xhtml | 66 + .../mochitest/chrome/test_queryCaretRect.html | 22 + .../chrome/test_resize_move_windows.xhtml | 250 ++ .../mochitest/chrome/test_sandbox_bindings.xhtml | 317 ++ .../chrome/test_sandbox_eventhandler.xhtml | 37 + .../mochitest/chrome/test_sandbox_image.xhtml | 37 + .../mochitest/chrome/test_sandbox_postMessage.html | 36 + dom/tests/mochitest/chrome/test_selectAtPoint.html | 21 + .../mochitest/chrome/test_sizemode_attribute.xhtml | 26 + .../mochitest/chrome/test_subscript_bindings.xhtml | 44 + .../test_window_getRegionalPrefsLocales.html | 28 + .../chrome/test_xray_event_constructor.xhtml | 35 + dom/tests/mochitest/chrome/window_activation.xhtml | 37 + .../chrome/window_callback_wrapping.xhtml | 21 + .../mochitest/chrome/window_docshell_swap.xhtml | 8 + dom/tests/mochitest/chrome/window_focus.xhtml | 1702 +++++++ .../mochitest/chrome/window_focus_docnav.xhtml | 124 + .../mochitest/chrome/window_focus_inner.xhtml | 12 + dom/tests/mochitest/crypto/mochitest.toml | 3 + .../mochitest/crypto/test_getRandomValues.html | 211 + .../mochitest/dom-level0/child_ip_address.html | 39 + .../dom-level0/file_crossdomainprops_inner.html | 11 + dom/tests/mochitest/dom-level0/file_location.html | 10 + .../file_separate_post_message_queue.html | 39 + .../file_test_background_loading_iframes.html | 19 + .../mochitest/dom-level0/framed_location.html | 11 + dom/tests/mochitest/dom-level0/idn_child.html | 97 + .../dom-level0/iframe1_location_setters.html | 1 + .../dom-level0/iframe2_location_setters.html | 1 + .../dom-level0/iframe3_location_setters.html | 1 + dom/tests/mochitest/dom-level0/mochitest.toml | 69 + .../test_background_loading_iframes.html | 69 + .../dom-level0/test_crossdomainprops.html | 36 + dom/tests/mochitest/dom-level0/test_location.html | 73 + .../mochitest/dom-level0/test_location_framed.html | 31 + .../dom-level0/test_location_getters.html | 29 + .../dom-level0/test_location_sandboxed.html | 33 + .../dom-level0/test_location_setters.html | 79 + .../test_separate_post_message_queue.html | 31 + .../test_setting_document.domain_idn.html | 153 + ...etting_document.domain_to_shortened_ipaddr.html | 43 + dom/tests/mochitest/dom-level1-core/DOMTestCase.js | 699 +++ .../mochitest/dom-level1-core/activity-home.css | 127 + dom/tests/mochitest/dom-level1-core/exclusions.js | 97 + .../dom-level1-core/files/hc_nodtdstaff.html | 10 + .../dom-level1-core/files/hc_nodtdstaff.svg | 10 + .../dom-level1-core/files/hc_nodtdstaff.xhtml | 10 + .../dom-level1-core/files/hc_nodtdstaff.xml | 10 + .../mochitest/dom-level1-core/files/hc_staff.html | 48 + .../mochitest/dom-level1-core/files/hc_staff.svg | 72 + .../mochitest/dom-level1-core/files/hc_staff.xhtml | 60 + .../mochitest/dom-level1-core/files/hc_staff.xml | 60 + .../mochitest/dom-level1-core/files/staff.dtd | 17 + .../mochitest/dom-level1-core/files/staff.svg | 72 + .../mochitest/dom-level1-core/files/staff.xml | 57 + .../mochitest/dom-level1-core/files/svgtest.js | 0 .../mochitest/dom-level1-core/files/svgunit.js | 0 .../mochitest/dom-level1-core/files/xhtml-lat1.ent | 196 + .../dom-level1-core/files/xhtml-special.ent | 80 + .../dom-level1-core/files/xhtml-symbol.ent | 237 + .../dom-level1-core/files/xhtml1-frameset.dtd | 1235 ++++++ .../dom-level1-core/files/xhtml1-strict.dtd | 65 + .../dom-level1-core/files/xhtml1-transitional.dtd | 1201 +++++ dom/tests/mochitest/dom-level1-core/mochitest.toml | 1079 +++++ .../test_PIsetdatanomodificationallowederrEE.html | 154 + .../test_attrcreatedocumentfragment.html | 140 + .../dom-level1-core/test_attrcreatetextnode.html | 142 + .../dom-level1-core/test_attrcreatetextnode2.html | 141 + .../dom-level1-core/test_attrdefaultvalue.html | 141 + .../dom-level1-core/test_attreffectivevalue.html | 133 + .../test_attrentityreplacement.html | 138 + .../mochitest/dom-level1-core/test_attrname.html | 137 + .../dom-level1-core/test_attrnextsiblingnull.html | 133 + .../test_attrnotspecifiedvalue.html | 138 + .../dom-level1-core/test_attrparentnodenull.html | 133 + .../test_attrprevioussiblingnull.html | 133 + .../dom-level1-core/test_attrremovechild1.html | 142 + .../dom-level1-core/test_attrreplacechild1.html | 144 + .../test_attrsetvaluenomodificationallowederr.html | 175 + ...est_attrsetvaluenomodificationallowederrEE.html | 170 + .../dom-level1-core/test_attrspecifiedvalue.html | 136 + .../test_attrspecifiedvaluechanged.html | 138 + .../test_attrspecifiedvalueremove.html | 144 + .../dom-level1-core/test_cdatasectiongetdata.html | 137 + .../test_cdatasectionnormalize.html | 141 + .../test_characterdataappenddata.html | 139 + .../test_characterdataappenddatagetdata.html | 138 + ...cterdataappenddatanomodificationallowederr.html | 162 + ...erdataappenddatanomodificationallowederrEE.html | 143 + .../test_characterdatadeletedatabegining.html | 137 + .../test_characterdatadeletedataend.html | 138 + .../test_characterdatadeletedataexceedslength.html | 140 + ...st_characterdatadeletedatagetlengthanddata.html | 147 + .../test_characterdatadeletedatamiddle.html | 138 + ...cterdatadeletedatanomodificationallowederr.html | 162 + ...erdatadeletedatanomodificationallowederrEE.html | 143 + .../dom-level1-core/test_characterdatagetdata.html | 139 + .../test_characterdatagetlength.html | 134 + ...terdataindexsizeerrdeletedatacountnegative.html | 144 + ...terdataindexsizeerrdeletedataoffsetgreater.html | 146 + ...erdataindexsizeerrdeletedataoffsetnegative.html | 145 + ...terdataindexsizeerrinsertdataoffsetgreater.html | 145 + ...erdataindexsizeerrinsertdataoffsetnegative.html | 144 + ...erdataindexsizeerrreplacedatacountnegative.html | 145 + ...erdataindexsizeerrreplacedataoffsetgreater.html | 146 + ...rdataindexsizeerrreplacedataoffsetnegative.html | 146 + ...cterdataindexsizeerrsubstringcountnegative.html | 145 + ...terdataindexsizeerrsubstringnegativeoffset.html | 145 + ...cterdataindexsizeerrsubstringoffsetgreater.html | 146 + .../test_characterdatainsertdatabeginning.html | 137 + .../test_characterdatainsertdataend.html | 138 + .../test_characterdatainsertdatamiddle.html | 138 + ...cterdatainsertdatanomodificationallowederr.html | 162 + ...erdatainsertdatanomodificationallowederrEE.html | 141 + .../test_characterdatareplacedatabegining.html | 137 + .../test_characterdatareplacedataend.html | 138 + ...characterdatareplacedataexceedslengthofarg.html | 139 + ...haracterdatareplacedataexceedslengthofdata.html | 137 + .../test_characterdatareplacedatamiddle.html | 138 + ...terdatareplacedatanomodificationallowederr.html | 163 + ...rdatareplacedatanomodificationallowederrEE.html | 143 + ...aracterdatasetdatanomodificationallowederr.html | 163 + ...acterdatasetdatanomodificationallowederrEE.html | 142 + .../test_characterdatasetnodevalue.html | 136 + .../test_characterdatasubstringexceedsvalue.html | 135 + .../test_characterdatasubstringvalue.html | 134 + .../dom-level1-core/test_commentgetcomment.html | 150 + .../test_documentcreateattribute.html | 137 + .../test_documentcreatecdatasection.html | 136 + .../test_documentcreatecomment.html | 135 + .../test_documentcreatedocumentfragment.html | 141 + .../test_documentcreateelement.html | 136 + .../test_documentcreateelementcasesensitive.html | 135 + .../test_documentcreateelementdefaultattr.html | 144 + .../test_documentcreateentityreference.html | 140 + .../test_documentcreateentityreferenceknown.html | 144 + .../test_documentcreateprocessinginstruction.html | 143 + .../test_documentcreatetextnode.html | 135 + .../dom-level1-core/test_documentgetdoctype.html | 148 + .../test_documentgetdoctypenodtd.html | 126 + .../test_documentgetelementsbytagnamelength.html | 125 + ...st_documentgetelementsbytagnametotallength.html | 133 + .../test_documentgetelementsbytagnamevalue.html | 135 + .../test_documentgetimplementation.html | 126 + .../dom-level1-core/test_documentgetrootnode.html | 141 + ...ntinvalidcharacterexceptioncreateattribute.html | 139 + ...mentinvalidcharacterexceptioncreateelement.html | 139 + ...umentinvalidcharacterexceptioncreateentref.html | 159 + ...mentinvalidcharacterexceptioncreateentref1.html | 156 + ..._documentinvalidcharacterexceptioncreatepi.html | 159 + ...documentinvalidcharacterexceptioncreatepi1.html | 156 + .../test_documenttypegetdoctype.html | 142 + .../test_documenttypegetentities.html | 171 + .../test_documenttypegetentitieslength.html | 142 + .../test_documenttypegetentitiestype.html | 139 + .../test_documenttypegetnotations.html | 146 + .../test_documenttypegetnotationstype.html | 138 + .../test_domimplementationfeaturenoversion.html | 122 + .../test_domimplementationfeaturenull.html | 125 + .../test_domimplementationfeaturexml.html | 121 + .../test_elementaddnewattribute.html | 131 + .../test_elementassociatedattribute.html | 136 + .../test_elementchangeattributevalue.html | 134 + .../test_elementcreatenewattribute.html | 138 + .../test_elementgetattributenode.html | 132 + .../test_elementgetattributenodenull.html | 130 + .../test_elementgetelementempty.html | 137 + .../test_elementgetelementsbytagname.html | 127 + ..._elementgetelementsbytagnameaccessnodelist.html | 145 + .../test_elementgetelementsbytagnamenomatch.html | 125 + ...st_elementgetelementsbytagnamespecialvalue.html | 149 + .../dom-level1-core/test_elementgettagname.html | 147 + .../test_elementinuseattributeerr.html | 153 + .../test_elementinvalidcharacterexception.html | 148 + .../dom-level1-core/test_elementnormalize.html | 138 + .../dom-level1-core/test_elementnotfounderr.html | 145 + .../test_elementremoveattribute.html | 135 + .../test_elementremoveattributeaftercreate.html | 138 + .../test_elementremoveattributenode.html | 133 + ...emoveattributenodenomodificationallowederr.html | 170 + ...oveattributenodenomodificationallowederrEE.html | 158 + ...entremoveattributenomodificationallowederr.html | 164 + ...tremoveattributenomodificationallowederrEE.html | 149 + ..._elementremoveattributerestoredefaultvalue.html | 135 + .../test_elementreplaceattributewithself.html | 130 + .../test_elementreplaceexistingattribute.html | 137 + ...est_elementreplaceexistingattributegevalue.html | 137 + .../test_elementretrieveallattributes.html | 134 + .../test_elementretrieveattrvalue.html | 128 + .../test_elementretrievetagname.html | 133 + ...ntsetattributenodenomodificationallowederr.html | 163 + ...setattributenodenomodificationallowederrEE.html | 154 + .../test_elementsetattributenodenull.html | 134 + ...lementsetattributenomodificationallowederr.html | 150 + ...mentsetattributenomodificationallowederrEE.html | 149 + .../test_elementwrongdocumenterr.html | 174 + .../dom-level1-core/test_entitygetentityname.html | 136 + .../dom-level1-core/test_entitygetpublicid.html | 146 + .../test_entitygetpublicidnull.html | 137 + .../dom-level1-core/test_hc_attrappendchild1.html | 148 + .../dom-level1-core/test_hc_attrappendchild2.html | 143 + .../dom-level1-core/test_hc_attrappendchild3.html | 154 + .../dom-level1-core/test_hc_attrappendchild4.html | 168 + .../dom-level1-core/test_hc_attrappendchild5.html | 159 + .../dom-level1-core/test_hc_attrappendchild6.html | 143 + .../dom-level1-core/test_hc_attrchildnodes1.html | 140 + .../dom-level1-core/test_hc_attrchildnodes2.html | 146 + .../dom-level1-core/test_hc_attrclonenode1.html | 148 + .../test_hc_attrcreatedocumentfragment.html | 154 + .../test_hc_attrcreatetextnode.html | 143 + .../test_hc_attrcreatetextnode2.html | 143 + .../test_hc_attreffectivevalue.html | 134 + .../dom-level1-core/test_hc_attrfirstchild.html | 143 + .../dom-level1-core/test_hc_attrgetvalue1.html | 133 + .../dom-level1-core/test_hc_attrgetvalue2.html | 162 + .../dom-level1-core/test_hc_attrhaschildnodes.html | 130 + .../dom-level1-core/test_hc_attrinsertbefore1.html | 156 + .../dom-level1-core/test_hc_attrinsertbefore2.html | 157 + .../dom-level1-core/test_hc_attrinsertbefore3.html | 162 + .../dom-level1-core/test_hc_attrinsertbefore4.html | 163 + .../dom-level1-core/test_hc_attrinsertbefore5.html | 169 + .../dom-level1-core/test_hc_attrinsertbefore6.html | 160 + .../dom-level1-core/test_hc_attrinsertbefore7.html | 176 + .../dom-level1-core/test_hc_attrlastchild.html | 143 + .../dom-level1-core/test_hc_attrname.html | 139 + .../test_hc_attrnextsiblingnull.html | 134 + .../dom-level1-core/test_hc_attrnormalize.html | 149 + .../test_hc_attrparentnodenull.html | 134 + .../test_hc_attrprevioussiblingnull.html | 134 + .../dom-level1-core/test_hc_attrremovechild1.html | 147 + .../dom-level1-core/test_hc_attrremovechild2.html | 141 + .../dom-level1-core/test_hc_attrreplacechild1.html | 151 + .../dom-level1-core/test_hc_attrreplacechild2.html | 157 + .../dom-level1-core/test_hc_attrsetvalue1.html | 151 + .../dom-level1-core/test_hc_attrsetvalue2.html | 154 + .../test_hc_attrspecifiedvalue.html | 137 + .../test_hc_attrspecifiedvaluechanged.html | 139 + .../test_hc_characterdataappenddata.html | 140 + .../test_hc_characterdataappenddatagetdata.html | 139 + .../test_hc_characterdatadeletedatabegining.html | 138 + .../test_hc_characterdatadeletedataend.html | 139 + ...st_hc_characterdatadeletedataexceedslength.html | 141 + ...hc_characterdatadeletedatagetlengthanddata.html | 148 + .../test_hc_characterdatadeletedatamiddle.html | 139 + .../test_hc_characterdatagetdata.html | 140 + .../test_hc_characterdatagetlength.html | 135 + ...terdataindexsizeerrdeletedatacountnegative.html | 146 + ...terdataindexsizeerrdeletedataoffsetgreater.html | 147 + ...erdataindexsizeerrdeletedataoffsetnegative.html | 146 + ...terdataindexsizeerrinsertdataoffsetgreater.html | 146 + ...erdataindexsizeerrinsertdataoffsetnegative.html | 145 + ...erdataindexsizeerrreplacedatacountnegative.html | 147 + ...erdataindexsizeerrreplacedataoffsetgreater.html | 147 + ...rdataindexsizeerrreplacedataoffsetnegative.html | 147 + ...cterdataindexsizeerrsubstringcountnegative.html | 146 + ...terdataindexsizeerrsubstringnegativeoffset.html | 146 + ...cterdataindexsizeerrsubstringoffsetgreater.html | 147 + .../test_hc_characterdatainsertdatabeginning.html | 138 + .../test_hc_characterdatainsertdataend.html | 139 + .../test_hc_characterdatainsertdatamiddle.html | 139 + .../test_hc_characterdatareplacedatabegining.html | 138 + .../test_hc_characterdatareplacedataend.html | 139 + ...characterdatareplacedataexceedslengthofarg.html | 140 + ...haracterdatareplacedataexceedslengthofdata.html | 138 + .../test_hc_characterdatareplacedatamiddle.html | 139 + .../test_hc_characterdatasetnodevalue.html | 138 + ...test_hc_characterdatasubstringexceedsvalue.html | 136 + .../test_hc_characterdatasubstringvalue.html | 135 + .../dom-level1-core/test_hc_commentgetcomment.html | 160 + .../test_hc_documentcreateattribute.html | 138 + .../test_hc_documentcreatecomment.html | 136 + .../test_hc_documentcreatedocumentfragment.html | 142 + .../test_hc_documentcreateelement.html | 137 + ...test_hc_documentcreateelementcasesensitive.html | 148 + .../test_hc_documentcreatetextnode.html | 136 + .../test_hc_documentgetdoctype.html | 166 + ...test_hc_documentgetelementsbytagnamelength.html | 126 + ...hc_documentgetelementsbytagnametotallength.html | 237 + .../test_hc_documentgetelementsbytagnamevalue.html | 136 + .../test_hc_documentgetimplementation.html | 142 + .../test_hc_documentgetrootnode.html | 139 + ...ntinvalidcharacterexceptioncreateattribute.html | 140 + ...tinvalidcharacterexceptioncreateattribute1.html | 133 + ...mentinvalidcharacterexceptioncreateelement.html | 140 + ...entinvalidcharacterexceptioncreateelement1.html | 133 + .../test_hc_domimplementationfeaturenoversion.html | 142 + .../test_hc_domimplementationfeaturenull.html | 145 + .../test_hc_domimplementationfeaturexml.html | 141 + .../test_hc_elementaddnewattribute.html | 133 + .../test_hc_elementassociatedattribute.html | 135 + .../test_hc_elementchangeattributevalue.html | 135 + .../test_hc_elementcreatenewattribute.html | 140 + .../test_hc_elementgetattributenode.html | 130 + .../test_hc_elementgetattributenodenull.html | 131 + .../test_hc_elementgetelementempty.html | 139 + .../test_hc_elementgetelementsbytagname.html | 128 + ..._elementgetelementsbytagnameaccessnodelist.html | 160 + ...test_hc_elementgetelementsbytagnamenomatch.html | 126 + ...hc_elementgetelementsbytagnamespecialvalue.html | 150 + .../dom-level1-core/test_hc_elementgettagname.html | 139 + .../test_hc_elementinuseattributeerr.html | 147 + .../test_hc_elementinvalidcharacterexception.html | 141 + .../test_hc_elementinvalidcharacterexception1.html | 135 + .../dom-level1-core/test_hc_elementnormalize.html | 142 + .../dom-level1-core/test_hc_elementnormalize2.html | 145 + .../test_hc_elementnotfounderr.html | 146 + .../test_hc_elementremoveattribute.html | 129 + .../test_hc_elementremoveattributeaftercreate.html | 140 + .../test_hc_elementremoveattributenode.html | 135 + .../test_hc_elementreplaceattributewithself.html | 133 + .../test_hc_elementreplaceexistingattribute.html | 138 + ..._hc_elementreplaceexistingattributegevalue.html | 139 + .../test_hc_elementretrieveallattributes.html | 160 + .../test_hc_elementretrieveattrvalue.html | 129 + .../test_hc_elementretrievetagname.html | 134 + .../test_hc_elementsetattributenodenull.html | 136 + .../test_hc_elementwrongdocumenterr.html | 165 + .../test_hc_entitiesremovenameditem1.html | 153 + .../test_hc_entitiessetnameditem1.html | 164 + .../test_hc_namednodemapchildnoderange.html | 157 + .../test_hc_namednodemapgetnameditem.html | 137 + .../test_hc_namednodemapinuseattributeerr.html | 155 + .../test_hc_namednodemapnotfounderr.html | 147 + .../test_hc_namednodemapnumberofnodes.html | 143 + .../test_hc_namednodemapremovenameditem.html | 140 + .../test_hc_namednodemapreturnattrnode.html | 142 + .../test_hc_namednodemapreturnfirstitem.html | 166 + .../test_hc_namednodemapreturnlastitem.html | 168 + .../test_hc_namednodemapreturnnull.html | 137 + .../test_hc_namednodemapsetnameditem.html | 147 + ...est_hc_namednodemapsetnameditemreturnvalue.html | 148 + ...test_hc_namednodemapsetnameditemthatexists.html | 150 + ...st_hc_namednodemapsetnameditemwithnewvalue.html | 142 + .../test_hc_namednodemapwrongdocumenterr.html | 167 + .../dom-level1-core/test_hc_nodeappendchild.html | 139 + .../test_hc_nodeappendchildchildexists.html | 176 + .../test_hc_nodeappendchilddocfragment.html | 174 + .../test_hc_nodeappendchildgetnodename.html | 139 + .../test_hc_nodeappendchildinvalidnodetype.html | 146 + ...est_hc_nodeappendchildnewchilddiffdocument.html | 162 + .../test_hc_nodeappendchildnodeancestor.html | 148 + .../test_hc_nodeattributenodeattribute.html | 136 + .../test_hc_nodeattributenodename.html | 131 + .../test_hc_nodeattributenodetype.html | 139 + .../test_hc_nodeattributenodevalue.html | 134 + .../dom-level1-core/test_hc_nodechildnodes.html | 165 + .../test_hc_nodechildnodesappendchild.html | 175 + .../test_hc_nodechildnodesempty.html | 139 + .../test_hc_nodecloneattributescopied.html | 165 + .../test_hc_nodeclonefalsenocopytext.html | 138 + .../test_hc_nodeclonegetparentnull.html | 133 + .../test_hc_nodeclonenodefalse.html | 142 + .../dom-level1-core/test_hc_nodeclonenodetrue.html | 161 + .../test_hc_nodeclonetruecopytext.html | 137 + .../test_hc_nodecommentnodeattributes.html | 151 + .../test_hc_nodecommentnodename.html | 150 + .../test_hc_nodecommentnodetype.html | 149 + .../test_hc_nodecommentnodevalue.html | 149 + .../test_hc_nodedocumentfragmentnodename.html | 130 + .../test_hc_nodedocumentfragmentnodetype.html | 130 + .../test_hc_nodedocumentfragmentnodevalue.html | 136 + .../test_hc_nodedocumentnodeattribute.html | 127 + .../test_hc_nodedocumentnodename.html | 127 + .../test_hc_nodedocumentnodetype.html | 126 + .../test_hc_nodedocumentnodevalue.html | 128 + .../test_hc_nodeelementnodeattributes.html | 161 + .../test_hc_nodeelementnodename.html | 141 + .../test_hc_nodeelementnodetype.html | 128 + .../test_hc_nodeelementnodevalue.html | 125 + .../dom-level1-core/test_hc_nodegetfirstchild.html | 146 + .../test_hc_nodegetfirstchildnull.html | 133 + .../dom-level1-core/test_hc_nodegetlastchild.html | 133 + .../test_hc_nodegetlastchildnull.html | 134 + .../test_hc_nodegetnextsibling.html | 133 + .../test_hc_nodegetnextsiblingnull.html | 140 + .../test_hc_nodegetownerdocument.html | 145 + .../test_hc_nodegetownerdocumentnull.html | 131 + .../test_hc_nodegetprevioussibling.html | 133 + .../test_hc_nodegetprevioussiblingnull.html | 140 + .../dom-level1-core/test_hc_nodehaschildnodes.html | 129 + .../test_hc_nodehaschildnodesfalse.html | 133 + .../dom-level1-core/test_hc_nodeinsertbefore.html | 169 + .../test_hc_nodeinsertbeforedocfragment.html | 157 + .../test_hc_nodeinsertbeforeinvalidnodetype.html | 152 + ...st_hc_nodeinsertbeforenewchilddiffdocument.html | 165 + .../test_hc_nodeinsertbeforenewchildexists.html | 167 + .../test_hc_nodeinsertbeforenodeancestor.html | 151 + .../test_hc_nodeinsertbeforenodename.html | 142 + ...est_hc_nodeinsertbeforerefchildnonexistent.html | 149 + .../test_hc_nodeinsertbeforerefchildnull.html | 147 + .../test_hc_nodelistindexequalzero.html | 151 + .../test_hc_nodelistindexgetlength.html | 145 + .../test_hc_nodelistindexgetlengthofemptylist.html | 138 + .../test_hc_nodelistindexnotzero.html | 149 + .../test_hc_nodelistreturnfirstitem.html | 145 + .../test_hc_nodelistreturnlastitem.html | 149 + .../test_hc_nodelisttraverselist.html | 165 + .../dom-level1-core/test_hc_nodeparentnode.html | 133 + .../test_hc_nodeparentnodenull.html | 130 + .../dom-level1-core/test_hc_noderemovechild.html | 139 + .../test_hc_noderemovechildgetnodename.html | 144 + .../test_hc_noderemovechildnode.html | 176 + ...test_hc_noderemovechildoldchildnonexistent.html | 145 + .../dom-level1-core/test_hc_nodereplacechild.html | 143 + .../test_hc_nodereplacechildinvalidnodetype.html | 152 + ...st_hc_nodereplacechildnewchilddiffdocument.html | 165 + .../test_hc_nodereplacechildnewchildexists.html | 171 + .../test_hc_nodereplacechildnodeancestor.html | 151 + .../test_hc_nodereplacechildnodename.html | 142 + ...est_hc_nodereplacechildoldchildnonexistent.html | 147 + .../test_hc_nodetextnodeattribute.html | 134 + .../dom-level1-core/test_hc_nodetextnodename.html | 129 + .../dom-level1-core/test_hc_nodetextnodetype.html | 140 + .../dom-level1-core/test_hc_nodetextnodevalue.html | 134 + .../dom-level1-core/test_hc_nodevalue01.html | 130 + .../dom-level1-core/test_hc_nodevalue02.html | 130 + .../dom-level1-core/test_hc_nodevalue03.html | 154 + .../dom-level1-core/test_hc_nodevalue04.html | 148 + .../dom-level1-core/test_hc_nodevalue05.html | 130 + .../dom-level1-core/test_hc_nodevalue06.html | 128 + .../dom-level1-core/test_hc_nodevalue07.html | 154 + .../dom-level1-core/test_hc_nodevalue08.html | 154 + .../test_hc_notationsremovenameditem1.html | 153 + .../test_hc_notationssetnameditem1.html | 164 + .../test_hc_textindexsizeerrnegativeoffset.html | 146 + .../test_hc_textindexsizeerroffsetoutofbounds.html | 147 + .../test_hc_textparseintolistofelements.html | 185 + .../dom-level1-core/test_hc_textsplittextfour.html | 138 + .../dom-level1-core/test_hc_textsplittextone.html | 142 + .../test_hc_textsplittextthree.html | 140 + .../dom-level1-core/test_hc_textsplittexttwo.html | 139 + .../dom-level1-core/test_hc_textwithnomarkup.html | 138 + .../test_namednodemapchildnoderange.html | 137 + .../test_namednodemapgetnameditem.html | 137 + .../test_namednodemapinuseattributeerr.html | 154 + .../test_namednodemapnotfounderr.html | 145 + .../test_namednodemapnumberofnodes.html | 134 + .../test_namednodemapremovenameditem.html | 144 + .../test_namednodemapremovenameditemgetvalue.html | 146 + ...namednodemapremovenameditemreturnnodevalue.html | 138 + .../test_namednodemapreturnattrnode.html | 143 + .../test_namednodemapreturnfirstitem.html | 140 + .../test_namednodemapreturnlastitem.html | 140 + .../test_namednodemapreturnnull.html | 134 + .../test_namednodemapsetnameditem.html | 147 + .../test_namednodemapsetnameditemreturnvalue.html | 146 + .../test_namednodemapsetnameditemthatexists.html | 149 + .../test_namednodemapsetnameditemwithnewvalue.html | 140 + .../test_namednodemapwrongdocumenterr.html | 163 + .../dom-level1-core/test_nodeappendchild.html | 141 + .../test_nodeappendchildchildexists.html | 161 + .../test_nodeappendchilddocfragment.html | 168 + .../test_nodeappendchildgetnodename.html | 137 + .../test_nodeappendchildinvalidnodetype.html | 145 + .../test_nodeappendchildnewchilddiffdocument.html | 159 + .../test_nodeappendchildnodeancestor.html | 146 + ...st_nodeappendchildnomodificationallowederr.html | 163 + ..._nodeappendchildnomodificationallowederrEE.html | 141 + .../test_nodeattributenodeattribute.html | 135 + .../test_nodeattributenodename.html | 140 + .../test_nodeattributenodetype.html | 138 + .../test_nodeattributenodevalue.html | 140 + .../test_nodecdatasectionnodeattribute.html | 144 + .../test_nodecdatasectionnodename.html | 144 + .../test_nodecdatasectionnodetype.html | 143 + .../test_nodecdatasectionnodevalue.html | 147 + .../dom-level1-core/test_nodechildnodes.html | 152 + .../test_nodechildnodesappendchild.html | 136 + .../dom-level1-core/test_nodechildnodesempty.html | 139 + .../test_nodecloneattributescopied.html | 148 + .../test_nodeclonefalsenocopytext.html | 137 + .../test_nodeclonegetparentnull.html | 132 + .../dom-level1-core/test_nodeclonenodefalse.html | 141 + .../dom-level1-core/test_nodeclonenodetrue.html | 185 + .../test_nodeclonetruecopytext.html | 133 + .../test_nodecommentnodeattributes.html | 149 + .../dom-level1-core/test_nodecommentnodename.html | 143 + .../dom-level1-core/test_nodecommentnodetype.html | 143 + .../dom-level1-core/test_nodecommentnodevalue.html | 143 + .../test_nodedocumentfragmentnodename.html | 129 + .../test_nodedocumentfragmentnodetype.html | 129 + .../test_nodedocumentfragmentnodevalue.html | 135 + .../test_nodedocumentnodeattribute.html | 122 + .../dom-level1-core/test_nodedocumentnodename.html | 126 + .../dom-level1-core/test_nodedocumentnodetype.html | 125 + .../test_nodedocumentnodevalue.html | 127 + .../test_nodedocumenttypenodename.html | 139 + .../test_nodedocumenttypenodetype.html | 125 + .../test_nodedocumenttypenodevalue.html | 124 + .../test_nodeelementnodeattributes.html | 146 + .../dom-level1-core/test_nodeelementnodename.html | 151 + .../dom-level1-core/test_nodeelementnodetype.html | 127 + .../dom-level1-core/test_nodeelementnodevalue.html | 124 + .../test_nodeentitynodeattributes.html | 132 + .../dom-level1-core/test_nodeentitynodename.html | 131 + .../dom-level1-core/test_nodeentitynodetype.html | 132 + .../dom-level1-core/test_nodeentitynodevalue.html | 132 + .../test_nodeentityreferencenodeattributes.html | 139 + .../test_nodeentityreferencenodename.html | 144 + .../test_nodeentityreferencenodetype.html | 142 + .../test_nodeentityreferencenodevalue.html | 144 + .../test_nodeentitysetnodevalue.html | 134 + .../dom-level1-core/test_nodegetfirstchild.html | 138 + .../test_nodegetfirstchildnull.html | 144 + .../dom-level1-core/test_nodegetlastchild.html | 138 + .../dom-level1-core/test_nodegetlastchildnull.html | 144 + .../dom-level1-core/test_nodegetnextsibling.html | 138 + .../test_nodegetnextsiblingnull.html | 139 + .../dom-level1-core/test_nodegetownerdocument.html | 150 + .../test_nodegetownerdocumentnull.html | 121 + .../test_nodegetprevioussibling.html | 138 + .../test_nodegetprevioussiblingnull.html | 139 + .../dom-level1-core/test_nodehaschildnodes.html | 128 + .../test_nodehaschildnodesfalse.html | 137 + .../dom-level1-core/test_nodeinsertbefore.html | 189 + .../test_nodeinsertbeforedocfragment.html | 155 + .../test_nodeinsertbeforeinvalidnodetype.html | 149 + .../test_nodeinsertbeforenewchilddiffdocument.html | 161 + .../test_nodeinsertbeforenewchildexists.html | 191 + .../test_nodeinsertbeforenodeancestor.html | 151 + .../test_nodeinsertbeforenodename.html | 140 + ...t_nodeinsertbeforenomodificationallowederr.html | 165 + ...nodeinsertbeforenomodificationallowederrEE.html | 143 + .../test_nodeinsertbeforerefchildnonexistent.html | 147 + .../test_nodeinsertbeforerefchildnull.html | 145 + .../test_nodelistindexequalzero.html | 141 + .../test_nodelistindexgetlength.html | 132 + .../test_nodelistindexgetlengthofemptylist.html | 138 + .../dom-level1-core/test_nodelistindexnotzero.html | 148 + .../test_nodelistreturnfirstitem.html | 144 + .../test_nodelistreturnlastitem.html | 147 + .../dom-level1-core/test_nodelisttraverselist.html | 177 + .../test_nodenotationnodeattributes.html | 136 + .../dom-level1-core/test_nodenotationnodename.html | 137 + .../dom-level1-core/test_nodenotationnodetype.html | 136 + .../test_nodenotationnodevalue.html | 137 + .../dom-level1-core/test_nodeparentnode.html | 146 + .../dom-level1-core/test_nodeparentnodenull.html | 128 + ...st_nodeprocessinginstructionnodeattributes.html | 135 + .../test_nodeprocessinginstructionnodename.html | 137 + .../test_nodeprocessinginstructionnodetype.html | 137 + .../test_nodeprocessinginstructionnodevalue.html | 131 + ...test_nodeprocessinginstructionsetnodevalue.html | 133 + .../dom-level1-core/test_noderemovechild.html | 137 + .../test_noderemovechildgetnodename.html | 149 + .../dom-level1-core/test_noderemovechildnode.html | 156 + ...st_noderemovechildnomodificationallowederr.html | 161 + ..._noderemovechildnomodificationallowederrEE.html | 143 + .../test_noderemovechildoldchildnonexistent.html | 144 + .../dom-level1-core/test_nodereplacechild.html | 141 + .../test_nodereplacechildinvalidnodetype.html | 149 + .../test_nodereplacechildnewchilddiffdocument.html | 161 + .../test_nodereplacechildnewchildexists.html | 188 + .../test_nodereplacechildnodeancestor.html | 151 + .../test_nodereplacechildnodename.html | 152 + ...t_nodereplacechildnomodificationallowederr.html | 162 + ...nodereplacechildnomodificationallowederrEE.html | 144 + .../test_nodereplacechildoldchildnonexistent.html | 146 + ...t_nodesetnodevaluenomodificationallowederr.html | 166 + ...nodesetnodevaluenomodificationallowederrEE.html | 139 + .../test_nodetextnodeattribute.html | 133 + .../dom-level1-core/test_nodetextnodename.html | 141 + .../dom-level1-core/test_nodetextnodetype.html | 139 + .../dom-level1-core/test_nodetextnodevalue.html | 133 + .../dom-level1-core/test_nodevalue01.html | 128 + .../dom-level1-core/test_nodevalue02.html | 128 + .../dom-level1-core/test_nodevalue03.html | 129 + .../dom-level1-core/test_nodevalue04.html | 130 + .../dom-level1-core/test_nodevalue05.html | 128 + .../dom-level1-core/test_nodevalue06.html | 126 + .../dom-level1-core/test_nodevalue07.html | 137 + .../dom-level1-core/test_nodevalue08.html | 137 + .../dom-level1-core/test_nodevalue09.html | 128 + .../test_notationgetnotationname.html | 133 + .../dom-level1-core/test_notationgetpublicid.html | 132 + .../test_notationgetpublicidnull.html | 137 + .../dom-level1-core/test_notationgetsystemid.html | 137 + .../test_notationgetsystemidnull.html | 133 + .../test_processinginstructiongetdata.html | 134 + .../test_processinginstructiongettarget.html | 133 + ...instructionsetdatanomodificationallowederr.html | 151 + .../test_textindexsizeerrnegativeoffset.html | 145 + .../test_textindexsizeerroffsetoutofbounds.html | 146 + .../test_textparseintolistofelements.html | 184 + .../dom-level1-core/test_textsplittextfour.html | 137 + ...test_textsplittextnomodificationallowederr.html | 165 + ...st_textsplittextnomodificationallowederrEE.html | 139 + .../dom-level1-core/test_textsplittextone.html | 141 + .../dom-level1-core/test_textsplittextthree.html | 139 + .../dom-level1-core/test_textsplittexttwo.html | 138 + .../dom-level1-core/test_textwithnomarkup.html | 137 + dom/tests/mochitest/dom-level2-core/DOMTestCase.js | 710 +++ dom/tests/mochitest/dom-level2-core/exclusions.js | 50 + .../mochitest/dom-level2-core/files/hc_staff.html | 48 + .../mochitest/dom-level2-core/files/hc_staff.svg | 72 + .../mochitest/dom-level2-core/files/hc_staff.xhtml | 60 + .../mochitest/dom-level2-core/files/hc_staff.xml | 60 + .../dom-level2-core/files/internalSubset01.js | 0 .../mochitest/dom-level2-core/files/nodtdstaff.svg | 11 + .../mochitest/dom-level2-core/files/nodtdstaff.xml | 11 + .../mochitest/dom-level2-core/files/staff.dtd | 17 + .../mochitest/dom-level2-core/files/staff.svg | 72 + .../mochitest/dom-level2-core/files/staff.xml | 57 + .../mochitest/dom-level2-core/files/staff2.dtd | 24 + .../mochitest/dom-level2-core/files/staff2.svg | 13 + .../mochitest/dom-level2-core/files/staff2.xml | 13 + .../mochitest/dom-level2-core/files/staffNS.dtd | 45 + .../mochitest/dom-level2-core/files/staffNS.svg | 73 + .../mochitest/dom-level2-core/files/staffNS.xml | 59 + .../mochitest/dom-level2-core/files/svgtest.js | 0 .../mochitest/dom-level2-core/files/svgunit.js | 0 .../mochitest/dom-level2-core/files/xhtml-lat1.ent | 196 + .../dom-level2-core/files/xhtml-special.ent | 80 + .../dom-level2-core/files/xhtml-symbol.ent | 237 + .../dom-level2-core/files/xhtml1-frameset.dtd | 1235 ++++++ .../dom-level2-core/files/xhtml1-strict.dtd | 65 + .../dom-level2-core/files/xhtml1-transitional.dtd | 1201 +++++ dom/tests/mochitest/dom-level2-core/mochitest.toml | 511 +++ .../test_attrgetownerelement01.html | 134 + .../test_attrgetownerelement02.html | 127 + .../test_attrgetownerelement03.html | 119 + .../test_attrgetownerelement04.html | 140 + .../test_attrgetownerelement05.html | 138 + .../dom-level2-core/test_createAttributeNS01.html | 132 + .../dom-level2-core/test_createAttributeNS02.html | 131 + .../dom-level2-core/test_createAttributeNS03.html | 164 + .../dom-level2-core/test_createAttributeNS04.html | 134 + .../dom-level2-core/test_createAttributeNS05.html | 123 + .../dom-level2-core/test_createAttributeNS06.html | 126 + .../dom-level2-core/test_createDocument01.html | 138 + .../dom-level2-core/test_createDocument02.html | 136 + .../dom-level2-core/test_createDocument03.html | 141 + .../dom-level2-core/test_createDocument04.html | 152 + .../dom-level2-core/test_createDocument05.html | 169 + .../dom-level2-core/test_createDocument06.html | 139 + .../dom-level2-core/test_createDocument07.html | 133 + .../dom-level2-core/test_createDocumentType01.html | 136 + .../dom-level2-core/test_createDocumentType02.html | 168 + .../dom-level2-core/test_createDocumentType03.html | 132 + .../dom-level2-core/test_createElementNS01.html | 132 + .../dom-level2-core/test_createElementNS02.html | 132 + .../dom-level2-core/test_createElementNS03.html | 166 + .../dom-level2-core/test_createElementNS04.html | 134 + .../dom-level2-core/test_createElementNS05.html | 123 + .../dom-level2-core/test_createElementNS06.html | 128 + .../test_documentcreateattributeNS01.html | 127 + .../test_documentcreateattributeNS02.html | 151 + .../test_documentcreateattributeNS03.html | 144 + .../test_documentcreateattributeNS04.html | 139 + .../test_documentcreateattributeNS05.html | 135 + .../test_documentcreateattributeNS06.html | 135 + .../test_documentcreateattributeNS07.html | 129 + .../test_documentcreateelementNS01.html | 137 + .../test_documentcreateelementNS02.html | 128 + .../test_documentcreateelementNS05.html | 129 + .../test_documentcreateelementNS06.html | 136 + .../test_documentgetelementbyid01.html | 118 + .../test_documentgetelementsbytagnameNS01.html | 127 + .../test_documentgetelementsbytagnameNS02.html | 129 + .../test_documentgetelementsbytagnameNS03.html | 118 + .../test_documentgetelementsbytagnameNS04.html | 122 + .../test_documentgetelementsbytagnameNS05.html | 120 + .../dom-level2-core/test_documentimportnode01.html | 139 + .../dom-level2-core/test_documentimportnode02.html | 156 + .../dom-level2-core/test_documentimportnode03.html | 140 + .../dom-level2-core/test_documentimportnode04.html | 147 + .../dom-level2-core/test_documentimportnode05.html | 152 + .../dom-level2-core/test_documentimportnode06.html | 128 + .../dom-level2-core/test_documentimportnode07.html | 135 + .../dom-level2-core/test_documentimportnode08.html | 138 + .../dom-level2-core/test_documentimportnode09.html | 131 + .../dom-level2-core/test_documentimportnode10.html | 131 + .../dom-level2-core/test_documentimportnode11.html | 133 + .../dom-level2-core/test_documentimportnode12.html | 137 + .../dom-level2-core/test_documentimportnode13.html | 131 + .../dom-level2-core/test_documentimportnode14.html | 136 + .../dom-level2-core/test_documentimportnode15.html | 139 + .../dom-level2-core/test_documentimportnode17.html | 139 + .../dom-level2-core/test_documentimportnode18.html | 143 + .../dom-level2-core/test_documentimportnode19.html | 175 + .../dom-level2-core/test_documentimportnode20.html | 168 + .../dom-level2-core/test_documentimportnode21.html | 178 + .../dom-level2-core/test_documentimportnode22.html | 181 + .../test_documenttypepublicid01.html | 123 + .../test_documenttypesystemid01.html | 124 + .../test_domimplementationcreatedocument03.html | 140 + .../test_domimplementationcreatedocument04.html | 134 + .../test_domimplementationcreatedocument05.html | 133 + .../test_domimplementationcreatedocument07.html | 130 + ...test_domimplementationcreatedocumenttype01.html | 144 + ...test_domimplementationcreatedocumenttype02.html | 148 + ...test_domimplementationcreatedocumenttype04.html | 150 + .../test_domimplementationfeaturecore.html | 134 + .../test_domimplementationfeaturexmlversion2.html | 134 + .../test_domimplementationhasfeature01.html | 148 + .../test_elementgetattributenodens01.html | 146 + .../test_elementgetattributenodens02.html | 123 + .../test_elementgetattributenodens03.html | 126 + .../test_elementgetattributens02.html | 123 + .../test_elementgetelementsbytagnamens02.html | 120 + .../test_elementgetelementsbytagnamens04.html | 136 + .../test_elementgetelementsbytagnamens05.html | 121 + .../test_elementhasattribute01.html | 118 + .../test_elementhasattribute02.html | 121 + .../test_elementhasattribute03.html | 125 + .../test_elementhasattribute04.html | 122 + .../test_elementhasattributens01.html | 122 + .../test_elementhasattributens02.html | 126 + .../test_elementhasattributens03.html | 130 + .../test_elementremoveattributens01.html | 124 + .../test_elementsetattributenodens01.html | 147 + .../test_elementsetattributenodens02.html | 136 + .../test_elementsetattributenodens03.html | 138 + .../test_elementsetattributenodens04.html | 134 + .../test_elementsetattributenodens05.html | 144 + .../test_elementsetattributenodens06.html | 142 + .../test_elementsetattributens01.html | 126 + .../test_elementsetattributens02.html | 129 + .../test_elementsetattributens03.html | 132 + .../test_elementsetattributens04.html | 142 + .../test_elementsetattributens05.html | 128 + .../test_elementsetattributens08.html | 140 + .../test_elementsetattributensurinull.html | 142 + .../dom-level2-core/test_getAttributeNS01.html | 127 + .../dom-level2-core/test_getAttributeNS02.html | 133 + .../dom-level2-core/test_getAttributeNS03.html | 126 + .../dom-level2-core/test_getAttributeNS04.html | 131 + .../dom-level2-core/test_getAttributeNS05.html | 124 + .../dom-level2-core/test_getAttributeNodeNS01.html | 126 + .../dom-level2-core/test_getAttributeNodeNS02.html | 127 + .../dom-level2-core/test_getElementById01.html | 122 + .../dom-level2-core/test_getElementById02.html | 118 + .../test_getElementsByTagNameNS01.html | 128 + .../test_getElementsByTagNameNS02.html | 131 + .../test_getElementsByTagNameNS03.html | 148 + .../test_getElementsByTagNameNS04.html | 139 + .../test_getElementsByTagNameNS05.html | 122 + .../test_getElementsByTagNameNS06.html | 121 + .../test_getElementsByTagNameNS07.html | 121 + .../test_getElementsByTagNameNS08.html | 133 + .../test_getElementsByTagNameNS09.html | 137 + .../test_getElementsByTagNameNS10.html | 153 + .../test_getElementsByTagNameNS11.html | 143 + .../test_getElementsByTagNameNS12.html | 123 + .../test_getElementsByTagNameNS13.html | 123 + .../test_getElementsByTagNameNS14.html | 123 + .../dom-level2-core/test_getNamedItemNS01.html | 130 + .../dom-level2-core/test_getNamedItemNS02.html | 130 + .../dom-level2-core/test_getNamedItemNS03.html | 123 + .../dom-level2-core/test_getNamedItemNS04.html | 123 + .../dom-level2-core/test_hasAttribute01.html | 120 + .../dom-level2-core/test_hasAttribute02.html | 122 + .../dom-level2-core/test_hasAttribute03.html | 120 + .../dom-level2-core/test_hasAttribute04.html | 122 + .../dom-level2-core/test_hasAttributeNS01.html | 125 + .../dom-level2-core/test_hasAttributeNS02.html | 124 + .../dom-level2-core/test_hasAttributeNS03.html | 125 + .../dom-level2-core/test_hasAttributeNS04.html | 127 + .../dom-level2-core/test_hasAttributeNS05.html | 125 + .../dom-level2-core/test_hasAttributes01.html | 120 + .../dom-level2-core/test_hasAttributes02.html | 120 + .../test_hc_namednodemapinvalidtype1.html | 133 + .../test_hc_nodedocumentfragmentnormalize1.html | 130 + .../test_hc_nodedocumentfragmentnormalize2.html | 123 + .../dom-level2-core/test_importNode01.html | 181 + .../dom-level2-core/test_importNode02.html | 148 + .../dom-level2-core/test_importNode03.html | 149 + .../dom-level2-core/test_importNode04.html | 149 + .../dom-level2-core/test_importNode05.html | 155 + .../dom-level2-core/test_importNode06.html | 151 + .../dom-level2-core/test_importNode07.html | 154 + .../dom-level2-core/test_importNode08.html | 148 + .../dom-level2-core/test_importNode09.html | 166 + .../dom-level2-core/test_importNode10.html | 153 + .../dom-level2-core/test_importNode11.html | 149 + .../dom-level2-core/test_importNode12.html | 162 + .../dom-level2-core/test_importNode13.html | 158 + .../dom-level2-core/test_importNode14.html | 154 + .../dom-level2-core/test_importNode15.html | 149 + .../dom-level2-core/test_importNode16.html | 149 + .../dom-level2-core/test_importNode17.html | 143 + .../dom-level2-core/test_localName01.html | 128 + .../dom-level2-core/test_localName02.html | 122 + .../dom-level2-core/test_localName04.html | 124 + .../test_namednodemapgetnameditemns01.html | 136 + .../test_namednodemapgetnameditemns02.html | 128 + .../test_namednodemapgetnameditemns03.html | 132 + .../test_namednodemapgetnameditemns04.html | 133 + .../test_namednodemapgetnameditemns05.html | 125 + .../test_namednodemapgetnameditemns06.html | 138 + .../test_namednodemapremovenameditemns01.html | 124 + .../test_namednodemapremovenameditemns02.html | 136 + .../test_namednodemapremovenameditemns03.html | 133 + .../test_namednodemapremovenameditemns04.html | 128 + .../test_namednodemapremovenameditemns05.html | 167 + .../test_namednodemapremovenameditemns06.html | 134 + .../test_namednodemapremovenameditemns07.html | 134 + .../test_namednodemapremovenameditemns08.html | 137 + .../test_namednodemapremovenameditemns09.html | 129 + .../test_namednodemapsetnameditemns01.html | 133 + .../test_namednodemapsetnameditemns02.html | 132 + .../test_namednodemapsetnameditemns03.html | 163 + .../test_namednodemapsetnameditemns04.html | 147 + .../test_namednodemapsetnameditemns05.html | 155 + .../test_namednodemapsetnameditemns06.html | 138 + .../test_namednodemapsetnameditemns07.html | 144 + .../test_namednodemapsetnameditemns08.html | 141 + .../test_namednodemapsetnameditemns09.html | 148 + .../test_namednodemapsetnameditemns10.html | 146 + .../test_namednodemapsetnameditemns11.html | 147 + .../dom-level2-core/test_namespaceURI01.html | 128 + .../dom-level2-core/test_namespaceURI02.html | 126 + .../dom-level2-core/test_namespaceURI03.html | 123 + .../dom-level2-core/test_namespaceURI04.html | 136 + .../dom-level2-core/test_nodegetlocalname03.html | 138 + .../test_nodegetnamespaceuri03.html | 142 + .../test_nodegetownerdocument01.html | 126 + .../test_nodegetownerdocument02.html | 133 + .../dom-level2-core/test_nodegetprefix03.html | 138 + .../dom-level2-core/test_nodehasattributes01.html | 123 + .../dom-level2-core/test_nodehasattributes02.html | 118 + .../dom-level2-core/test_nodehasattributes03.html | 119 + .../dom-level2-core/test_nodehasattributes04.html | 138 + .../dom-level2-core/test_nodenormalize01.html | 238 + .../dom-level2-core/test_normalize01.html | 136 + .../dom-level2-core/test_ownerDocument01.html | 117 + .../dom-level2-core/test_ownerElement01.html | 129 + .../dom-level2-core/test_ownerElement02.html | 120 + .../mochitest/dom-level2-core/test_prefix01.html | 122 + .../mochitest/dom-level2-core/test_prefix03.html | 123 + .../mochitest/dom-level2-core/test_prefix04.html | 121 + .../mochitest/dom-level2-core/test_publicId01.html | 121 + .../dom-level2-core/test_removeAttributeNS01.html | 155 + .../dom-level2-core/test_removeAttributeNS02.html | 146 + .../dom-level2-core/test_removeNamedItemNS01.html | 131 + .../dom-level2-core/test_removeNamedItemNS02.html | 141 + .../dom-level2-core/test_removeNamedItemNS03.html | 163 + .../dom-level2-core/test_setAttributeNS01.html | 134 + .../dom-level2-core/test_setAttributeNS02.html | 133 + .../dom-level2-core/test_setAttributeNS03.html | 158 + .../dom-level2-core/test_setAttributeNS04.html | 144 + .../dom-level2-core/test_setAttributeNS05.html | 132 + .../dom-level2-core/test_setAttributeNS06.html | 135 + .../dom-level2-core/test_setAttributeNS07.html | 136 + .../dom-level2-core/test_setAttributeNS09.html | 144 + .../dom-level2-core/test_setAttributeNS10.html | 129 + .../dom-level2-core/test_setAttributeNodeNS01.html | 149 + .../dom-level2-core/test_setAttributeNodeNS02.html | 160 + .../dom-level2-core/test_setAttributeNodeNS03.html | 130 + .../dom-level2-core/test_setAttributeNodeNS04.html | 132 + .../dom-level2-core/test_setAttributeNodeNS05.html | 155 + .../dom-level2-core/test_setNamedItemNS01.html | 146 + .../dom-level2-core/test_setNamedItemNS02.html | 157 + .../dom-level2-core/test_setNamedItemNS03.html | 138 + .../dom-level2-core/test_setNamedItemNS04.html | 165 + .../dom-level2-core/test_setNamedItemNS05.html | 136 + .../mochitest/dom-level2-core/test_systemId01.html | 122 + dom/tests/mochitest/dom-level2-html/DOMTestCase.js | 718 +++ .../mochitest/dom-level2-html/files/anchor.html | 12 + .../mochitest/dom-level2-html/files/anchor.xhtml | 14 + .../mochitest/dom-level2-html/files/anchor.xml | 14 + .../mochitest/dom-level2-html/files/anchor2.html | 13 + .../mochitest/dom-level2-html/files/anchor2.xhtml | 14 + .../mochitest/dom-level2-html/files/anchor2.xml | 14 + .../mochitest/dom-level2-html/files/applet.html | 12 + .../mochitest/dom-level2-html/files/applet.xhtml | 15 + .../mochitest/dom-level2-html/files/applet.xml | 15 + .../mochitest/dom-level2-html/files/applet2.class | 14 + .../mochitest/dom-level2-html/files/applet2.html | 12 + .../mochitest/dom-level2-html/files/applet2.xhtml | 15 + .../mochitest/dom-level2-html/files/applet2.xml | 15 + .../files/applets/org/w3c/domts/DOMTSApplet.class | Bin 0 -> 1584 bytes .../mochitest/dom-level2-html/files/area.html | 14 + .../mochitest/dom-level2-html/files/area.xhtml | 17 + dom/tests/mochitest/dom-level2-html/files/area.xml | 17 + .../mochitest/dom-level2-html/files/area2.html | 15 + .../mochitest/dom-level2-html/files/area2.xhtml | 16 + .../mochitest/dom-level2-html/files/area2.xml | 16 + .../mochitest/dom-level2-html/files/base.html | 11 + .../mochitest/dom-level2-html/files/base.xhtml | 13 + dom/tests/mochitest/dom-level2-html/files/base.xml | 13 + .../mochitest/dom-level2-html/files/base2.html | 15 + .../mochitest/dom-level2-html/files/base2.xhtml | 16 + .../mochitest/dom-level2-html/files/base2.xml | 16 + .../mochitest/dom-level2-html/files/body.html | 10 + .../mochitest/dom-level2-html/files/body.xhtml | 13 + dom/tests/mochitest/dom-level2-html/files/body.xml | 13 + dom/tests/mochitest/dom-level2-html/files/br.html | 12 + dom/tests/mochitest/dom-level2-html/files/br.xhtml | 14 + dom/tests/mochitest/dom-level2-html/files/br.xml | 14 + .../mochitest/dom-level2-html/files/button.html | 21 + .../mochitest/dom-level2-html/files/button.xhtml | 24 + .../mochitest/dom-level2-html/files/button.xml | 24 + .../dom-level2-html/files/collection.html | 79 + .../dom-level2-html/files/collection.xhtml | 82 + .../mochitest/dom-level2-html/files/collection.xml | 82 + .../mochitest/dom-level2-html/files/directory.html | 14 + .../dom-level2-html/files/directory.xhtml | 16 + .../mochitest/dom-level2-html/files/directory.xml | 16 + dom/tests/mochitest/dom-level2-html/files/div.html | 10 + .../mochitest/dom-level2-html/files/div.xhtml | 12 + dom/tests/mochitest/dom-level2-html/files/div.xml | 12 + dom/tests/mochitest/dom-level2-html/files/dl.html | 15 + dom/tests/mochitest/dom-level2-html/files/dl.xhtml | 17 + dom/tests/mochitest/dom-level2-html/files/dl.xml | 17 + .../files/document-with-applet.html | 36 + .../mochitest/dom-level2-html/files/document.html | 34 + .../mochitest/dom-level2-html/files/document.xhtml | 39 + .../mochitest/dom-level2-html/files/document.xml | 39 + .../mochitest/dom-level2-html/files/element.html | 81 + .../mochitest/dom-level2-html/files/element.xhtml | 83 + .../mochitest/dom-level2-html/files/element.xml | 83 + .../mochitest/dom-level2-html/files/fieldset.html | 23 + .../mochitest/dom-level2-html/files/fieldset.xhtml | 25 + .../mochitest/dom-level2-html/files/fieldset.xml | 25 + .../mochitest/dom-level2-html/files/font.html | 10 + .../mochitest/dom-level2-html/files/font.xhtml | 12 + dom/tests/mochitest/dom-level2-html/files/font.xml | 12 + .../mochitest/dom-level2-html/files/form.html | 17 + .../mochitest/dom-level2-html/files/form.xhtml | 18 + dom/tests/mochitest/dom-level2-html/files/form.xml | 18 + .../mochitest/dom-level2-html/files/form2.html | 17 + .../mochitest/dom-level2-html/files/form2.xhtml | 18 + .../mochitest/dom-level2-html/files/form2.xml | 18 + .../mochitest/dom-level2-html/files/form3.html | 17 + .../mochitest/dom-level2-html/files/form3.xhtml | 18 + .../mochitest/dom-level2-html/files/form3.xml | 18 + .../mochitest/dom-level2-html/files/frame.html | 14 + .../mochitest/dom-level2-html/files/frame.xhtml | 15 + .../mochitest/dom-level2-html/files/frame.xml | 15 + .../mochitest/dom-level2-html/files/frame2.html | 16 + .../mochitest/dom-level2-html/files/frame2.xhtml | 17 + .../mochitest/dom-level2-html/files/frame2.xml | 16 + .../mochitest/dom-level2-html/files/frameset.html | 14 + .../mochitest/dom-level2-html/files/frameset.xhtml | 15 + .../mochitest/dom-level2-html/files/frameset.xml | 15 + .../mochitest/dom-level2-html/files/heading.html | 16 + .../mochitest/dom-level2-html/files/heading.xhtml | 18 + .../mochitest/dom-level2-html/files/heading.xml | 18 + dom/tests/mochitest/dom-level2-html/files/hr.html | 11 + dom/tests/mochitest/dom-level2-html/files/hr.xhtml | 13 + dom/tests/mochitest/dom-level2-html/files/hr.xml | 13 + .../mochitest/dom-level2-html/files/html.html | 12 + .../mochitest/dom-level2-html/files/html.xhtml | 14 + dom/tests/mochitest/dom-level2-html/files/html.xml | 14 + .../mochitest/dom-level2-html/files/iframe.html | 10 + .../mochitest/dom-level2-html/files/iframe.xhtml | 12 + .../mochitest/dom-level2-html/files/iframe.xml | 12 + .../mochitest/dom-level2-html/files/iframe2.html | 13 + .../mochitest/dom-level2-html/files/iframe2.xhtml | 15 + .../mochitest/dom-level2-html/files/iframe2.xml | 15 + dom/tests/mochitest/dom-level2-html/files/img.html | 13 + .../mochitest/dom-level2-html/files/img.xhtml | 15 + dom/tests/mochitest/dom-level2-html/files/img.xml | 15 + .../mochitest/dom-level2-html/files/index.html | 216 + .../mochitest/dom-level2-html/files/input.html | 60 + .../mochitest/dom-level2-html/files/input.xhtml | 62 + .../mochitest/dom-level2-html/files/input.xml | 62 + .../mochitest/dom-level2-html/files/isindex.html | 14 + .../mochitest/dom-level2-html/files/isindex.xhtml | 15 + .../mochitest/dom-level2-html/files/isindex.xml | 15 + .../mochitest/dom-level2-html/files/label.html | 21 + .../mochitest/dom-level2-html/files/label.xhtml | 22 + .../mochitest/dom-level2-html/files/label.xml | 22 + .../mochitest/dom-level2-html/files/legend.html | 22 + .../mochitest/dom-level2-html/files/legend.xhtml | 23 + .../mochitest/dom-level2-html/files/legend.xml | 23 + dom/tests/mochitest/dom-level2-html/files/li.html | 23 + dom/tests/mochitest/dom-level2-html/files/li.xhtml | 25 + dom/tests/mochitest/dom-level2-html/files/li.xml | 25 + .../mochitest/dom-level2-html/files/link.html | 15 + .../mochitest/dom-level2-html/files/link.xhtml | 17 + dom/tests/mochitest/dom-level2-html/files/link.xml | 17 + .../mochitest/dom-level2-html/files/link2.html | 15 + .../mochitest/dom-level2-html/files/link2.xhtml | 17 + .../mochitest/dom-level2-html/files/link2.xml | 17 + dom/tests/mochitest/dom-level2-html/files/map.html | 16 + .../mochitest/dom-level2-html/files/map.xhtml | 18 + dom/tests/mochitest/dom-level2-html/files/map.xml | 18 + .../mochitest/dom-level2-html/files/menu.html | 15 + .../mochitest/dom-level2-html/files/menu.xhtml | 17 + dom/tests/mochitest/dom-level2-html/files/menu.xml | 17 + .../mochitest/dom-level2-html/files/meta.html | 13 + .../mochitest/dom-level2-html/files/meta.xhtml | 16 + dom/tests/mochitest/dom-level2-html/files/meta.xml | 16 + dom/tests/mochitest/dom-level2-html/files/mod.html | 15 + .../mochitest/dom-level2-html/files/mod.xhtml | 17 + dom/tests/mochitest/dom-level2-html/files/mod.xml | 17 + .../mochitest/dom-level2-html/files/object.html | 18 + .../mochitest/dom-level2-html/files/object.xhtml | 20 + .../mochitest/dom-level2-html/files/object.xml | 20 + .../mochitest/dom-level2-html/files/object2.html | 17 + .../mochitest/dom-level2-html/files/object2.xhtml | 20 + .../mochitest/dom-level2-html/files/object2.xml | 20 + .../mochitest/dom-level2-html/files/olist.html | 32 + .../mochitest/dom-level2-html/files/olist.xhtml | 34 + .../mochitest/dom-level2-html/files/olist.xml | 34 + .../mochitest/dom-level2-html/files/optgroup.html | 25 + .../mochitest/dom-level2-html/files/optgroup.xhtml | 27 + .../mochitest/dom-level2-html/files/optgroup.xml | 27 + .../mochitest/dom-level2-html/files/option.html | 36 + .../mochitest/dom-level2-html/files/option.xhtml | 33 + .../mochitest/dom-level2-html/files/option.xml | 33 + .../dom-level2-html/files/optionscollection.html | 36 + .../dom-level2-html/files/optionscollection.xhtml | 33 + .../dom-level2-html/files/optionscollection.xml | 33 + .../mochitest/dom-level2-html/files/paragraph.html | 13 + .../dom-level2-html/files/paragraph.xhtml | 15 + .../mochitest/dom-level2-html/files/paragraph.xml | 15 + .../mochitest/dom-level2-html/files/param.html | 14 + .../mochitest/dom-level2-html/files/param.xhtml | 17 + .../mochitest/dom-level2-html/files/param.xml | 17 + dom/tests/mochitest/dom-level2-html/files/pre.html | 17 + .../mochitest/dom-level2-html/files/pre.xhtml | 19 + dom/tests/mochitest/dom-level2-html/files/pre.xml | 19 + .../mochitest/dom-level2-html/files/quote.html | 16 + .../mochitest/dom-level2-html/files/quote.xhtml | 18 + .../mochitest/dom-level2-html/files/quote.xml | 18 + .../mochitest/dom-level2-html/files/right.png | Bin 0 -> 137 bytes .../mochitest/dom-level2-html/files/script.html | 11 + .../mochitest/dom-level2-html/files/script.xhtml | 13 + .../mochitest/dom-level2-html/files/script.xml | 13 + .../mochitest/dom-level2-html/files/select.html | 44 + .../mochitest/dom-level2-html/files/select.xhtml | 41 + .../mochitest/dom-level2-html/files/select.xml | 41 + .../mochitest/dom-level2-html/files/style.html | 12 + .../mochitest/dom-level2-html/files/style.xhtml | 14 + .../mochitest/dom-level2-html/files/style.xml | 14 + .../mochitest/dom-level2-html/files/table.html | 78 + .../mochitest/dom-level2-html/files/table.xhtml | 81 + .../mochitest/dom-level2-html/files/table.xml | 81 + .../mochitest/dom-level2-html/files/table1.html | 12 + .../mochitest/dom-level2-html/files/table1.xhtml | 15 + .../mochitest/dom-level2-html/files/table1.xml | 15 + .../dom-level2-html/files/tablecaption.html | 25 + .../dom-level2-html/files/tablecaption.xhtml | 21 + .../dom-level2-html/files/tablecaption.xml | 21 + .../mochitest/dom-level2-html/files/tablecell.html | 23 + .../dom-level2-html/files/tablecell.xhtml | 26 + .../mochitest/dom-level2-html/files/tablecell.xml | 26 + .../mochitest/dom-level2-html/files/tablecol.html | 35 + .../mochitest/dom-level2-html/files/tablecol.xhtml | 29 + .../mochitest/dom-level2-html/files/tablecol.xml | 29 + .../mochitest/dom-level2-html/files/tablerow.html | 59 + .../mochitest/dom-level2-html/files/tablerow.xhtml | 62 + .../mochitest/dom-level2-html/files/tablerow.xml | 62 + .../dom-level2-html/files/tablesection.html | 62 + .../dom-level2-html/files/tablesection.xhtml | 65 + .../dom-level2-html/files/tablesection.xml | 65 + .../mochitest/dom-level2-html/files/textarea.html | 26 + .../mochitest/dom-level2-html/files/textarea.xhtml | 27 + .../mochitest/dom-level2-html/files/textarea.xml | 27 + .../mochitest/dom-level2-html/files/title.html | 13 + .../mochitest/dom-level2-html/files/title.xhtml | 15 + .../mochitest/dom-level2-html/files/title.xml | 15 + .../mochitest/dom-level2-html/files/ulist.html | 36 + .../mochitest/dom-level2-html/files/ulist.xhtml | 38 + .../mochitest/dom-level2-html/files/ulist.xml | 38 + .../mochitest/dom-level2-html/files/w3c_main.png | Bin 0 -> 5904 bytes .../mochitest/dom-level2-html/files/xhtml-lat1.ent | 196 + .../dom-level2-html/files/xhtml-special.ent | 80 + .../dom-level2-html/files/xhtml-symbol.ent | 237 + .../dom-level2-html/files/xhtml1-frameset.dtd | 1235 ++++++ .../dom-level2-html/files/xhtml1-strict.dtd | 978 ++++ .../dom-level2-html/files/xhtml1-transitional.dtd | 1201 +++++ dom/tests/mochitest/dom-level2-html/mochitest.toml | 1516 +++++++ .../dom-level2-html/test_HTMLAnchorElement01.html | 137 + .../dom-level2-html/test_HTMLAnchorElement02.html | 137 + .../dom-level2-html/test_HTMLAnchorElement03.html | 137 + .../dom-level2-html/test_HTMLAnchorElement04.html | 135 + .../dom-level2-html/test_HTMLAnchorElement05.html | 135 + .../dom-level2-html/test_HTMLAnchorElement06.html | 135 + .../dom-level2-html/test_HTMLAnchorElement07.html | 135 + .../dom-level2-html/test_HTMLAnchorElement08.html | 135 + .../dom-level2-html/test_HTMLAnchorElement09.html | 135 + .../dom-level2-html/test_HTMLAnchorElement10.html | 137 + .../dom-level2-html/test_HTMLAnchorElement11.html | 135 + .../dom-level2-html/test_HTMLAnchorElement12.html | 135 + .../dom-level2-html/test_HTMLAnchorElement13.html | 126 + .../dom-level2-html/test_HTMLAnchorElement14.html | 126 + .../dom-level2-html/test_HTMLAreaElement01.html | 137 + .../dom-level2-html/test_HTMLAreaElement02.html | 137 + .../dom-level2-html/test_HTMLAreaElement03.html | 137 + .../dom-level2-html/test_HTMLAreaElement04.html | 135 + .../dom-level2-html/test_HTMLAreaElement05.html | 135 + .../dom-level2-html/test_HTMLAreaElement06.html | 135 + .../dom-level2-html/test_HTMLAreaElement07.html | 137 + .../dom-level2-html/test_HTMLAreaElement08.html | 135 + .../dom-level2-html/test_HTMLBRElement01.html | 135 + .../dom-level2-html/test_HTMLBaseElement01.html | 135 + .../dom-level2-html/test_HTMLBaseElement02.html | 135 + .../dom-level2-html/test_HTMLBodyElement01.html | 135 + .../dom-level2-html/test_HTMLBodyElement02.html | 136 + .../dom-level2-html/test_HTMLBodyElement03.html | 135 + .../dom-level2-html/test_HTMLBodyElement04.html | 137 + .../dom-level2-html/test_HTMLBodyElement05.html | 135 + .../dom-level2-html/test_HTMLBodyElement06.html | 137 + .../dom-level2-html/test_HTMLButtonElement01.html | 138 + .../dom-level2-html/test_HTMLButtonElement02.html | 137 + .../dom-level2-html/test_HTMLButtonElement03.html | 137 + .../dom-level2-html/test_HTMLButtonElement04.html | 137 + .../dom-level2-html/test_HTMLButtonElement05.html | 137 + .../dom-level2-html/test_HTMLButtonElement06.html | 137 + .../dom-level2-html/test_HTMLButtonElement07.html | 135 + .../dom-level2-html/test_HTMLButtonElement08.html | 135 + .../dom-level2-html/test_HTMLCollection01.html | 146 + .../dom-level2-html/test_HTMLCollection02.html | 146 + .../dom-level2-html/test_HTMLCollection03.html | 146 + .../dom-level2-html/test_HTMLCollection04.html | 158 + .../dom-level2-html/test_HTMLCollection05.html | 142 + .../dom-level2-html/test_HTMLCollection06.html | 148 + .../dom-level2-html/test_HTMLCollection07.html | 146 + .../dom-level2-html/test_HTMLCollection08.html | 146 + .../dom-level2-html/test_HTMLCollection09.html | 142 + .../dom-level2-html/test_HTMLCollection10.html | 150 + .../dom-level2-html/test_HTMLCollection11.html | 150 + .../dom-level2-html/test_HTMLCollection12.html | 149 + .../test_HTMLDirectoryElement01.html | 137 + .../dom-level2-html/test_HTMLDivElement01.html | 135 + .../dom-level2-html/test_HTMLDlistElement01.html | 137 + .../dom-level2-html/test_HTMLDocument01.html | 131 + .../dom-level2-html/test_HTMLDocument02.html | 138 + .../dom-level2-html/test_HTMLDocument03.html | 134 + .../dom-level2-html/test_HTMLDocument04.html | 132 + .../dom-level2-html/test_HTMLDocument05.html | 137 + .../dom-level2-html/test_HTMLDocument07.html | 135 + .../dom-level2-html/test_HTMLDocument09.html | 137 + .../dom-level2-html/test_HTMLDocument10.html | 135 + .../dom-level2-html/test_HTMLDocument11.html | 137 + .../dom-level2-html/test_HTMLDocument12.html | 137 + .../dom-level2-html/test_HTMLDocument13.html | 133 + .../dom-level2-html/test_HTMLDocument14.html | 135 + .../dom-level2-html/test_HTMLDocument15.html | 142 + .../dom-level2-html/test_HTMLDocument16.html | 142 + .../dom-level2-html/test_HTMLDocument17.html | 139 + .../dom-level2-html/test_HTMLDocument18.html | 123 + .../dom-level2-html/test_HTMLDocument19.html | 152 + .../dom-level2-html/test_HTMLDocument20.html | 152 + .../dom-level2-html/test_HTMLDocument21.html | 162 + .../dom-level2-html/test_HTMLElement01.html | 135 + .../dom-level2-html/test_HTMLElement02.html | 135 + .../dom-level2-html/test_HTMLElement03.html | 135 + .../dom-level2-html/test_HTMLElement04.html | 135 + .../dom-level2-html/test_HTMLElement05.html | 135 + .../dom-level2-html/test_HTMLElement06.html | 135 + .../dom-level2-html/test_HTMLElement07.html | 135 + .../dom-level2-html/test_HTMLElement08.html | 135 + .../dom-level2-html/test_HTMLElement09.html | 135 + .../dom-level2-html/test_HTMLElement10.html | 135 + .../dom-level2-html/test_HTMLElement100.html | 135 + .../dom-level2-html/test_HTMLElement101.html | 135 + .../dom-level2-html/test_HTMLElement102.html | 135 + .../dom-level2-html/test_HTMLElement103.html | 135 + .../dom-level2-html/test_HTMLElement104.html | 135 + .../dom-level2-html/test_HTMLElement105.html | 135 + .../dom-level2-html/test_HTMLElement106.html | 135 + .../dom-level2-html/test_HTMLElement107.html | 135 + .../dom-level2-html/test_HTMLElement108.html | 135 + .../dom-level2-html/test_HTMLElement109.html | 135 + .../dom-level2-html/test_HTMLElement11.html | 135 + .../dom-level2-html/test_HTMLElement110.html | 135 + .../dom-level2-html/test_HTMLElement111.html | 135 + .../dom-level2-html/test_HTMLElement112.html | 135 + .../dom-level2-html/test_HTMLElement113.html | 135 + .../dom-level2-html/test_HTMLElement114.html | 135 + .../dom-level2-html/test_HTMLElement115.html | 135 + .../dom-level2-html/test_HTMLElement116.html | 135 + .../dom-level2-html/test_HTMLElement117.html | 135 + .../dom-level2-html/test_HTMLElement118.html | 135 + .../dom-level2-html/test_HTMLElement119.html | 135 + .../dom-level2-html/test_HTMLElement12.html | 135 + .../dom-level2-html/test_HTMLElement120.html | 135 + .../dom-level2-html/test_HTMLElement121.html | 135 + .../dom-level2-html/test_HTMLElement122.html | 135 + .../dom-level2-html/test_HTMLElement123.html | 135 + .../dom-level2-html/test_HTMLElement124.html | 135 + .../dom-level2-html/test_HTMLElement125.html | 135 + .../dom-level2-html/test_HTMLElement126.html | 135 + .../dom-level2-html/test_HTMLElement127.html | 135 + .../dom-level2-html/test_HTMLElement128.html | 135 + .../dom-level2-html/test_HTMLElement129.html | 135 + .../dom-level2-html/test_HTMLElement13.html | 135 + .../dom-level2-html/test_HTMLElement130.html | 135 + .../dom-level2-html/test_HTMLElement131.html | 135 + .../dom-level2-html/test_HTMLElement132.html | 135 + .../dom-level2-html/test_HTMLElement133.html | 135 + .../dom-level2-html/test_HTMLElement134.html | 135 + .../dom-level2-html/test_HTMLElement135.html | 135 + .../dom-level2-html/test_HTMLElement136.html | 135 + .../dom-level2-html/test_HTMLElement137.html | 135 + .../dom-level2-html/test_HTMLElement138.html | 135 + .../dom-level2-html/test_HTMLElement139.html | 135 + .../dom-level2-html/test_HTMLElement14.html | 135 + .../dom-level2-html/test_HTMLElement140.html | 135 + .../dom-level2-html/test_HTMLElement141.html | 135 + .../dom-level2-html/test_HTMLElement142.html | 135 + .../dom-level2-html/test_HTMLElement143.html | 135 + .../dom-level2-html/test_HTMLElement144.html | 135 + .../dom-level2-html/test_HTMLElement145.html | 135 + .../dom-level2-html/test_HTMLElement15.html | 135 + .../dom-level2-html/test_HTMLElement16.html | 135 + .../dom-level2-html/test_HTMLElement17.html | 135 + .../dom-level2-html/test_HTMLElement18.html | 135 + .../dom-level2-html/test_HTMLElement19.html | 135 + .../dom-level2-html/test_HTMLElement20.html | 135 + .../dom-level2-html/test_HTMLElement21.html | 135 + .../dom-level2-html/test_HTMLElement22.html | 135 + .../dom-level2-html/test_HTMLElement23.html | 135 + .../dom-level2-html/test_HTMLElement24.html | 135 + .../dom-level2-html/test_HTMLElement25.html | 135 + .../dom-level2-html/test_HTMLElement26.html | 135 + .../dom-level2-html/test_HTMLElement27.html | 135 + .../dom-level2-html/test_HTMLElement28.html | 135 + .../dom-level2-html/test_HTMLElement29.html | 135 + .../dom-level2-html/test_HTMLElement30.html | 135 + .../dom-level2-html/test_HTMLElement31.html | 135 + .../dom-level2-html/test_HTMLElement32.html | 135 + .../dom-level2-html/test_HTMLElement33.html | 135 + .../dom-level2-html/test_HTMLElement34.html | 135 + .../dom-level2-html/test_HTMLElement35.html | 135 + .../dom-level2-html/test_HTMLElement36.html | 135 + .../dom-level2-html/test_HTMLElement37.html | 135 + .../dom-level2-html/test_HTMLElement38.html | 135 + .../dom-level2-html/test_HTMLElement39.html | 135 + .../dom-level2-html/test_HTMLElement40.html | 135 + .../dom-level2-html/test_HTMLElement41.html | 135 + .../dom-level2-html/test_HTMLElement42.html | 135 + .../dom-level2-html/test_HTMLElement43.html | 135 + .../dom-level2-html/test_HTMLElement44.html | 135 + .../dom-level2-html/test_HTMLElement45.html | 135 + .../dom-level2-html/test_HTMLElement46.html | 135 + .../dom-level2-html/test_HTMLElement47.html | 135 + .../dom-level2-html/test_HTMLElement48.html | 135 + .../dom-level2-html/test_HTMLElement49.html | 135 + .../dom-level2-html/test_HTMLElement50.html | 135 + .../dom-level2-html/test_HTMLElement51.html | 135 + .../dom-level2-html/test_HTMLElement52.html | 135 + .../dom-level2-html/test_HTMLElement53.html | 135 + .../dom-level2-html/test_HTMLElement54.html | 135 + .../dom-level2-html/test_HTMLElement55.html | 135 + .../dom-level2-html/test_HTMLElement56.html | 135 + .../dom-level2-html/test_HTMLElement57.html | 135 + .../dom-level2-html/test_HTMLElement58.html | 135 + .../dom-level2-html/test_HTMLElement59.html | 135 + .../dom-level2-html/test_HTMLElement60.html | 135 + .../dom-level2-html/test_HTMLElement61.html | 135 + .../dom-level2-html/test_HTMLElement62.html | 135 + .../dom-level2-html/test_HTMLElement63.html | 135 + .../dom-level2-html/test_HTMLElement64.html | 135 + .../dom-level2-html/test_HTMLElement65.html | 135 + .../dom-level2-html/test_HTMLElement66.html | 135 + .../dom-level2-html/test_HTMLElement67.html | 135 + .../dom-level2-html/test_HTMLElement68.html | 135 + .../dom-level2-html/test_HTMLElement69.html | 135 + .../dom-level2-html/test_HTMLElement70.html | 135 + .../dom-level2-html/test_HTMLElement71.html | 135 + .../dom-level2-html/test_HTMLElement72.html | 135 + .../dom-level2-html/test_HTMLElement73.html | 135 + .../dom-level2-html/test_HTMLElement74.html | 135 + .../dom-level2-html/test_HTMLElement75.html | 135 + .../dom-level2-html/test_HTMLElement76.html | 135 + .../dom-level2-html/test_HTMLElement77.html | 135 + .../dom-level2-html/test_HTMLElement78.html | 135 + .../dom-level2-html/test_HTMLElement79.html | 135 + .../dom-level2-html/test_HTMLElement80.html | 135 + .../dom-level2-html/test_HTMLElement81.html | 135 + .../dom-level2-html/test_HTMLElement82.html | 135 + .../dom-level2-html/test_HTMLElement83.html | 135 + .../dom-level2-html/test_HTMLElement84.html | 135 + .../dom-level2-html/test_HTMLElement85.html | 135 + .../dom-level2-html/test_HTMLElement86.html | 135 + .../dom-level2-html/test_HTMLElement87.html | 135 + .../dom-level2-html/test_HTMLElement88.html | 135 + .../dom-level2-html/test_HTMLElement89.html | 135 + .../dom-level2-html/test_HTMLElement90.html | 135 + .../dom-level2-html/test_HTMLElement91.html | 135 + .../dom-level2-html/test_HTMLElement92.html | 135 + .../dom-level2-html/test_HTMLElement93.html | 135 + .../dom-level2-html/test_HTMLElement94.html | 135 + .../dom-level2-html/test_HTMLElement95.html | 135 + .../dom-level2-html/test_HTMLElement96.html | 135 + .../dom-level2-html/test_HTMLElement97.html | 135 + .../dom-level2-html/test_HTMLElement98.html | 135 + .../dom-level2-html/test_HTMLElement99.html | 135 + .../test_HTMLFieldSetElement01.html | 138 + .../test_HTMLFieldSetElement02.html | 137 + .../dom-level2-html/test_HTMLFontElement01.html | 135 + .../dom-level2-html/test_HTMLFontElement02.html | 137 + .../dom-level2-html/test_HTMLFontElement03.html | 135 + .../dom-level2-html/test_HTMLFormElement01.html | 140 + .../dom-level2-html/test_HTMLFormElement02.html | 139 + .../dom-level2-html/test_HTMLFormElement03.html | 135 + .../dom-level2-html/test_HTMLFormElement04.html | 137 + .../dom-level2-html/test_HTMLFormElement05.html | 135 + .../dom-level2-html/test_HTMLFormElement06.html | 135 + .../dom-level2-html/test_HTMLFormElement07.html | 135 + .../dom-level2-html/test_HTMLFormElement08.html | 135 + .../dom-level2-html/test_HTMLFormElement09.html | 126 + .../dom-level2-html/test_HTMLFormElement10.html | 126 + .../dom-level2-html/test_HTMLFrameElement01.html | 141 + .../dom-level2-html/test_HTMLFrameElement02.html | 139 + .../dom-level2-html/test_HTMLFrameElement03.html | 137 + .../dom-level2-html/test_HTMLFrameElement04.html | 137 + .../dom-level2-html/test_HTMLFrameElement05.html | 139 + .../dom-level2-html/test_HTMLFrameElement06.html | 139 + .../dom-level2-html/test_HTMLFrameElement07.html | 139 + .../dom-level2-html/test_HTMLFrameElement08.html | 137 + .../dom-level2-html/test_HTMLFrameElement09.html | 139 + .../test_HTMLFrameSetElement01.html | 139 + .../test_HTMLFrameSetElement02.html | 139 + .../dom-level2-html/test_HTMLHRElement01.html | 135 + .../dom-level2-html/test_HTMLHRElement02.html | 137 + .../dom-level2-html/test_HTMLHRElement03.html | 135 + .../dom-level2-html/test_HTMLHRElement04.html | 135 + .../dom-level2-html/test_HTMLHeadingElement01.html | 135 + .../dom-level2-html/test_HTMLHeadingElement02.html | 135 + .../dom-level2-html/test_HTMLHeadingElement03.html | 135 + .../dom-level2-html/test_HTMLHeadingElement04.html | 135 + .../dom-level2-html/test_HTMLHeadingElement05.html | 135 + .../dom-level2-html/test_HTMLHeadingElement06.html | 135 + .../dom-level2-html/test_HTMLHtmlElement01.html | 149 + .../dom-level2-html/test_HTMLIFrameElement01.html | 139 + .../dom-level2-html/test_HTMLIFrameElement02.html | 141 + .../dom-level2-html/test_HTMLIFrameElement03.html | 137 + .../dom-level2-html/test_HTMLIFrameElement04.html | 139 + .../dom-level2-html/test_HTMLIFrameElement05.html | 137 + .../dom-level2-html/test_HTMLIFrameElement06.html | 137 + .../dom-level2-html/test_HTMLIFrameElement07.html | 139 + .../dom-level2-html/test_HTMLIFrameElement08.html | 139 + .../dom-level2-html/test_HTMLIFrameElement09.html | 137 + .../dom-level2-html/test_HTMLIFrameElement10.html | 137 + .../dom-level2-html/test_HTMLIFrameElement11.html | 133 + .../dom-level2-html/test_HTMLImageElement01.html | 135 + .../dom-level2-html/test_HTMLImageElement02.html | 137 + .../dom-level2-html/test_HTMLImageElement03.html | 137 + .../dom-level2-html/test_HTMLImageElement04.html | 135 + .../dom-level2-html/test_HTMLImageElement05.html | 135 + .../dom-level2-html/test_HTMLImageElement06.html | 137 + .../dom-level2-html/test_HTMLImageElement07.html | 135 + .../dom-level2-html/test_HTMLImageElement08.html | 137 + .../dom-level2-html/test_HTMLImageElement09.html | 135 + .../dom-level2-html/test_HTMLImageElement10.html | 135 + .../dom-level2-html/test_HTMLImageElement11.html | 137 + .../dom-level2-html/test_HTMLImageElement12.html | 135 + .../dom-level2-html/test_HTMLInputElement01.html | 139 + .../dom-level2-html/test_HTMLInputElement02.html | 139 + .../dom-level2-html/test_HTMLInputElement03.html | 138 + .../dom-level2-html/test_HTMLInputElement04.html | 139 + .../dom-level2-html/test_HTMLInputElement05.html | 139 + .../dom-level2-html/test_HTMLInputElement06.html | 139 + .../dom-level2-html/test_HTMLInputElement07.html | 139 + .../dom-level2-html/test_HTMLInputElement08.html | 139 + .../dom-level2-html/test_HTMLInputElement09.html | 137 + .../dom-level2-html/test_HTMLInputElement10.html | 139 + .../dom-level2-html/test_HTMLInputElement11.html | 139 + .../dom-level2-html/test_HTMLInputElement12.html | 139 + .../dom-level2-html/test_HTMLInputElement13.html | 139 + .../dom-level2-html/test_HTMLInputElement14.html | 139 + .../dom-level2-html/test_HTMLInputElement15.html | 139 + .../dom-level2-html/test_HTMLInputElement16.html | 137 + .../dom-level2-html/test_HTMLInputElement17.html | 137 + .../dom-level2-html/test_HTMLInputElement18.html | 139 + .../dom-level2-html/test_HTMLInputElement19.html | 126 + .../dom-level2-html/test_HTMLInputElement20.html | 126 + .../dom-level2-html/test_HTMLInputElement21.html | 133 + .../dom-level2-html/test_HTMLInputElement22.html | 127 + .../dom-level2-html/test_HTMLLIElement01.html | 135 + .../dom-level2-html/test_HTMLLIElement02.html | 135 + .../dom-level2-html/test_HTMLLabelElement01.html | 138 + .../dom-level2-html/test_HTMLLabelElement02.html | 137 + .../dom-level2-html/test_HTMLLabelElement03.html | 137 + .../dom-level2-html/test_HTMLLabelElement04.html | 139 + .../dom-level2-html/test_HTMLLegendElement01.html | 140 + .../dom-level2-html/test_HTMLLegendElement02.html | 137 + .../dom-level2-html/test_HTMLLegendElement03.html | 137 + .../dom-level2-html/test_HTMLLegendElement04.html | 135 + .../dom-level2-html/test_HTMLLinkElement01.html | 135 + .../dom-level2-html/test_HTMLLinkElement02.html | 137 + .../dom-level2-html/test_HTMLLinkElement03.html | 135 + .../dom-level2-html/test_HTMLLinkElement04.html | 135 + .../dom-level2-html/test_HTMLLinkElement05.html | 135 + .../dom-level2-html/test_HTMLLinkElement06.html | 135 + .../dom-level2-html/test_HTMLLinkElement07.html | 135 + .../dom-level2-html/test_HTMLLinkElement08.html | 135 + .../dom-level2-html/test_HTMLLinkElement09.html | 135 + .../dom-level2-html/test_HTMLMapElement01.html | 138 + .../dom-level2-html/test_HTMLMapElement02.html | 135 + .../dom-level2-html/test_HTMLMenuElement01.html | 137 + .../dom-level2-html/test_HTMLMetaElement01.html | 135 + .../dom-level2-html/test_HTMLMetaElement02.html | 135 + .../dom-level2-html/test_HTMLMetaElement03.html | 135 + .../dom-level2-html/test_HTMLMetaElement04.html | 135 + .../dom-level2-html/test_HTMLModElement01.html | 137 + .../dom-level2-html/test_HTMLModElement02.html | 135 + .../dom-level2-html/test_HTMLModElement03.html | 137 + .../dom-level2-html/test_HTMLModElement04.html | 135 + .../dom-level2-html/test_HTMLOListElement01.html | 137 + .../dom-level2-html/test_HTMLOListElement02.html | 135 + .../dom-level2-html/test_HTMLOListElement03.html | 135 + .../dom-level2-html/test_HTMLObjectElement01.html | 138 + .../dom-level2-html/test_HTMLObjectElement02.html | 137 + .../dom-level2-html/test_HTMLObjectElement03.html | 139 + .../dom-level2-html/test_HTMLObjectElement04.html | 137 + .../dom-level2-html/test_HTMLObjectElement05.html | 137 + .../dom-level2-html/test_HTMLObjectElement06.html | 139 + .../dom-level2-html/test_HTMLObjectElement07.html | 139 + .../dom-level2-html/test_HTMLObjectElement08.html | 137 + .../dom-level2-html/test_HTMLObjectElement09.html | 139 + .../dom-level2-html/test_HTMLObjectElement10.html | 139 + .../dom-level2-html/test_HTMLObjectElement11.html | 139 + .../dom-level2-html/test_HTMLObjectElement12.html | 139 + .../dom-level2-html/test_HTMLObjectElement13.html | 139 + .../dom-level2-html/test_HTMLObjectElement14.html | 139 + .../dom-level2-html/test_HTMLObjectElement15.html | 137 + .../dom-level2-html/test_HTMLObjectElement16.html | 139 + .../dom-level2-html/test_HTMLObjectElement17.html | 137 + .../dom-level2-html/test_HTMLObjectElement18.html | 139 + .../dom-level2-html/test_HTMLObjectElement19.html | 137 + .../dom-level2-html/test_HTMLObjectElement20.html | 133 + .../test_HTMLOptGroupElement01.html | 137 + .../test_HTMLOptGroupElement02.html | 135 + .../dom-level2-html/test_HTMLOptionElement01.html | 140 + .../dom-level2-html/test_HTMLOptionElement02.html | 139 + .../dom-level2-html/test_HTMLOptionElement03.html | 139 + .../dom-level2-html/test_HTMLOptionElement04.html | 137 + .../dom-level2-html/test_HTMLOptionElement05.html | 139 + .../dom-level2-html/test_HTMLOptionElement06.html | 139 + .../dom-level2-html/test_HTMLOptionElement07.html | 139 + .../dom-level2-html/test_HTMLOptionElement08.html | 139 + .../dom-level2-html/test_HTMLOptionElement09.html | 137 + .../test_HTMLOptionsCollection01.html | 144 + .../test_HTMLOptionsCollection02.html | 157 + .../test_HTMLOptionsCollection03.html | 158 + .../test_HTMLOptionsCollection04.html | 158 + .../test_HTMLOptionsCollection05.html | 160 + .../test_HTMLOptionsCollection06.html | 153 + .../test_HTMLOptionsCollection07.html | 157 + .../test_HTMLParagraphElement01.html | 135 + .../dom-level2-html/test_HTMLParamElement01.html | 135 + .../dom-level2-html/test_HTMLParamElement02.html | 135 + .../dom-level2-html/test_HTMLParamElement03.html | 137 + .../dom-level2-html/test_HTMLParamElement04.html | 137 + .../dom-level2-html/test_HTMLPreElement01.html | 135 + .../dom-level2-html/test_HTMLQuoteElement01.html | 137 + .../dom-level2-html/test_HTMLQuoteElement02.html | 139 + .../dom-level2-html/test_HTMLScriptElement01.html | 135 + .../dom-level2-html/test_HTMLScriptElement02.html | 137 + .../dom-level2-html/test_HTMLScriptElement03.html | 137 + .../dom-level2-html/test_HTMLScriptElement04.html | 135 + .../dom-level2-html/test_HTMLScriptElement05.html | 135 + .../dom-level2-html/test_HTMLScriptElement06.html | 128 + .../dom-level2-html/test_HTMLScriptElement07.html | 128 + .../dom-level2-html/test_HTMLSelectElement01.html | 139 + .../dom-level2-html/test_HTMLSelectElement02.html | 139 + .../dom-level2-html/test_HTMLSelectElement03.html | 146 + .../dom-level2-html/test_HTMLSelectElement04.html | 137 + .../dom-level2-html/test_HTMLSelectElement05.html | 137 + .../dom-level2-html/test_HTMLSelectElement06.html | 140 + .../dom-level2-html/test_HTMLSelectElement07.html | 139 + .../dom-level2-html/test_HTMLSelectElement08.html | 158 + .../dom-level2-html/test_HTMLSelectElement09.html | 139 + .../dom-level2-html/test_HTMLSelectElement10.html | 139 + .../dom-level2-html/test_HTMLSelectElement11.html | 139 + .../dom-level2-html/test_HTMLSelectElement12.html | 137 + .../dom-level2-html/test_HTMLSelectElement13.html | 139 + .../dom-level2-html/test_HTMLSelectElement14.html | 126 + .../dom-level2-html/test_HTMLSelectElement15.html | 126 + .../dom-level2-html/test_HTMLSelectElement16.html | 134 + .../dom-level2-html/test_HTMLSelectElement17.html | 134 + .../dom-level2-html/test_HTMLSelectElement18.html | 152 + .../dom-level2-html/test_HTMLSelectElement19.html | 156 + .../dom-level2-html/test_HTMLSelectElement20.html | 153 + .../dom-level2-html/test_HTMLStyleElement01.html | 135 + .../dom-level2-html/test_HTMLStyleElement02.html | 135 + .../dom-level2-html/test_HTMLStyleElement03.html | 135 + .../test_HTMLTableCaptionElement01.html | 137 + .../test_HTMLTableCellElement01.html | 137 + .../test_HTMLTableCellElement02.html | 137 + .../test_HTMLTableCellElement03.html | 137 + .../test_HTMLTableCellElement04.html | 137 + .../test_HTMLTableCellElement05.html | 139 + .../test_HTMLTableCellElement06.html | 139 + .../test_HTMLTableCellElement07.html | 139 + .../test_HTMLTableCellElement08.html | 139 + .../test_HTMLTableCellElement09.html | 139 + .../test_HTMLTableCellElement10.html | 139 + .../test_HTMLTableCellElement11.html | 139 + .../test_HTMLTableCellElement12.html | 139 + .../test_HTMLTableCellElement13.html | 139 + .../test_HTMLTableCellElement14.html | 139 + .../test_HTMLTableCellElement15.html | 139 + .../test_HTMLTableCellElement16.html | 139 + .../test_HTMLTableCellElement17.html | 139 + .../test_HTMLTableCellElement18.html | 139 + .../test_HTMLTableCellElement19.html | 137 + .../test_HTMLTableCellElement20.html | 137 + .../test_HTMLTableCellElement21.html | 137 + .../test_HTMLTableCellElement22.html | 137 + .../test_HTMLTableCellElement23.html | 139 + .../test_HTMLTableCellElement24.html | 139 + .../test_HTMLTableCellElement25.html | 137 + .../test_HTMLTableCellElement26.html | 137 + .../test_HTMLTableCellElement27.html | 137 + .../test_HTMLTableCellElement28.html | 137 + .../test_HTMLTableCellElement29.html | 137 + .../test_HTMLTableCellElement30.html | 137 + .../test_HTMLTableColElement01.html | 139 + .../test_HTMLTableColElement02.html | 139 + .../test_HTMLTableColElement03.html | 139 + .../test_HTMLTableColElement04.html | 139 + .../test_HTMLTableColElement05.html | 137 + .../test_HTMLTableColElement06.html | 137 + .../test_HTMLTableColElement07.html | 139 + .../test_HTMLTableColElement08.html | 139 + .../test_HTMLTableColElement09.html | 139 + .../test_HTMLTableColElement10.html | 139 + .../test_HTMLTableColElement11.html | 137 + .../test_HTMLTableColElement12.html | 137 + .../dom-level2-html/test_HTMLTableElement01.html | 140 + .../dom-level2-html/test_HTMLTableElement02.html | 139 + .../dom-level2-html/test_HTMLTableElement03.html | 140 + .../dom-level2-html/test_HTMLTableElement04.html | 139 + .../dom-level2-html/test_HTMLTableElement05.html | 140 + .../dom-level2-html/test_HTMLTableElement06.html | 139 + .../dom-level2-html/test_HTMLTableElement07.html | 156 + .../dom-level2-html/test_HTMLTableElement08.html | 153 + .../dom-level2-html/test_HTMLTableElement09.html | 157 + .../dom-level2-html/test_HTMLTableElement10.html | 139 + .../dom-level2-html/test_HTMLTableElement11.html | 137 + .../dom-level2-html/test_HTMLTableElement12.html | 137 + .../dom-level2-html/test_HTMLTableElement13.html | 139 + .../dom-level2-html/test_HTMLTableElement14.html | 139 + .../dom-level2-html/test_HTMLTableElement15.html | 137 + .../dom-level2-html/test_HTMLTableElement16.html | 137 + .../dom-level2-html/test_HTMLTableElement17.html | 139 + .../dom-level2-html/test_HTMLTableElement18.html | 137 + .../dom-level2-html/test_HTMLTableElement19.html | 149 + .../dom-level2-html/test_HTMLTableElement20.html | 148 + .../dom-level2-html/test_HTMLTableElement21.html | 164 + .../dom-level2-html/test_HTMLTableElement22.html | 149 + .../dom-level2-html/test_HTMLTableElement23.html | 148 + .../dom-level2-html/test_HTMLTableElement24.html | 164 + .../dom-level2-html/test_HTMLTableElement25.html | 145 + .../dom-level2-html/test_HTMLTableElement26.html | 150 + .../dom-level2-html/test_HTMLTableElement27.html | 141 + .../dom-level2-html/test_HTMLTableElement28.html | 159 + .../dom-level2-html/test_HTMLTableElement29.html | 163 + .../dom-level2-html/test_HTMLTableElement30.html | 171 + .../dom-level2-html/test_HTMLTableElement31.html | 169 + .../dom-level2-html/test_HTMLTableElement32.html | 150 + .../dom-level2-html/test_HTMLTableElement33.html | 148 + .../dom-level2-html/test_HTMLTableElement34.html | 151 + .../dom-level2-html/test_HTMLTableElement35.html | 151 + .../dom-level2-html/test_HTMLTableElement36.html | 150 + .../dom-level2-html/test_HTMLTableElement37.html | 152 + .../dom-level2-html/test_HTMLTableElement38.html | 150 + .../dom-level2-html/test_HTMLTableElement39.html | 177 + .../dom-level2-html/test_HTMLTableElement40.html | 150 + .../test_HTMLTableRowElement01.html | 143 + .../test_HTMLTableRowElement02.html | 139 + .../test_HTMLTableRowElement03.html | 139 + .../test_HTMLTableRowElement04.html | 139 + .../test_HTMLTableRowElement05.html | 140 + .../test_HTMLTableRowElement06.html | 139 + .../test_HTMLTableRowElement07.html | 137 + .../test_HTMLTableRowElement08.html | 137 + .../test_HTMLTableRowElement09.html | 137 + .../test_HTMLTableRowElement10.html | 139 + .../test_HTMLTableRowElement11.html | 173 + .../test_HTMLTableRowElement12.html | 171 + .../test_HTMLTableRowElement13.html | 172 + .../test_HTMLTableRowElement14.html | 172 + .../test_HTMLTableRowElement15.html | 151 + .../test_HTMLTableRowElement16.html | 151 + .../test_HTMLTableRowElement17.html | 150 + .../test_HTMLTableRowElement18.html | 150 + .../test_HTMLTableRowElement19.html | 150 + .../test_HTMLTableRowElement20.html | 177 + .../test_HTMLTableRowElement21.html | 176 + .../test_HTMLTableSectionElement01.html | 139 + .../test_HTMLTableSectionElement02.html | 139 + .../test_HTMLTableSectionElement03.html | 139 + .../test_HTMLTableSectionElement04.html | 139 + .../test_HTMLTableSectionElement05.html | 139 + .../test_HTMLTableSectionElement06.html | 139 + .../test_HTMLTableSectionElement07.html | 137 + .../test_HTMLTableSectionElement08.html | 137 + .../test_HTMLTableSectionElement09.html | 137 + .../test_HTMLTableSectionElement10.html | 139 + .../test_HTMLTableSectionElement11.html | 139 + .../test_HTMLTableSectionElement12.html | 139 + .../test_HTMLTableSectionElement13.html | 140 + .../test_HTMLTableSectionElement14.html | 140 + .../test_HTMLTableSectionElement15.html | 140 + .../test_HTMLTableSectionElement16.html | 151 + .../test_HTMLTableSectionElement17.html | 151 + .../test_HTMLTableSectionElement18.html | 151 + .../test_HTMLTableSectionElement19.html | 153 + .../test_HTMLTableSectionElement20.html | 153 + .../test_HTMLTableSectionElement21.html | 155 + .../test_HTMLTableSectionElement22.html | 150 + .../test_HTMLTableSectionElement23.html | 150 + .../test_HTMLTableSectionElement24.html | 150 + .../test_HTMLTableSectionElement25.html | 151 + .../test_HTMLTableSectionElement26.html | 151 + .../test_HTMLTableSectionElement27.html | 152 + .../test_HTMLTableSectionElement28.html | 152 + .../test_HTMLTableSectionElement29.html | 150 + .../test_HTMLTableSectionElement30.html | 159 + .../test_HTMLTableSectionElement31.html | 156 + .../test_HTMLTextAreaElement01.html | 139 + .../test_HTMLTextAreaElement02.html | 140 + .../test_HTMLTextAreaElement03.html | 139 + .../test_HTMLTextAreaElement04.html | 139 + .../test_HTMLTextAreaElement05.html | 137 + .../test_HTMLTextAreaElement06.html | 139 + .../test_HTMLTextAreaElement07.html | 139 + .../test_HTMLTextAreaElement08.html | 137 + .../test_HTMLTextAreaElement09.html | 137 + .../test_HTMLTextAreaElement10.html | 139 + .../test_HTMLTextAreaElement11.html | 139 + .../test_HTMLTextAreaElement12.html | 139 + .../test_HTMLTextAreaElement13.html | 126 + .../test_HTMLTextAreaElement14.html | 126 + .../test_HTMLTextAreaElement15.html | 126 + .../dom-level2-html/test_HTMLTitleElement01.html | 135 + .../dom-level2-html/test_HTMLUListElement01.html | 137 + .../dom-level2-html/test_HTMLUListElement02.html | 135 + .../mochitest/dom-level2-html/test_alltests.html | 3933 ++++++++++++++++ .../mochitest/dom-level2-html/test_anchor01.html | 133 + .../mochitest/dom-level2-html/test_anchor02.html | 133 + .../mochitest/dom-level2-html/test_anchor03.html | 133 + .../mochitest/dom-level2-html/test_anchor04.html | 133 + .../mochitest/dom-level2-html/test_anchor05.html | 133 + .../mochitest/dom-level2-html/test_anchor06.html | 133 + .../mochitest/dom-level2-html/test_area01.html | 131 + .../mochitest/dom-level2-html/test_area02.html | 131 + .../mochitest/dom-level2-html/test_area03.html | 131 + .../mochitest/dom-level2-html/test_area04.html | 131 + .../mochitest/dom-level2-html/test_body01.html | 133 + .../mochitest/dom-level2-html/test_button01.html | 131 + .../mochitest/dom-level2-html/test_button02.html | 136 + .../mochitest/dom-level2-html/test_button03.html | 138 + .../mochitest/dom-level2-html/test_button04.html | 136 + .../mochitest/dom-level2-html/test_button05.html | 133 + .../mochitest/dom-level2-html/test_button06.html | 133 + .../mochitest/dom-level2-html/test_button07.html | 133 + .../mochitest/dom-level2-html/test_button08.html | 133 + .../mochitest/dom-level2-html/test_button09.html | 133 + .../mochitest/dom-level2-html/test_dlist01.html | 131 + .../mochitest/dom-level2-html/test_doc01.html | 126 + .../dom-level2-html/test_hasFeature01.html | 113 + .../dom-level2-html/test_hasFeature02.html | 112 + .../dom-level2-html/test_hasFeature03.html | 115 + .../dom-level2-html/test_hasFeature04.html | 114 + .../dom-level2-html/test_hasFeature05.html | 113 + .../dom-level2-html/test_hasFeature06.html | 112 + .../mochitest/dom-level2-html/test_object01.html | 133 + .../mochitest/dom-level2-html/test_object02.html | 133 + .../mochitest/dom-level2-html/test_object03.html | 133 + .../mochitest/dom-level2-html/test_object04.html | 133 + .../mochitest/dom-level2-html/test_object05.html | 133 + .../mochitest/dom-level2-html/test_object06.html | 134 + .../mochitest/dom-level2-html/test_object07.html | 131 + .../mochitest/dom-level2-html/test_object08.html | 133 + .../mochitest/dom-level2-html/test_object09.html | 133 + .../mochitest/dom-level2-html/test_object10.html | 133 + .../mochitest/dom-level2-html/test_object11.html | 133 + .../mochitest/dom-level2-html/test_object12.html | 131 + .../mochitest/dom-level2-html/test_object13.html | 133 + .../mochitest/dom-level2-html/test_object14.html | 131 + .../mochitest/dom-level2-html/test_object15.html | 133 + .../mochitest/dom-level2-html/test_table01.html | 133 + .../mochitest/dom-level2-html/test_table02.html | 136 + .../mochitest/dom-level2-html/test_table03.html | 136 + .../mochitest/dom-level2-html/test_table04.html | 136 + .../mochitest/dom-level2-html/test_table06.html | 136 + .../mochitest/dom-level2-html/test_table07.html | 139 + .../mochitest/dom-level2-html/test_table08.html | 136 + .../mochitest/dom-level2-html/test_table09.html | 136 + .../mochitest/dom-level2-html/test_table10.html | 136 + .../mochitest/dom-level2-html/test_table12.html | 136 + .../mochitest/dom-level2-html/test_table15.html | 139 + .../mochitest/dom-level2-html/test_table17.html | 136 + .../mochitest/dom-level2-html/test_table18.html | 133 + .../mochitest/dom-level2-html/test_table19.html | 135 + .../mochitest/dom-level2-html/test_table20.html | 133 + .../mochitest/dom-level2-html/test_table21.html | 133 + .../mochitest/dom-level2-html/test_table22.html | 133 + .../mochitest/dom-level2-html/test_table23.html | 133 + .../mochitest/dom-level2-html/test_table24.html | 133 + .../mochitest/dom-level2-html/test_table25.html | 133 + .../mochitest/dom-level2-html/test_table26.html | 131 + .../mochitest/dom-level2-html/test_table27.html | 133 + .../mochitest/dom-level2-html/test_table28.html | 133 + .../mochitest/dom-level2-html/test_table29.html | 133 + .../mochitest/dom-level2-html/test_table30.html | 133 + .../mochitest/dom-level2-html/test_table31.html | 133 + .../mochitest/dom-level2-html/test_table32.html | 133 + .../mochitest/dom-level2-html/test_table33.html | 133 + .../mochitest/dom-level2-html/test_table34.html | 133 + .../mochitest/dom-level2-html/test_table35.html | 133 + .../mochitest/dom-level2-html/test_table36.html | 133 + .../mochitest/dom-level2-html/test_table37.html | 131 + .../mochitest/dom-level2-html/test_table38.html | 133 + .../mochitest/dom-level2-html/test_table39.html | 133 + .../mochitest/dom-level2-html/test_table40.html | 133 + .../mochitest/dom-level2-html/test_table41.html | 133 + .../mochitest/dom-level2-html/test_table42.html | 133 + .../mochitest/dom-level2-html/test_table43.html | 133 + .../mochitest/dom-level2-html/test_table44.html | 133 + .../mochitest/dom-level2-html/test_table45.html | 133 + .../mochitest/dom-level2-html/test_table46.html | 133 + .../mochitest/dom-level2-html/test_table47.html | 133 + .../mochitest/dom-level2-html/test_table48.html | 133 + .../mochitest/dom-level2-html/test_table49.html | 133 + .../mochitest/dom-level2-html/test_table50.html | 133 + .../mochitest/dom-level2-html/test_table51.html | 133 + .../mochitest/dom-level2-html/test_table52.html | 133 + .../mochitest/dom-level2-html/test_table53.html | 133 + .../mochitest/fetch/common_readableStreams.js | 414 ++ .../mochitest/fetch/common_temporaryFileBlob.js | 146 + dom/tests/mochitest/fetch/empty.js | 0 dom/tests/mochitest/fetch/empty.js^headers^ | 1 + dom/tests/mochitest/fetch/fetch_test_framework.js | 166 + .../fetch/file_fetch_cached_redirect.html | 1 + .../fetch/file_fetch_cached_redirect.html^headers^ | 3 + .../fetch/file_fetch_csp_block_frame.html | 13 + .../fetch/file_fetch_csp_block_frame.html^headers^ | 2 + dom/tests/mochitest/fetch/file_fetch_observer.html | 146 + .../mochitest/fetch/iframe_readableStreams.html | 4 + dom/tests/mochitest/fetch/message_receiver.html | 6 + dom/tests/mochitest/fetch/mochitest.toml | 165 + dom/tests/mochitest/fetch/nested_worker_wrapper.js | 32 + dom/tests/mochitest/fetch/reroute.html | 22 + dom/tests/mochitest/fetch/reroute.js | 27 + dom/tests/mochitest/fetch/reroute.js^headers^ | 1 + dom/tests/mochitest/fetch/slow.sjs | 13 + dom/tests/mochitest/fetch/sw_reroute.js | 47 + dom/tests/mochitest/fetch/test_fetch_basic.html | 23 + dom/tests/mochitest/fetch/test_fetch_basic.js | 179 + .../mochitest/fetch/test_fetch_basic_http.html | 23 + dom/tests/mochitest/fetch/test_fetch_basic_http.js | 280 ++ .../mochitest/fetch/test_fetch_basic_http2.html | 23 + .../test_fetch_basic_http2_sw_empty_reroute.html | 23 + .../fetch/test_fetch_basic_http2_sw_reroute.html | 23 + .../test_fetch_basic_http_sw_empty_reroute.html | 23 + .../fetch/test_fetch_basic_http_sw_reroute.html | 23 + .../fetch/test_fetch_basic_sw_empty_reroute.html | 23 + .../fetch/test_fetch_basic_sw_reroute.html | 23 + .../fetch/test_fetch_cached_redirect.html | 22 + .../mochitest/fetch/test_fetch_cached_redirect.js | 17 + dom/tests/mochitest/fetch/test_fetch_cors.html | 23 + dom/tests/mochitest/fetch/test_fetch_cors.js | 1883 ++++++++ .../fetch/test_fetch_cors_sw_empty_reroute.html | 23 + .../fetch/test_fetch_cors_sw_reroute.html | 23 + .../mochitest/fetch/test_fetch_csp_block.html | 50 + dom/tests/mochitest/fetch/test_fetch_observer.html | 40 + .../fetch/test_fetch_user_control_rp.html | 103 + .../mochitest/fetch/test_formdataparsing.html | 23 + dom/tests/mochitest/fetch/test_formdataparsing.js | 369 ++ .../fetch/test_formdataparsing_sw_reroute.html | 23 + dom/tests/mochitest/fetch/test_headers.html | 17 + dom/tests/mochitest/fetch/test_headers_common.js | 327 ++ .../mochitest/fetch/test_headers_mainthread.html | 155 + .../mochitest/fetch/test_headers_sw_reroute.html | 17 + .../mochitest/fetch/test_readableStreams.html | 85 + dom/tests/mochitest/fetch/test_request.html | 23 + dom/tests/mochitest/fetch/test_request.js | 744 ++++ .../mochitest/fetch/test_request_context.html | 19 + .../mochitest/fetch/test_request_sw_reroute.html | 23 + dom/tests/mochitest/fetch/test_response.html | 23 + dom/tests/mochitest/fetch/test_response.js | 346 ++ .../mochitest/fetch/test_responseReadyForWasm.html | 44 + .../mochitest/fetch/test_response_sw_reroute.html | 23 + .../mochitest/fetch/test_temporaryFileBlob.html | 41 + .../fetch/test_webassembly_streaming.html | 22 + dom/tests/mochitest/fetch/utils.js | 51 + .../mochitest/fetch/worker_readableStreams.js | 26 + .../mochitest/fetch/worker_temporaryFileBlob.js | 31 + dom/tests/mochitest/fetch/worker_wrapper.js | 85 + dom/tests/mochitest/fs/chrome.toml | 4 + dom/tests/mochitest/fs/page_blank.html | 6 + dom/tests/mochitest/fs/test_privateWin.html | 56 + dom/tests/mochitest/gamepad/gamepad_frame.html | 22 + .../mochitest/gamepad/gamepad_frame_state.html | 16 + dom/tests/mochitest/gamepad/mochitest.toml | 35 + dom/tests/mochitest/gamepad/mock_gamepad.js | 19 + .../mochitest/gamepad/test_check_timestamp.html | 20 + .../gamepad/test_check_timestamp_iframe.html | 71 + dom/tests/mochitest/gamepad/test_gamepad.html | 20 + .../gamepad/test_gamepad_connect_events.html | 22 + .../test_gamepad_connect_events_iframe.html | 83 + .../mochitest/gamepad/test_gamepad_extensions.html | 19 + .../gamepad/test_gamepad_extensions_iframe.html | 171 + .../gamepad/test_gamepad_frame_state_sync.html | 19 + .../test_gamepad_frame_state_sync_iframe.html | 87 + .../gamepad/test_gamepad_hidden_frame.html | 82 + .../mochitest/gamepad/test_gamepad_iframe.html | 81 + .../test_gamepad_multitouch_crossorigin.html | 20 + ...test_gamepad_multitouch_crossorigin_iframe.html | 204 + .../mochitest/gamepad/test_navigator_gamepads.html | 19 + .../gamepad/test_navigator_gamepads_iframe.html | 123 + dom/tests/mochitest/general/497633.html | 35 + dom/tests/mochitest/general/chrome.toml | 18 + dom/tests/mochitest/general/cssA.css | 0 dom/tests/mochitest/general/cssB.css | 2 + dom/tests/mochitest/general/cssC.css | 0 dom/tests/mochitest/general/embed_navigate.html | 1 + dom/tests/mochitest/general/emptyCssFile2.css | 1 + dom/tests/mochitest/general/fail.png | Bin 0 -> 91 bytes dom/tests/mochitest/general/file_bug628069.html | 16 + dom/tests/mochitest/general/file_clonewrapper.html | 35 + .../general/file_domWindowUtils_scrollbarSize.html | 7 + dom/tests/mochitest/general/file_focusrings.html | 5 + .../general/file_frameElementWrapping.html | 32 + .../mochitest/general/file_moving_nodeList.html | 31 + dom/tests/mochitest/general/file_moving_xhr.html | 28 + .../general/file_resource_timing_nocors.html | 181 + dom/tests/mochitest/general/frameSelectEvents.html | 929 ++++ .../mochitest/general/frameStorageAllowed.html | 22 + .../mochitest/general/frameStorageChrome.html | 20 + .../general/frameStorageNullprincipal.sjs | 40 + .../mochitest/general/frameStoragePrevented.html | 47 + dom/tests/mochitest/general/generateCss.sjs | 39 + dom/tests/mochitest/general/historyframes.html | 179 + dom/tests/mochitest/general/image_100.png | Bin 0 -> 91 bytes dom/tests/mochitest/general/image_200.png | Bin 0 -> 100 bytes dom/tests/mochitest/general/image_50.png | Bin 0 -> 85 bytes .../general/importsSameAndCrossOrigin.css | 3 + dom/tests/mochitest/general/mochitest.toml | 281 ++ dom/tests/mochitest/general/navigation_timing.html | 99 + dom/tests/mochitest/general/pass.apng | Bin 0 -> 188 bytes .../general/performance_timeline_main_test.html | 106 + dom/tests/mochitest/general/postback.html | 16 + dom/tests/mochitest/general/res0.resource | 0 dom/tests/mochitest/general/res1.resource | 0 dom/tests/mochitest/general/res1.resource^headers^ | 2 + dom/tests/mochitest/general/res2.resource | 0 dom/tests/mochitest/general/res2.resource^headers^ | 2 + dom/tests/mochitest/general/res3.resource | 0 dom/tests/mochitest/general/res3.resource^headers^ | 2 + dom/tests/mochitest/general/res4.resource | 0 dom/tests/mochitest/general/res4.resource^headers^ | 3 + dom/tests/mochitest/general/res5.resource | 0 dom/tests/mochitest/general/res5.resource^headers^ | 2 + dom/tests/mochitest/general/res6.resource | 0 dom/tests/mochitest/general/res6.resource^headers^ | 2 + dom/tests/mochitest/general/res7.resource | 0 dom/tests/mochitest/general/res7.resource^headers^ | 2 + dom/tests/mochitest/general/res8.resource | 0 dom/tests/mochitest/general/res8.resource^headers^ | 2 + dom/tests/mochitest/general/resource_timing.js | 0 .../general/resource_timing_cross_origin.html | 191 + .../mochitest/general/resource_timing_iframe.html | 50 + .../general/resource_timing_location_navigate.html | 3 + .../general/resource_timing_main_test.html | 290 ++ .../general/resource_timing_meta_refresh.html | 10 + .../mochitest/general/resource_timing_nocors.html | 88 + .../general/resource_timing_redirect.html | 11 + .../general/resource_timing_redirect.html^headers^ | 2 + .../mochitest/general/start_historyframe.html | 1 + .../mochitest/general/storagePermissionsUtils.js | 283 ++ dom/tests/mochitest/general/test-data.json | 1 + dom/tests/mochitest/general/test-data2.json | 1 + dom/tests/mochitest/general/test_497898.html | 41 + .../mochitest/general/test_CCW_optimization.html | 50 + dom/tests/mochitest/general/test_DOMMatrix.html | 717 +++ .../mochitest/general/test_WebKitCSSMatrix.html | 339 ++ dom/tests/mochitest/general/test_bug1161721.html | 32 + dom/tests/mochitest/general/test_bug1170911.html | 90 + dom/tests/mochitest/general/test_bug1208217.html | 31 + dom/tests/mochitest/general/test_bug1313753.html | 63 + dom/tests/mochitest/general/test_bug1434273.html | 36 + dom/tests/mochitest/general/test_bug504220.html | 65 + dom/tests/mochitest/general/test_bug628069_1.html | 50 + dom/tests/mochitest/general/test_bug628069_2.html | 41 + dom/tests/mochitest/general/test_bug631440.html | 39 + dom/tests/mochitest/general/test_bug653364.html | 39 + dom/tests/mochitest/general/test_bug861217.html | 115 + dom/tests/mochitest/general/test_clientRects.html | 127 + .../general/test_clipboard_disallowed.html | 69 + .../mochitest/general/test_clipboard_events.html | 37 + dom/tests/mochitest/general/test_consoleAPI.html | 66 + .../general/test_contentViewer_overrideDPPX.html | 428 ++ .../general/test_devicePixelRatio_with_zoom.html | 84 + .../mochitest/general/test_domWindowUtils.html | 183 + .../general/test_domWindowUtils_scrollXY.html | 90 + .../general/test_domWindowUtils_scrollbarSize.html | 65 + dom/tests/mochitest/general/test_donottrack.html | 72 + .../general/test_focus_legend_noparent.html | 36 + .../general/test_focus_scrollchildframe.html | 24 + dom/tests/mochitest/general/test_focusrings.xhtml | 220 + dom/tests/mochitest/general/test_for_of.html | 25 + .../general/test_frameElementWrapping.html | 44 + .../general/test_framedhistoryframes.html | 31 + .../mochitest/general/test_img_mutations.html | 239 + dom/tests/mochitest/general/test_innerScreen.xhtml | 83 + dom/tests/mochitest/general/test_interfaces.html | 28 + dom/tests/mochitest/general/test_interfaces.js | 2091 +++++++++ .../general/test_interfaces_secureContext.html | 28 + .../general/test_media_queries_with_zoom.html | 52 + .../mochitest/general/test_navigation_timing.html | 36 + .../mochitest/general/test_network_events.html | 72 + .../test_nodeAdoption_chrome_boundary.xhtml | 28 + dom/tests/mochitest/general/test_offsets.css | 3 + dom/tests/mochitest/general/test_offsets.html | 100 + dom/tests/mochitest/general/test_offsets.js | 332 ++ dom/tests/mochitest/general/test_offsets.xhtml | 98 + dom/tests/mochitest/general/test_outerHTML.html | 74 + dom/tests/mochitest/general/test_outerHTML.xhtml | 75 + .../mochitest/general/test_paste_selection.html | 122 + .../test_performance_nav_timing_before_onload.html | 30 + .../mochitest/general/test_performance_now.html | 60 + .../general/test_performance_timeline.html | 35 + dom/tests/mochitest/general/test_picture_apng.html | 77 + .../mochitest/general/test_picture_mutations.html | 311 ++ .../mochitest/general/test_pointerPreserves3D.html | 25 + .../general/test_pointerPreserves3DClip.html | 55 + .../test_pointerPreserves3DPerspective.html | 29 + dom/tests/mochitest/general/test_resizeby.html | 64 + .../mochitest/general/test_resource_timing.html | 40 + .../general/test_resource_timing_cross_origin.html | 47 + ...test_resource_timing_cross_origin_navigate.html | 73 + .../general/test_resource_timing_frameset.html | 29 + .../general/test_resource_timing_nocors.html | 37 + dom/tests/mochitest/general/test_selectevents.html | 31 + .../general/test_showModalDialog_removed.html | 31 + .../mochitest/general/test_spacetopagedown.html | 75 + .../general/test_storagePermissionsAccept.html | 44 + .../test_storagePermissionsLimitForeign.html | 46 + .../general/test_storagePermissionsReject.html | 44 + .../test_storagePermissionsRejectForeign.html | 44 + dom/tests/mochitest/general/test_stylesheetPI.html | 37 + ...est_toggling_performance_navigation_timing.html | 47 + dom/tests/mochitest/general/test_vibrator.html | 148 + .../mochitest/general/test_windowProperties.html | 28 + .../general/test_windowedhistoryframes.html | 32 + dom/tests/mochitest/general/url1_historyframe.html | 1 + dom/tests/mochitest/general/url2_historyframe.html | 1 + .../mochitest/general/window_clipboard_events.html | 1239 ++++++ .../general/window_storagePermissions.html | 38 + .../mochitest/general/workerStorageAllowed.js | 78 + .../mochitest/general/workerStoragePrevented.js | 75 + dom/tests/mochitest/geolocation/chrome.toml | 7 + .../mochitest/geolocation/crossorigin_iframe.html | 33 + .../mochitest/geolocation/file_featurePolicy.html | 47 + dom/tests/mochitest/geolocation/geolocation.html | 13 + .../mochitest/geolocation/geolocation_common.js | 154 + dom/tests/mochitest/geolocation/mochitest.toml | 100 + .../mochitest/geolocation/network_geolocation.sjs | 79 + dom/tests/mochitest/geolocation/popup.html | 19 + .../mochitest/geolocation/test_allowCurrent.html | 41 + .../mochitest/geolocation/test_allowWatch.html | 44 + .../mochitest/geolocation/test_cachedPosition.html | 83 + .../mochitest/geolocation/test_cancelCurrent.html | 45 + .../mochitest/geolocation/test_cancelWatch.html | 49 + .../mochitest/geolocation/test_clearWatch.html | 76 + .../geolocation/test_clearWatchBeforeAllowing.html | 62 + .../geolocation/test_clearWatch_invalid.html | 47 + .../geolocation/test_crossorigin_iframe.html | 61 + .../geolocation/test_enableHighAccuracy.html | 73 + .../mochitest/geolocation/test_errorcheck.html | 52 + .../mochitest/geolocation/test_featurePolicy.html | 51 + .../mochitest/geolocation/test_garbageWatch.html | 56 + ...GetCurrentPositionBlockedInInsecureContext.html | 47 + ...t_geoWatchPositionBlockedInInsecureContext.html | 51 + ..._geolocation_is_undefined_when_pref_is_off.html | 36 + ...ation_is_undefined_when_pref_is_off_iframe.html | 28 + .../geolocation/test_handlerSpinsEventLoop.html | 70 + dom/tests/mochitest/geolocation/test_hidden.html | 110 + .../geolocation/test_manyCurrentConcurrent.html | 60 + .../geolocation/test_manyCurrentSerial.html | 47 + .../geolocation/test_manyWatchConcurrent.html | 60 + .../geolocation/test_manyWatchSerial.html | 56 + .../mochitest/geolocation/test_manyWindows.html | 67 + .../geolocation/test_native_provider.html | 70 + .../geolocation/test_not_fully_active.html | 93 + .../geolocation/test_optional_api_params.html | 126 + dom/tests/mochitest/geolocation/test_shutdown.html | 63 + .../mochitest/geolocation/test_timeoutCurrent.html | 56 + .../mochitest/geolocation/test_timeoutWatch.html | 65 + .../geolocation/test_timerRestartWatch.html | 75 + .../mochitest/geolocation/test_windowClose.html | 36 + .../test_worseAccuracyDoesNotBlockCallback.html | 51 + dom/tests/mochitest/geolocation/windowTest.html | 44 + dom/tests/mochitest/integer-gemm/mochitest.toml | 3 + .../integer-gemm/test_unavailable_for_webpage.html | 29 + dom/tests/mochitest/keyhandling/browsertest.html | 108 + dom/tests/mochitest/keyhandling/chrome.toml | 22 + dom/tests/mochitest/keyhandling/mochitest.toml | 12 + dom/tests/mochitest/keyhandling/test_browser.xhtml | 252 ++ dom/tests/mochitest/keyhandling/test_editor.xhtml | 268 ++ dom/tests/mochitest/keyhandling/test_input.html | 226 + dom/tests/mochitest/keyhandling/test_textarea.html | 226 + .../mochitest/keyhandling/test_windowed.xhtml | 33 + dom/tests/mochitest/localstorage/chrome.toml | 14 + .../localstorage/file_tryAccessSessionStorage.html | 10 + .../mochitest/localstorage/frameChromeSlave.html | 9 + dom/tests/mochitest/localstorage/frameKeySync.html | 51 + .../frameLocalStorageCookieSettings.html | 26 + .../localstorage/frameLocalStorageSessionOnly.html | 8 + .../mochitest/localstorage/frameMasterEqual.html | 56 + .../localstorage/frameMasterNotEqual.html | 47 + dom/tests/mochitest/localstorage/frameOrder.html | 28 + dom/tests/mochitest/localstorage/frameQuota.html | 97 + .../localstorage/frameQuotaSessionOnly.html | 101 + dom/tests/mochitest/localstorage/frameReplace.html | 72 + .../mochitest/localstorage/frameSlaveEqual.html | 51 + .../mochitest/localstorage/frameSlaveNotEqual.html | 44 + .../mochitest/localstorage/interOriginFrame.js | 53 + .../mochitest/localstorage/interOriginTest.js | 41 + .../mochitest/localstorage/interOriginTest2.js | 53 + .../mochitest/localstorage/localStorageCommon.js | 131 + dom/tests/mochitest/localstorage/mochitest.toml | 103 + dom/tests/mochitest/localstorage/page_blank.html | 6 + .../mochitest/localstorage/test_brokenUTF-16.html | 100 + .../localstorage/test_bug600307-DBOps.html | 178 + .../mochitest/localstorage/test_bug746272-1.html | 32 + .../mochitest/localstorage/test_bug746272-2.html | 31 + .../mochitest/localstorage/test_cookieBlock.html | 53 + .../mochitest/localstorage/test_embededNulls.html | 40 + dom/tests/mochitest/localstorage/test_keySync.html | 33 + .../localstorage/test_localStorageBase.html | 247 ++ ...ocalStorageBasePrivateBrowsing_perwindowpb.html | 256 ++ .../test_localStorageBaseSessionOnly.html | 211 + .../test_localStorageCookieSettings.html | 75 + .../localstorage/test_localStorageEnablePref.html | 65 + .../localstorage/test_localStorageFromChrome.xhtml | 60 + .../localstorage/test_localStorageKeyOrder.html | 73 + .../localstorage/test_localStorageOriginsDiff.html | 41 + .../test_localStorageOriginsDomainDiffs.html | 41 + .../test_localStorageOriginsEquals.html | 42 + .../test_localStorageOriginsPortDiffs.html | 41 + .../test_localStorageOriginsSchemaDiffs.html | 41 + .../localstorage/test_localStorageQuota.html | 136 + ...calStorageQuotaPrivateBrowsing_perwindowpb.html | 189 + .../test_localStorageQuotaSessionOnly.html | 134 + .../test_localStorageQuotaSessionOnly2.html | 98 + .../localstorage/test_localStorageReplace.html | 80 + .../localstorage/test_storageConstructor.html | 35 + dom/tests/mochitest/localstorage/windowProxy.html | 3 + .../mochitest/orientation/bug507902-frame.html | 30 + dom/tests/mochitest/orientation/mochitest.toml | 4 + .../mochitest/orientation/test_bug507902.html | 36 + .../file_allowPointerLockSandboxFlag.html | 96 + .../pointerlock/file_changeLockElement.html | 115 + .../mochitest/pointerlock/file_childIframe.html | 134 + .../mochitest/pointerlock/file_doubleLock.html | 64 + .../mochitest/pointerlock/file_escapeKey.html | 77 + .../pointerlock/file_infiniteMovement.html | 114 + .../mochitest/pointerlock/file_locksvgelement.html | 62 + .../mochitest/pointerlock/file_movementXY.html | 106 + .../pointerlock/file_nestedFullScreen.html | 76 + .../pointerlock/file_pointerLockPref.html | 75 + .../file_pointerlock-api-with-shadow.html | 110 + .../pointerlock/file_pointerlock-api.html | 104 + .../file_pointerlock_xorigin_iframe.html | 125 + ...pointerlock_xorigin_iframe_no_user_gesture.html | 95 + ...ile_pointerlock_xorigin_iframe_not_focused.html | 112 + .../pointerlock/file_pointerlockerror.html | 41 + .../mochitest/pointerlock/file_removedFromDOM.html | 95 + .../pointerlock/file_retargetMouseEvents.html | 212 + .../pointerlock/file_screenClientXYConst.html | 143 + .../pointerlock/file_suppressSomeMouseEvents.html | 158 + .../pointerlock/file_targetOutOfFocus.html | 69 + .../mochitest/pointerlock/file_withoutDOM.html | 54 + .../mochitest/pointerlock/iframe_differentDOM.html | 7 + dom/tests/mochitest/pointerlock/mochitest.toml | 49 + .../mochitest/pointerlock/pointerlock_utils.js | 112 + .../test_closewindow-with-pointerlock.html | 51 + .../pointerlock/test_pointerlock-api.html | 113 + .../pointerlock/test_pointerlock_focus.html | 111 + ..._pointerlock_target_not_in_active_document.html | 77 + .../test_pointerlock_xorigin_iframe.html | 59 + dom/tests/mochitest/script/bug1656248_frame.html | 11 + dom/tests/mochitest/script/file_blocked_script.sjs | 70 + dom/tests/mochitest/script/mochitest.toml | 19 + dom/tests/mochitest/script/slow.sjs | 13 + .../mochitest/script/subdir/bug1656248_import.mjs | 1 + .../mochitest/script/subdir/bug1656248_script.mjs | 18 + dom/tests/mochitest/script/test_bug1053321.html | 50 + dom/tests/mochitest/script/test_bug1656248.html | 93 + dom/tests/mochitest/script/test_bug1788532.html | 21 + .../mochitest/script/test_bug1788532_moduleA.mjs | 15 + .../mochitest/script/test_bug1788532_moduleB.mjs | 2 + dom/tests/mochitest/script/test_whitespace.html | 31 + dom/tests/mochitest/sessionstorage/chrome.toml | 3 + dom/tests/mochitest/sessionstorage/file_http.html | 40 + dom/tests/mochitest/sessionstorage/file_https.html | 15 + dom/tests/mochitest/sessionstorage/frameEqual.html | 47 + .../mochitest/sessionstorage/frameNotEqual.html | 49 + .../mochitest/sessionstorage/frameReplace.html | 75 + .../mochitest/sessionstorage/interOriginSlave.js | 40 + .../mochitest/sessionstorage/interOriginTest.js | 43 + dom/tests/mochitest/sessionstorage/mochitest.toml | 47 + .../sessionstorage/test_sessionStorageBase.html | 180 + .../test_sessionStorageBaseSessionOnly.html | 231 + .../sessionstorage/test_sessionStorageClone.html | 112 + ...test_sessionStorageClone_alwaysPartitioned.html | 110 + ...ionStorageClone_alwaysPartitioned_exempted.html | 110 + .../test_sessionStorageFromChrome.xhtml | 34 + .../test_sessionStorageHttpHttps.html | 59 + .../sessionstorage/test_sessionStorageReplace.html | 78 + .../sessionstorage/test_sessionStorageUsage.html | 53 + .../storageevent/frameLocalStorageMaster.html | 63 + .../storageevent/frameLocalStorageSlaveEqual.html | 55 + .../frameLocalStorageSlaveNotEqual.html | 39 + .../frameSessionStorageMasterEqual.html | 67 + .../frameSessionStorageMasterNotEqual.html | 70 + .../frameSessionStorageSlaveEqual.html | 59 + .../frameSessionStorageSlaveNotEqual.html | 39 + .../mochitest/storageevent/interOriginFrame.js | 63 + .../mochitest/storageevent/interOriginTest2.js | 60 + dom/tests/mochitest/storageevent/mochitest.toml | 38 + ...storageLocalStorageEventCheckNoPropagation.html | 43 + ...t_storageLocalStorageEventCheckPropagation.html | 43 + .../storageevent/test_storageNotifications.html | 130 + ...orageSessionStorageEventCheckNoPropagation.html | 43 + ...storageSessionStorageEventCheckPropagation.html | 43 + dom/tests/mochitest/webcomponents/chrome.toml | 24 + dom/tests/mochitest/webcomponents/dummy_page.html | 10 + dom/tests/mochitest/webcomponents/head.js | 26 + .../htmlconstructor_autonomous_tests.js | 107 + .../webcomponents/htmlconstructor_builtin_tests.js | 282 ++ dom/tests/mochitest/webcomponents/inert_style.css | 10 + dom/tests/mochitest/webcomponents/mochitest.toml | 90 + .../mochitest/webcomponents/test_bug1017896.html | 32 + .../mochitest/webcomponents/test_bug1269155.html | 95 + .../mochitest/webcomponents/test_bug1276240.html | 44 + .../mochitest/webcomponents/test_bug900724.html | 32 + .../test_custom_element_callback_innerhtml.html | 43 + .../webcomponents/test_custom_element_define.html | 129 + .../test_custom_element_define_parser.html | 61 + .../test_custom_element_ensure_custom_element.html | 55 + .../webcomponents/test_custom_element_get.html | 31 + .../test_custom_element_htmlconstructor.html | 42 + ...test_custom_element_htmlconstructor_chrome.html | 40 + .../test_custom_element_in_shadow.html | 129 + .../test_custom_element_lifecycle.html | 432 ++ .../test_custom_element_namespace.html | 95 + .../test_custom_element_namespace.xhtml | 104 + ...stom_element_set_element_creation_callback.html | 159 + .../webcomponents/test_custom_element_stack.html | 138 + .../test_custom_element_template.html | 33 + ..._element_throw_on_dynamic_markup_insertion.html | 66 + .../test_custom_element_uncatchable_exception.html | 37 + .../webcomponents/test_custom_element_upgrade.html | 41 + .../test_custom_element_upgrade_chrome.html | 43 + .../test_custom_element_when_defined.html | 140 + .../test_declarative_shadowdom_failure_log.html | 37 + .../test_declarative_shadowdom_reentry.html | 25 + .../webcomponents/test_detached_style.html | 35 + .../webcomponents/test_document_adoptnode.html | 42 + .../webcomponents/test_document_importnode.html | 42 + .../webcomponents/test_event_composed.html | 72 + .../webcomponents/test_event_retarget.html | 153 + .../webcomponents/test_event_stopping.html | 174 + .../webcomponents/test_link_prefetch.html | 110 + .../test_shadowdom_active_pseudo_class.html | 62 + .../webcomponents/test_shadowdom_ime.html | 59 + .../mochitest/webcomponents/test_shadowroot.html | 77 + .../webcomponents/test_shadowroot_clonenode.html | 46 + .../test_shadowroot_inert_element.html | 30 + .../webcomponents/test_shadowroot_style.html | 85 + .../webcomponents/test_shadowroot_style_order.html | 52 + .../webcomponents/test_style_fallback_content.html | 39 + .../mochitest/webcomponents/test_template.html | 153 + .../webcomponents/test_template_xhtml.html | 46 + .../mochitest/webcomponents/test_upgrade_page.html | 11 + .../webcomponents/test_xul_custom_element.xhtml | 386 ++ .../test_xul_shadowdom_accesskey.xhtml | 60 + dom/tests/mochitest/webcomponents/upgrade_tests.js | 128 + dom/tests/mochitest/whatwg/chrome.toml | 3 + dom/tests/mochitest/whatwg/file_bug500328_1.html | 51 + dom/tests/mochitest/whatwg/file_bug500328_2.html | 17 + .../whatwg/file_structuredCloneAndExposed.sjs | 22 + dom/tests/mochitest/whatwg/mochitest.toml | 122 + .../whatwg/postMessage_chrome_helper.html | 49 + .../whatwg/postMessage_closed_helper.html | 26 + dom/tests/mochitest/whatwg/postMessage_hash.html | 31 + dom/tests/mochitest/whatwg/postMessage_helper.html | 102 + .../mochitest/whatwg/postMessage_idn_helper.html | 41 + .../whatwg/postMessage_joined_helper.html | 85 + .../whatwg/postMessage_joined_helper2.html | 71 + .../mochitest/whatwg/postMessage_onOther.html | 109 + .../whatwg/postMessage_origin_helper.xhtml | 42 + .../whatwg/postMessage_override_helper.html | 37 + .../postMessage_structured_clone_helper.html | 106 + .../whatwg/postMessage_structured_clone_helper.js | 62 + .../mochitest/whatwg/postMessage_throw_helper.html | 24 + .../whatwg/postMessage_transfer_helper.html | 15 + .../whatwg/postMessage_userpass_helper.html | 34 + dom/tests/mochitest/whatwg/test_MessageEvent.html | 102 + .../whatwg/test_MessageEvent_dispatchToOther.html | 59 + dom/tests/mochitest/whatwg/test_bug477323.html | 64 + dom/tests/mochitest/whatwg/test_bug500328.html | 769 ++++ .../mochitest/whatwg/test_document_scripts.html | 55 + dom/tests/mochitest/whatwg/test_postMessage.html | 161 + .../whatwg/test_postMessage_basehref.html | 45 + .../mochitest/whatwg/test_postMessage_chrome.html | 114 + .../mochitest/whatwg/test_postMessage_closed.html | 77 + .../mochitest/whatwg/test_postMessage_hash.html | 44 + .../mochitest/whatwg/test_postMessage_idn.xhtml | 66 + .../mochitest/whatwg/test_postMessage_joined.html | 53 + .../mochitest/whatwg/test_postMessage_onOther.html | 51 + .../mochitest/whatwg/test_postMessage_origin.xhtml | 465 ++ .../whatwg/test_postMessage_override.html | 47 + .../whatwg/test_postMessage_special.xhtml | 304 ++ .../whatwg/test_postMessage_structured_clone.html | 70 + .../mochitest/whatwg/test_postMessage_throw.html | 74 + .../whatwg/test_postMessage_transfer.html | 61 + .../whatwg/test_postMessage_userpass.html | 46 + .../whatwg/test_structuredCloneAndExposed.html | 307 ++ dom/tests/moz.build | 234 + dom/tests/reftest/bug1389406-01.xsl | 15 + dom/tests/reftest/bug1389406-02.xsl | 15 + dom/tests/reftest/bug1389406-ref.xml | 2 + dom/tests/reftest/bug1389406.xml | 3 + dom/tests/reftest/bug427779-ref.xml | 3 + dom/tests/reftest/bug427779.xml | 4 + dom/tests/reftest/bug439965-ref.html | 20 + dom/tests/reftest/bug439965.html | 21 + dom/tests/reftest/bug453105-ref.html | 7 + dom/tests/reftest/bug453105.html | 9 + dom/tests/reftest/bug456008-ref.html | 10 + dom/tests/reftest/bug456008.xhtml | 11 + dom/tests/reftest/bug559996-iframe.html | 7 + dom/tests/reftest/bug559996-ref-iframe.html | 8 + dom/tests/reftest/bug559996-ref.html | 16 + dom/tests/reftest/bug559996.html | 16 + dom/tests/reftest/bug591981-1.html | 32 + dom/tests/reftest/bug591981-2.html | 32 + dom/tests/reftest/bug591981-ref.html | 9 + dom/tests/reftest/bug591981-script.js | 1 + dom/tests/reftest/bug592366-1.html | 7 + dom/tests/reftest/bug592366-1.xhtml | 6 + dom/tests/reftest/bug592366-2.html | 7 + dom/tests/reftest/bug592366-2.xhtml | 6 + dom/tests/reftest/bug592366-ref.html | 9 + dom/tests/reftest/bug592366-ref.xhtml | 9 + dom/tests/reftest/bug798068-ref.xhtml | 18 + dom/tests/reftest/bug798068.xhtml | 19 + dom/tests/reftest/child592366-1.html | 19 + dom/tests/reftest/child592366-1.xhtml | 18 + dom/tests/reftest/child592366-2.html | 17 + dom/tests/reftest/child592366-2.xhtml | 16 + dom/tests/reftest/optiontext-ref.html | 8 + dom/tests/reftest/optiontext.html | 8 + dom/tests/reftest/reftest.list | 14 + dom/tests/reftest/script592366-2.js | 2 + .../reftest/xml-stylesheet/css_relative_href.xml | 2 + .../css_relative_href_also_external.xml | 2 + .../css_relative_href_also_external.xml^headers^ | 1 + .../css_relative_href_also_external_override.xml | 2 + ...lative_href_also_external_override.xml^headers^ | 1 + .../reftest/xml-stylesheet/embedded_dtd_id.svg | 20 + dom/tests/reftest/xml-stylesheet/error_no_href.svg | 8 + dom/tests/reftest/xml-stylesheet/fail.svg | 4 + dom/tests/reftest/xml-stylesheet/failer.css | 1 + .../xml-stylesheet/lreas_selflink_dtd_id.svg | 9 + .../xml-stylesheet/lreas_selflink_empty_href.svg | 8 + .../lreas_selflink_relative_href.svg | 9 + dom/tests/reftest/xml-stylesheet/pass.svg | 4 + dom/tests/reftest/xml-stylesheet/passer.css | 1 + .../reftest/xml-stylesheet/passer_override.css | 1 + dom/tests/reftest/xml-stylesheet/reftest.list | 12 + dom/tests/reftest/xml-stylesheet/svg_passer.xslt | 11 + .../reftest/xml-stylesheet/xslt_relative_href.svg | 4 + .../xml-stylesheet/xslt_selflink_dtd_id.xml | 11 + .../xml-stylesheet/xslt_selflink_empty_href.xml | 10 + .../xml-stylesheet/xslt_selflink_relative_href.xml | 11 + dom/tests/unit/test_Fetch.js | 367 ++ dom/tests/unit/test_PromiseDebugging.js | 21 + dom/tests/unit/test_bug319968.js | 19 + dom/tests/unit/test_bug465752.js | 26 + dom/tests/unit/test_geolocation_monitor.js | 99 + .../unit/test_geolocation_position_unavailable.js | 28 + .../test_geolocation_position_unavailable_wrap.js | 6 + dom/tests/unit/test_geolocation_provider.js | 85 + .../unit/test_geolocation_provider_timeout.js | 45 + dom/tests/unit/test_geolocation_reset_accuracy.js | 93 + .../unit/test_geolocation_reset_accuracy_wrap.js | 61 + dom/tests/unit/test_geolocation_timeout.js | 61 + dom/tests/unit/test_geolocation_timeout_wrap.js | 17 + dom/tests/unit/test_xhr_init.js | 13 + dom/tests/unit/xpcshell.toml | 41 + 2780 files changed, 341174 insertions(+) create mode 100644 dom/tests/browser/beforeunload_test_page.html create mode 100644 dom/tests/browser/browser.toml create mode 100644 dom/tests/browser/browser_ConsoleAPI_originAttributes.js create mode 100644 dom/tests/browser/browser_ConsoleStorageAPITests.js create mode 100644 dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js create mode 100644 dom/tests/browser/browser_alert_from_about_blank.js create mode 100644 dom/tests/browser/browser_autofocus_background.js create mode 100644 dom/tests/browser/browser_autofocus_preference.js create mode 100644 dom/tests/browser/browser_beforeunload_between_chrome_content.js create mode 100644 dom/tests/browser/browser_bug1004814.js create mode 100644 dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js create mode 100644 dom/tests/browser/browser_bug1236512.js create mode 100644 dom/tests/browser/browser_bug1238427.js create mode 100644 dom/tests/browser/browser_bug1316330.js create mode 100644 dom/tests/browser/browser_bug1563629.js create mode 100644 dom/tests/browser/browser_bug1685807.js create mode 100644 dom/tests/browser/browser_bug1709346.js create mode 100644 dom/tests/browser/browser_bug396843.js create mode 100644 dom/tests/browser/browser_bytecode_cache_asm_js.js create mode 100644 dom/tests/browser/browser_cancel_keydown_keypress_event.js create mode 100644 dom/tests/browser/browser_data_document_crossOriginIsolated.js create mode 100644 dom/tests/browser/browser_focus_steal_from_chrome.js create mode 100644 dom/tests/browser/browser_focus_steal_from_chrome_during_mousedown.js create mode 100644 dom/tests/browser/browser_form_associated_custom_elements_validity.js create mode 100644 dom/tests/browser/browser_frame_elements.html create mode 100644 dom/tests/browser/browser_frame_elements.js create mode 100644 dom/tests/browser/browser_hasActivePeerConnections.js create mode 100644 dom/tests/browser/browser_hasbeforeunload.js create mode 100644 dom/tests/browser/browser_keypressTelemetry.js create mode 100644 dom/tests/browser/browser_localStorage_e10s.js create mode 100644 dom/tests/browser/browser_localStorage_fis.js create mode 100644 dom/tests/browser/browser_localStorage_privatestorageevent.js create mode 100644 dom/tests/browser/browser_localStorage_snapshotting.js create mode 100644 dom/tests/browser/browser_navigate_replace_browsingcontext.js create mode 100644 dom/tests/browser/browser_noopener.js create mode 100644 dom/tests/browser/browser_noopener_null_uri.js create mode 100644 dom/tests/browser/browser_persist_cookies.js create mode 100644 dom/tests/browser/browser_persist_cross_origin_iframe.js create mode 100644 dom/tests/browser/browser_persist_image_accept.js create mode 100644 dom/tests/browser/browser_persist_mixed_content_image.js create mode 100644 dom/tests/browser/browser_pointerlock_warning.js create mode 100644 dom/tests/browser/browser_sessionStorage_navigation.js create mode 100644 dom/tests/browser/browser_test_focus_after_modal_state.js create mode 100644 dom/tests/browser/browser_test_new_window_from_content.js create mode 100644 dom/tests/browser/browser_test_toolbars_visibility.js create mode 100644 dom/tests/browser/browser_unlinkable_about_page_can_load_module_scripts.js create mode 100644 dom/tests/browser/browser_wakelock.js create mode 100644 dom/tests/browser/browser_windowProxy_transplant.js create mode 100644 dom/tests/browser/browser_xhr_sandbox.js create mode 100644 dom/tests/browser/create_webrtc_peer_connection.html create mode 100644 dom/tests/browser/dummy.html create mode 100644 dom/tests/browser/dummy.png create mode 100644 dom/tests/browser/file_bug1685807.html create mode 100644 dom/tests/browser/file_coop_coep.html create mode 100644 dom/tests/browser/file_coop_coep.html^headers^ create mode 100644 dom/tests/browser/file_empty.html create mode 100644 dom/tests/browser/file_empty_cross_site_frame.html create mode 100644 dom/tests/browser/file_load_module_script.html create mode 100644 dom/tests/browser/file_module_loaded.mjs create mode 100644 dom/tests/browser/file_module_loaded2.mjs create mode 100644 dom/tests/browser/file_postMessage_parent.html create mode 100644 dom/tests/browser/focus_after_prompt.html create mode 100644 dom/tests/browser/geo_leak_test.html create mode 100644 dom/tests/browser/helper_localStorage.js create mode 100644 dom/tests/browser/image.html create mode 100644 dom/tests/browser/load_forever.sjs create mode 100644 dom/tests/browser/mimeme.sjs create mode 100644 dom/tests/browser/page_bytecode_cache_asm_js.html create mode 100644 dom/tests/browser/page_bytecode_cache_asm_js.js create mode 100644 dom/tests/browser/page_localStorage.js create mode 100644 dom/tests/browser/page_localstorage.html create mode 100644 dom/tests/browser/page_localstorage_coop+coep.html create mode 100644 dom/tests/browser/page_localstorage_coop+coep.html^headers^ create mode 100644 dom/tests/browser/page_localstorage_snapshotting.html create mode 100644 dom/tests/browser/page_privatestorageevent.html create mode 100644 dom/tests/browser/position.html create mode 100644 dom/tests/browser/prevent_return_key.html create mode 100644 dom/tests/browser/set-samesite-cookies-and-redirect.sjs create mode 100644 dom/tests/browser/test-console-api.html create mode 100644 dom/tests/browser/test_bug1004814.html create mode 100644 dom/tests/browser/test_mixed_content_image.html create mode 100644 dom/tests/browser/test_new_window_from_content_child.html create mode 100644 dom/tests/browser/test_noopener_source.html create mode 100644 dom/tests/browser/test_noopener_target.html create mode 100644 dom/tests/browser/worker_bug1004814.js create mode 100644 dom/tests/mochitest/ajax/jquery/ChangeLog.txt create mode 100644 dom/tests/mochitest/ajax/jquery/GPL-LICENSE.txt create mode 100644 dom/tests/mochitest/ajax/jquery/MIT-LICENSE.txt create mode 100644 dom/tests/mochitest/ajax/jquery/dist/jquery.js create mode 100644 dom/tests/mochitest/ajax/jquery/manifest.json create mode 100644 dom/tests/mochitest/ajax/jquery/mochitest.toml create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/cow.jpg create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/dashboard.xml create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/iframe.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/json_assigned_obj.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/json_obj.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/name.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/absolute.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/fixed.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/relative.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/scroll.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/static.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/offset/table.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/test.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/test.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/test2.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/test3.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/testrunner.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/testsuite.css create mode 100644 dom/tests/mochitest/ajax/jquery/test/data/with_fries.xml create mode 100644 dom/tests/mochitest/ajax/jquery/test/fix.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/index.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/offset.html create mode 100644 dom/tests/mochitest/ajax/jquery/test/test.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/ajax.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/core.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/dimensions.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/event.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/fx.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/offset.js create mode 100644 dom/tests/mochitest/ajax/jquery/test/unit/selector.js create mode 100644 dom/tests/mochitest/ajax/jquery/test_jQuery.html create mode 100644 dom/tests/mochitest/ajax/jquery/version.txt create mode 100644 dom/tests/mochitest/ajax/lib/AJAX_setup.js create mode 100644 dom/tests/mochitest/ajax/lib/test.css create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Async.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Base.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Color.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Controls.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/DOM.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/DateTime.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/DragAndDrop.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Format.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Iter.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Logging.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/LoggingPane.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/MochiKit.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/MockDOM.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Position.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Selector.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Signal.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Sortable.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Style.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Test.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/Visual.js create mode 100644 dom/tests/mochitest/ajax/mochikit/MochiKit/__package__.js create mode 100644 dom/tests/mochitest/ajax/mochikit/manifest.json create mode 100644 dom/tests/mochitest/ajax/mochikit/mochitest.toml create mode 100644 dom/tests/mochitest/ajax/mochikit/test_Mochikit.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/FakeJSAN.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Async.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Base.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Color.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-DOM.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-DateTime.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-DragAndDrop.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Format.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Iter.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-JSAN.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Logging.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-MochiKit.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Selector.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Signal.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Style.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/MochiKit-Visual.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/SimpleTest/SimpleTest.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/SimpleTest/TestRunner.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/SimpleTest/test.css create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/cli.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/index.html create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/standalone.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Base.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Color.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_DateTime.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_DragAndDrop.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Format.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Iter.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Logging.js create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_MochiKit-Async.json create mode 100644 dom/tests/mochitest/ajax/mochikit/tests/test_Signal.js create mode 100644 dom/tests/mochitest/ajax/prototype/dist/prototype.js create mode 100644 dom/tests/mochitest/ajax/prototype/dist/prototype_update_helper.js create mode 100644 dom/tests/mochitest/ajax/prototype/manifest.json create mode 100644 dom/tests/mochitest/ajax/prototype/mochitest.toml create mode 100644 dom/tests/mochitest/ajax/prototype/test/browser.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/console.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/functional/event.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/lib/unittest.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/test.css create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/ajax_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/array_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/base_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/dom_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/element_mixins_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/enumerable_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/event_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/ajax.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/ajax.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/array.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/base.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/base.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/content.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/data.json create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/dom.css create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/dom.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/dom.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/element_mixins.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/element_mixins.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/empty.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/empty.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/enumerable.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/enumerable.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/event.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/form.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/hash.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/hello.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/logo.gif create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/position.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/selector.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/string.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/fixtures/unittest.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/form_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/hash_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/number_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/position_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/range_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/selector_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/string_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/ajax_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/array_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/base_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/dom_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/element_mixins_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/enumerable_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/event_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/form_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/hash_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/number_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/position_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/range_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/selector_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/string_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/tmp/unit_test.html create mode 100644 dom/tests/mochitest/ajax/prototype/test/unit/unittest_test.js create mode 100644 dom/tests/mochitest/ajax/prototype/test_Prototype.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/lib/prototype.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/manifest.json create mode 100644 dom/tests/mochitest/ajax/scriptaculous/mochitest.toml create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/builder.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/controls.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/dragdrop.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/effects.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/slider.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/sound.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/src/unittest.js create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_result.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_text.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_updater_result.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result_nobr.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_autocompleter_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_inplaceeditor_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/bdd_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/builder_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/dragdrop_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/effects_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/element_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/icon.png create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/loading_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/position_clone_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/slider_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/sortable_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/string_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test/unit/unit_test.html create mode 100644 dom/tests/mochitest/ajax/scriptaculous/test_Scriptaculous.html create mode 100644 dom/tests/mochitest/beacon/beacon-frame.html create mode 100644 dom/tests/mochitest/beacon/beacon-handler.sjs create mode 100644 dom/tests/mochitest/beacon/beacon-originheader-handler.sjs create mode 100644 dom/tests/mochitest/beacon/beacon-preflight-handler.sjs create mode 100644 dom/tests/mochitest/beacon/beacon-redirect-handler.sjs create mode 100644 dom/tests/mochitest/beacon/beacon-set-cookie.sjs create mode 100644 dom/tests/mochitest/beacon/chrome.toml create mode 100644 dom/tests/mochitest/beacon/file_beaconCookies.html create mode 100644 dom/tests/mochitest/beacon/file_beaconSafelist.html create mode 100644 dom/tests/mochitest/beacon/mochitest.toml create mode 100644 dom/tests/mochitest/beacon/test_beacon.html create mode 100644 dom/tests/mochitest/beacon/test_beaconContentPolicy.html create mode 100644 dom/tests/mochitest/beacon/test_beaconCookies.html create mode 100644 dom/tests/mochitest/beacon/test_beaconFrame.html create mode 100644 dom/tests/mochitest/beacon/test_beaconOriginHeader.html create mode 100644 dom/tests/mochitest/beacon/test_beaconPreflightWithCustomContentType.html create mode 100644 dom/tests/mochitest/beacon/test_beaconRedirect.html create mode 100644 dom/tests/mochitest/beacon/test_beaconWithSafelistedContentType.html create mode 100644 dom/tests/mochitest/bugs/bug289714.sjs create mode 100644 dom/tests/mochitest/bugs/bug346659-echoer.html create mode 100644 dom/tests/mochitest/bugs/bug346659-opener-echoer.html create mode 100644 dom/tests/mochitest/bugs/bug346659-opener.html create mode 100644 dom/tests/mochitest/bugs/bug346659-parent-echoer.html create mode 100644 dom/tests/mochitest/bugs/bug346659-parent.html create mode 100644 dom/tests/mochitest/bugs/bug458091_child.html create mode 100644 dom/tests/mochitest/bugs/child_bug260264.html create mode 100644 dom/tests/mochitest/bugs/devicemotion_inner.html create mode 100644 dom/tests/mochitest/bugs/devicemotion_outer.html create mode 100644 dom/tests/mochitest/bugs/file1_bug414291.html create mode 100644 dom/tests/mochitest/bugs/file2_bug414291.html create mode 100644 dom/tests/mochitest/bugs/file3_bug414291.html create mode 100644 dom/tests/mochitest/bugs/file_bug593174_1.html create mode 100644 dom/tests/mochitest/bugs/file_bug593174_2.html create mode 100644 dom/tests/mochitest/bugs/file_bug809290_b1.html create mode 100644 dom/tests/mochitest/bugs/file_bug809290_b2.html create mode 100644 dom/tests/mochitest/bugs/file_bug809290_c.html create mode 100644 dom/tests/mochitest/bugs/file_bug873229.js create mode 100644 dom/tests/mochitest/bugs/file_bug927901.html create mode 100644 dom/tests/mochitest/bugs/file_cookieOutputter.html create mode 100644 dom/tests/mochitest/bugs/file_empty.html create mode 100644 dom/tests/mochitest/bugs/file_prime_cookie.html create mode 100644 dom/tests/mochitest/bugs/file_redirector.sjs create mode 100644 dom/tests/mochitest/bugs/file_resize_move_windows_1.html create mode 100644 dom/tests/mochitest/bugs/file_resize_move_windows_2.html create mode 100644 dom/tests/mochitest/bugs/file_window_bar.html create mode 100644 dom/tests/mochitest/bugs/grandchild_bug260264.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug304459-1.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug304459-2.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug430276-2.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug430276.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug440572.html create mode 100644 dom/tests/mochitest/bugs/iframe_bug49312.html create mode 100644 dom/tests/mochitest/bugs/iframe_domparser_after_blank.html create mode 100644 dom/tests/mochitest/bugs/mochitest.toml create mode 100644 dom/tests/mochitest/bugs/test1_bug369306.html create mode 100644 dom/tests/mochitest/bugs/test1_bug622361.html create mode 100644 dom/tests/mochitest/bugs/test2_bug369306.html create mode 100644 dom/tests/mochitest/bugs/test2_bug622361.html create mode 100644 dom/tests/mochitest/bugs/test_DOMWindowCreated_chromeonly.html create mode 100644 dom/tests/mochitest/bugs/test_bug1022869.html create mode 100644 dom/tests/mochitest/bugs/test_bug1112040.html create mode 100644 dom/tests/mochitest/bugs/test_bug1160342_marquee.html create mode 100644 dom/tests/mochitest/bugs/test_bug1171215.html create mode 100644 dom/tests/mochitest/bugs/test_bug132255.html create mode 100644 dom/tests/mochitest/bugs/test_bug1530292.html create mode 100644 dom/tests/mochitest/bugs/test_bug1551425_reference_to_childnodes_nodelist_keeps_childnodes_alive.html create mode 100644 dom/tests/mochitest/bugs/test_bug159849.html create mode 100644 dom/tests/mochitest/bugs/test_bug1774135.html create mode 100644 dom/tests/mochitest/bugs/test_bug260264.html create mode 100644 dom/tests/mochitest/bugs/test_bug260264_nested.html create mode 100644 dom/tests/mochitest/bugs/test_bug265203.html create mode 100644 dom/tests/mochitest/bugs/test_bug289714.html create mode 100644 dom/tests/mochitest/bugs/test_bug291377.html create mode 100644 dom/tests/mochitest/bugs/test_bug304459.html create mode 100644 dom/tests/mochitest/bugs/test_bug308856.html create mode 100644 dom/tests/mochitest/bugs/test_bug327891.html create mode 100644 dom/tests/mochitest/bugs/test_bug333983.html create mode 100644 dom/tests/mochitest/bugs/test_bug335976.xhtml create mode 100644 dom/tests/mochitest/bugs/test_bug342448.html create mode 100644 dom/tests/mochitest/bugs/test_bug345521.html create mode 100644 dom/tests/mochitest/bugs/test_bug346659.html create mode 100644 dom/tests/mochitest/bugs/test_bug369306.html create mode 100644 dom/tests/mochitest/bugs/test_bug370098.html create mode 100644 dom/tests/mochitest/bugs/test_bug377539.html create mode 100644 dom/tests/mochitest/bugs/test_bug384122.html create mode 100644 dom/tests/mochitest/bugs/test_bug389366.html create mode 100644 dom/tests/mochitest/bugs/test_bug393974.html create mode 100644 dom/tests/mochitest/bugs/test_bug394769.html create mode 100644 dom/tests/mochitest/bugs/test_bug396843.html create mode 100644 dom/tests/mochitest/bugs/test_bug400204.html create mode 100644 dom/tests/mochitest/bugs/test_bug404748.html create mode 100644 dom/tests/mochitest/bugs/test_bug414291.html create mode 100644 dom/tests/mochitest/bugs/test_bug42976.html create mode 100644 dom/tests/mochitest/bugs/test_bug430276.html create mode 100644 dom/tests/mochitest/bugs/test_bug440572.html create mode 100644 dom/tests/mochitest/bugs/test_bug456151.html create mode 100644 dom/tests/mochitest/bugs/test_bug458091.html create mode 100644 dom/tests/mochitest/bugs/test_bug459848.html create mode 100644 dom/tests/mochitest/bugs/test_bug465263.html create mode 100644 dom/tests/mochitest/bugs/test_bug484775.html create mode 100644 dom/tests/mochitest/bugs/test_bug492925.html create mode 100644 dom/tests/mochitest/bugs/test_bug49312.html create mode 100644 dom/tests/mochitest/bugs/test_bug495219.html create mode 100644 dom/tests/mochitest/bugs/test_bug529328.html create mode 100644 dom/tests/mochitest/bugs/test_bug531176.html create mode 100644 dom/tests/mochitest/bugs/test_bug531542.html create mode 100644 dom/tests/mochitest/bugs/test_bug534149.html create mode 100644 dom/tests/mochitest/bugs/test_bug541530.html create mode 100644 dom/tests/mochitest/bugs/test_bug545314.html create mode 100644 dom/tests/mochitest/bugs/test_bug548828.html create mode 100644 dom/tests/mochitest/bugs/test_bug558973.html create mode 100644 dom/tests/mochitest/bugs/test_bug562433.html create mode 100644 dom/tests/mochitest/bugs/test_bug563487.html create mode 100644 dom/tests/mochitest/bugs/test_bug581072.html create mode 100644 dom/tests/mochitest/bugs/test_bug583225.html create mode 100644 dom/tests/mochitest/bugs/test_bug585240.html create mode 100644 dom/tests/mochitest/bugs/test_bug585819.html create mode 100644 dom/tests/mochitest/bugs/test_bug593174.html create mode 100644 dom/tests/mochitest/bugs/test_bug61098.html create mode 100644 dom/tests/mochitest/bugs/test_bug612267.html create mode 100644 dom/tests/mochitest/bugs/test_bug617296.html create mode 100644 dom/tests/mochitest/bugs/test_bug620947.html create mode 100644 dom/tests/mochitest/bugs/test_bug622361.html create mode 100644 dom/tests/mochitest/bugs/test_bug633133.html create mode 100644 dom/tests/mochitest/bugs/test_bug642026.html create mode 100644 dom/tests/mochitest/bugs/test_bug648465.html create mode 100644 dom/tests/mochitest/bugs/test_bug654137.html create mode 100644 dom/tests/mochitest/bugs/test_bug664737.html create mode 100644 dom/tests/mochitest/bugs/test_bug665548.html create mode 100644 dom/tests/mochitest/bugs/test_bug684544.html create mode 100644 dom/tests/mochitest/bugs/test_bug691707.html create mode 100644 dom/tests/mochitest/bugs/test_bug698061.html create mode 100644 dom/tests/mochitest/bugs/test_bug698551.html create mode 100644 dom/tests/mochitest/bugs/test_bug707749.html create mode 100644 dom/tests/mochitest/bugs/test_bug740811.html create mode 100644 dom/tests/mochitest/bugs/test_bug743615.html create mode 100644 dom/tests/mochitest/bugs/test_bug755320.html create mode 100644 dom/tests/mochitest/bugs/test_bug777628.html create mode 100644 dom/tests/mochitest/bugs/test_bug809290.html create mode 100644 dom/tests/mochitest/bugs/test_bug817476.html create mode 100644 dom/tests/mochitest/bugs/test_bug823173.html create mode 100644 dom/tests/mochitest/bugs/test_bug848088.html create mode 100644 dom/tests/mochitest/bugs/test_bug850517.html create mode 100644 dom/tests/mochitest/bugs/test_bug857555.html create mode 100644 dom/tests/mochitest/bugs/test_bug862540.html create mode 100644 dom/tests/mochitest/bugs/test_bug873229.html create mode 100644 dom/tests/mochitest/bugs/test_bug876098.html create mode 100644 dom/tests/mochitest/bugs/test_bug927901.html create mode 100644 dom/tests/mochitest/bugs/test_devicemotion_multiple_listeners.html create mode 100644 dom/tests/mochitest/bugs/test_domparser_after_blank.html create mode 100644 dom/tests/mochitest/bugs/test_errorReporting.html create mode 100644 dom/tests/mochitest/bugs/test_instanceof_error_message.html create mode 100644 dom/tests/mochitest/bugs/test_navigator_buildID.html create mode 100644 dom/tests/mochitest/bugs/test_no_find_showDialog.html create mode 100644 dom/tests/mochitest/bugs/test_onerror_message.html create mode 100644 dom/tests/mochitest/bugs/test_postmessage.html create mode 100644 dom/tests/mochitest/bugs/test_protochains.html create mode 100644 dom/tests/mochitest/bugs/test_resize_move_windows.html create mode 100644 dom/tests/mochitest/bugs/test_sizetocontent_clamp.html create mode 100644 dom/tests/mochitest/bugs/test_toJSON.html create mode 100644 dom/tests/mochitest/bugs/test_window_bar.html create mode 100644 dom/tests/mochitest/bugs/utils_bug260264.js create mode 100644 dom/tests/mochitest/bugs/utils_bug743615.js create mode 100644 dom/tests/mochitest/bugs/window_bug1171215.html create mode 100644 dom/tests/mochitest/bugs/worker_bug743615.js create mode 100644 dom/tests/mochitest/chrome/489127.html create mode 100644 dom/tests/mochitest/chrome/DOMWindowCreated_chrome.xhtml create mode 100644 dom/tests/mochitest/chrome/DOMWindowCreated_content.html create mode 100644 dom/tests/mochitest/chrome/child_focus_frame.html create mode 100644 dom/tests/mochitest/chrome/chrome.toml create mode 100644 dom/tests/mochitest/chrome/file_DOM_element_instanceof.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug1224790-1_modal.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug1224790-1_nonmodal.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug1224790-2_modal.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug1224790-2_nonmodal.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug800817.xhtml create mode 100644 dom/tests/mochitest/chrome/file_bug830858.xhtml create mode 100644 dom/tests/mochitest/chrome/file_clipboard_events_chrome.html create mode 100644 dom/tests/mochitest/chrome/file_popup_blocker_chrome.html create mode 100644 dom/tests/mochitest/chrome/file_resize_move_windows_1.html create mode 100644 dom/tests/mochitest/chrome/file_resize_move_windows_2.html create mode 100644 dom/tests/mochitest/chrome/file_subscript_bindings.js create mode 100644 dom/tests/mochitest/chrome/focus_dialog.xhtml create mode 100644 dom/tests/mochitest/chrome/focus_frameset.html create mode 100644 dom/tests/mochitest/chrome/focus_window2.xhtml create mode 100644 dom/tests/mochitest/chrome/queryCaretRectUnix.html create mode 100644 dom/tests/mochitest/chrome/queryCaretRectWin.html create mode 100644 dom/tests/mochitest/chrome/selectAtPoint-innerframe.html create mode 100644 dom/tests/mochitest/chrome/selectAtPoint.html create mode 100644 dom/tests/mochitest/chrome/sizemode_attribute.xhtml create mode 100644 dom/tests/mochitest/chrome/test_DOMWindowCreated.xhtml create mode 100644 dom/tests/mochitest/chrome/test_DOM_element_instanceof.xhtml create mode 100644 dom/tests/mochitest/chrome/test_activation.xhtml create mode 100644 dom/tests/mochitest/chrome/test_bug1224790-1.xhtml create mode 100644 dom/tests/mochitest/chrome/test_bug1224790-2.xhtml create mode 100644 dom/tests/mochitest/chrome/test_bug800817.xhtml create mode 100644 dom/tests/mochitest/chrome/test_bug830858.xhtml create mode 100644 dom/tests/mochitest/chrome/test_callback_wrapping.xhtml create mode 100644 dom/tests/mochitest/chrome/test_clipboard_events_chrome.html create mode 100644 dom/tests/mochitest/chrome/test_clonewrapper.xhtml create mode 100644 dom/tests/mochitest/chrome/test_cyclecollector.xhtml create mode 100644 dom/tests/mochitest/chrome/test_docshell_swap.xhtml create mode 100644 dom/tests/mochitest/chrome/test_elements_proto.xhtml create mode 100644 dom/tests/mochitest/chrome/test_focus.xhtml create mode 100644 dom/tests/mochitest/chrome/test_focus_dialog.xhtml create mode 100644 dom/tests/mochitest/chrome/test_focus_docnav.xhtml create mode 100644 dom/tests/mochitest/chrome/test_focused_link_scroll.xhtml create mode 100644 dom/tests/mochitest/chrome/test_geolocation.xhtml create mode 100644 dom/tests/mochitest/chrome/test_getTransformTo.html create mode 100644 dom/tests/mochitest/chrome/test_indexedSetter.html create mode 100644 dom/tests/mochitest/chrome/test_intlUtils_getDisplayNames.html create mode 100644 dom/tests/mochitest/chrome/test_intlUtils_isAppLocaleRTL.html create mode 100644 dom/tests/mochitest/chrome/test_moving_nodeList.xhtml create mode 100644 dom/tests/mochitest/chrome/test_moving_xhr.xhtml create mode 100644 dom/tests/mochitest/chrome/test_nodesFromPoint.html create mode 100644 dom/tests/mochitest/chrome/test_nodesFromRect.html create mode 100644 dom/tests/mochitest/chrome/test_parsingMode.html create mode 100644 dom/tests/mochitest/chrome/test_popup_blocker_chrome.xhtml create mode 100644 dom/tests/mochitest/chrome/test_queryCaretRect.html create mode 100644 dom/tests/mochitest/chrome/test_resize_move_windows.xhtml create mode 100644 dom/tests/mochitest/chrome/test_sandbox_bindings.xhtml create mode 100644 dom/tests/mochitest/chrome/test_sandbox_eventhandler.xhtml create mode 100644 dom/tests/mochitest/chrome/test_sandbox_image.xhtml create mode 100644 dom/tests/mochitest/chrome/test_sandbox_postMessage.html create mode 100644 dom/tests/mochitest/chrome/test_selectAtPoint.html create mode 100644 dom/tests/mochitest/chrome/test_sizemode_attribute.xhtml create mode 100644 dom/tests/mochitest/chrome/test_subscript_bindings.xhtml create mode 100644 dom/tests/mochitest/chrome/test_window_getRegionalPrefsLocales.html create mode 100644 dom/tests/mochitest/chrome/test_xray_event_constructor.xhtml create mode 100644 dom/tests/mochitest/chrome/window_activation.xhtml create mode 100644 dom/tests/mochitest/chrome/window_callback_wrapping.xhtml create mode 100644 dom/tests/mochitest/chrome/window_docshell_swap.xhtml create mode 100644 dom/tests/mochitest/chrome/window_focus.xhtml create mode 100644 dom/tests/mochitest/chrome/window_focus_docnav.xhtml create mode 100644 dom/tests/mochitest/chrome/window_focus_inner.xhtml create mode 100644 dom/tests/mochitest/crypto/mochitest.toml create mode 100644 dom/tests/mochitest/crypto/test_getRandomValues.html create mode 100644 dom/tests/mochitest/dom-level0/child_ip_address.html create mode 100644 dom/tests/mochitest/dom-level0/file_crossdomainprops_inner.html create mode 100644 dom/tests/mochitest/dom-level0/file_location.html create mode 100644 dom/tests/mochitest/dom-level0/file_separate_post_message_queue.html create mode 100644 dom/tests/mochitest/dom-level0/file_test_background_loading_iframes.html create mode 100644 dom/tests/mochitest/dom-level0/framed_location.html create mode 100644 dom/tests/mochitest/dom-level0/idn_child.html create mode 100644 dom/tests/mochitest/dom-level0/iframe1_location_setters.html create mode 100644 dom/tests/mochitest/dom-level0/iframe2_location_setters.html create mode 100644 dom/tests/mochitest/dom-level0/iframe3_location_setters.html create mode 100644 dom/tests/mochitest/dom-level0/mochitest.toml create mode 100644 dom/tests/mochitest/dom-level0/test_background_loading_iframes.html create mode 100644 dom/tests/mochitest/dom-level0/test_crossdomainprops.html create mode 100644 dom/tests/mochitest/dom-level0/test_location.html create mode 100644 dom/tests/mochitest/dom-level0/test_location_framed.html create mode 100644 dom/tests/mochitest/dom-level0/test_location_getters.html create mode 100644 dom/tests/mochitest/dom-level0/test_location_sandboxed.html create mode 100644 dom/tests/mochitest/dom-level0/test_location_setters.html create mode 100644 dom/tests/mochitest/dom-level0/test_separate_post_message_queue.html create mode 100644 dom/tests/mochitest/dom-level0/test_setting_document.domain_idn.html create mode 100644 dom/tests/mochitest/dom-level0/test_setting_document.domain_to_shortened_ipaddr.html create mode 100644 dom/tests/mochitest/dom-level1-core/DOMTestCase.js create mode 100644 dom/tests/mochitest/dom-level1-core/activity-home.css create mode 100644 dom/tests/mochitest/dom-level1-core/exclusions.js create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_nodtdstaff.html create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_nodtdstaff.svg create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_nodtdstaff.xhtml create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_nodtdstaff.xml create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_staff.html create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_staff.svg create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_staff.xhtml create mode 100644 dom/tests/mochitest/dom-level1-core/files/hc_staff.xml create mode 100644 dom/tests/mochitest/dom-level1-core/files/staff.dtd create mode 100644 dom/tests/mochitest/dom-level1-core/files/staff.svg create mode 100644 dom/tests/mochitest/dom-level1-core/files/staff.xml create mode 100644 dom/tests/mochitest/dom-level1-core/files/svgtest.js create mode 100644 dom/tests/mochitest/dom-level1-core/files/svgunit.js create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml-lat1.ent create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml-special.ent create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml-symbol.ent create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml1-frameset.dtd create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml1-strict.dtd create mode 100644 dom/tests/mochitest/dom-level1-core/files/xhtml1-transitional.dtd create mode 100644 dom/tests/mochitest/dom-level1-core/mochitest.toml create mode 100644 dom/tests/mochitest/dom-level1-core/test_PIsetdatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrcreatedocumentfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrcreatetextnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrcreatetextnode2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrdefaultvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attreffectivevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrentityreplacement.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrnextsiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrnotspecifiedvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrparentnodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrprevioussiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrremovechild1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrreplacechild1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrsetvaluenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrsetvaluenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrspecifiedvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrspecifiedvaluechanged.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_attrspecifiedvalueremove.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_cdatasectiongetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_cdatasectionnormalize.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataappenddata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataappenddatagetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataappenddatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataappenddatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedatabegining.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedataexceedslength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedatagetlengthanddata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatadeletedatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatagetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatagetlength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrdeletedatacountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrdeletedataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrdeletedataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrinsertdataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrinsertdataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrreplacedatacountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrreplacedataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrreplacedataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrsubstringcountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrsubstringnegativeoffset.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdataindexsizeerrsubstringoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatainsertdatabeginning.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatainsertdataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatainsertdatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatainsertdatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatainsertdatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedatabegining.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedataexceedslengthofarg.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedataexceedslengthofdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatareplacedatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatasetdatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatasetdatanomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatasetnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatasubstringexceedsvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_characterdatasubstringvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_commentgetcomment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreatecdatasection.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreatecomment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreatedocumentfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateelement.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateelementcasesensitive.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateelementdefaultattr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateentityreference.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateentityreferenceknown.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreateprocessinginstruction.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentcreatetextnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetdoctype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetdoctypenodtd.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetelementsbytagnamelength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetelementsbytagnametotallength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetelementsbytagnamevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetimplementation.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentgetrootnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreateattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreateelement.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreateentref.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreateentref1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreatepi.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documentinvalidcharacterexceptioncreatepi1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetdoctype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetentities.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetentitieslength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetentitiestype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetnotations.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_documenttypegetnotationstype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_domimplementationfeaturenoversion.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_domimplementationfeaturenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_domimplementationfeaturexml.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementaddnewattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementassociatedattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementchangeattributevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementcreatenewattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetattributenode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetattributenodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetelementempty.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetelementsbytagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetelementsbytagnameaccessnodelist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetelementsbytagnamenomatch.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgetelementsbytagnamespecialvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementgettagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementinuseattributeerr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementinvalidcharacterexception.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementnormalize.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementnotfounderr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributeaftercreate.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributenode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributenodenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributenodenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementremoveattributerestoredefaultvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementreplaceattributewithself.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementreplaceexistingattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementreplaceexistingattributegevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementretrieveallattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementretrieveattrvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementretrievetagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementsetattributenodenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementsetattributenodenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementsetattributenodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementsetattributenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementsetattributenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_elementwrongdocumenterr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_entitygetentityname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_entitygetpublicid.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_entitygetpublicidnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild3.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild4.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild5.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrappendchild6.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrchildnodes1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrchildnodes2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrclonenode1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrcreatedocumentfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrcreatetextnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrcreatetextnode2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attreffectivevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrfirstchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrgetvalue1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrgetvalue2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrhaschildnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore3.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore4.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore5.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore6.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrinsertbefore7.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrlastchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrnextsiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrnormalize.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrparentnodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrprevioussiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrremovechild1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrremovechild2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrreplacechild1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrreplacechild2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrsetvalue1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrsetvalue2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrspecifiedvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_attrspecifiedvaluechanged.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataappenddata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataappenddatagetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatadeletedatabegining.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatadeletedataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatadeletedataexceedslength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatadeletedatagetlengthanddata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatadeletedatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatagetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatagetlength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrdeletedatacountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrdeletedataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrdeletedataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrinsertdataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrinsertdataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrreplacedatacountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrreplacedataoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrreplacedataoffsetnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrsubstringcountnegative.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrsubstringnegativeoffset.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdataindexsizeerrsubstringoffsetgreater.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatainsertdatabeginning.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatainsertdataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatainsertdatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatareplacedatabegining.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatareplacedataend.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatareplacedataexceedslengthofarg.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatareplacedataexceedslengthofdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatareplacedatamiddle.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatasetnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatasubstringexceedsvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_characterdatasubstringvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_commentgetcomment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreateattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreatecomment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreatedocumentfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreateelement.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreateelementcasesensitive.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentcreatetextnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetdoctype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetelementsbytagnamelength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetelementsbytagnametotallength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetelementsbytagnamevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetimplementation.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentgetrootnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentinvalidcharacterexceptioncreateattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentinvalidcharacterexceptioncreateattribute1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentinvalidcharacterexceptioncreateelement.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_documentinvalidcharacterexceptioncreateelement1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_domimplementationfeaturenoversion.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_domimplementationfeaturenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_domimplementationfeaturexml.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementaddnewattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementassociatedattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementchangeattributevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementcreatenewattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetattributenode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetattributenodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetelementempty.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetelementsbytagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetelementsbytagnameaccessnodelist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetelementsbytagnamenomatch.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgetelementsbytagnamespecialvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementgettagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementinuseattributeerr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementinvalidcharacterexception.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementinvalidcharacterexception1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementnormalize.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementnormalize2.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementnotfounderr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementremoveattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementremoveattributeaftercreate.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementremoveattributenode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementreplaceattributewithself.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementreplaceexistingattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementreplaceexistingattributegevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementretrieveallattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementretrieveattrvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementretrievetagname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementsetattributenodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_elementwrongdocumenterr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_entitiesremovenameditem1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_entitiessetnameditem1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapchildnoderange.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapgetnameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapinuseattributeerr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapnotfounderr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapnumberofnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapremovenameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapreturnattrnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapreturnfirstitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapreturnlastitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapreturnnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapsetnameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapsetnameditemreturnvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapsetnameditemthatexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapsetnameditemwithnewvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_namednodemapwrongdocumenterr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchildchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchilddocfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchildgetnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchildinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchildnewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeappendchildnodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeattributenodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeattributenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeattributenodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeattributenodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodechildnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodechildnodesappendchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodechildnodesempty.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodecloneattributescopied.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeclonefalsenocopytext.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeclonegetparentnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeclonenodefalse.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeclonenodetrue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeclonetruecopytext.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodecommentnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodecommentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodecommentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodecommentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentfragmentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentfragmentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentfragmentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentnodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodedocumentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeelementnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeelementnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeelementnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeelementnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetfirstchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetfirstchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetlastchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetlastchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetnextsibling.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetnextsiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetownerdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetownerdocumentnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetprevioussibling.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodegetprevioussiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodehaschildnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodehaschildnodesfalse.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbefore.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforedocfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforeinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforenewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforenewchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforenodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforerefchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeinsertbeforerefchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistindexequalzero.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistindexgetlength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistindexgetlengthofemptylist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistindexnotzero.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistreturnfirstitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelistreturnlastitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodelisttraverselist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeparentnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodeparentnodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_noderemovechild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_noderemovechildgetnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_noderemovechildnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_noderemovechildoldchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildnewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildnewchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildnodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodereplacechildoldchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodetextnodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodetextnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodetextnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodetextnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue01.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue02.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue03.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue04.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue05.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue06.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue07.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_nodevalue08.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_notationsremovenameditem1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_notationssetnameditem1.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textindexsizeerrnegativeoffset.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textindexsizeerroffsetoutofbounds.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textparseintolistofelements.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textsplittextfour.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textsplittextone.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textsplittextthree.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textsplittexttwo.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_hc_textwithnomarkup.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapchildnoderange.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapgetnameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapinuseattributeerr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapnotfounderr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapnumberofnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapremovenameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapremovenameditemgetvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapremovenameditemreturnnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapreturnattrnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapreturnfirstitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapreturnlastitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapreturnnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapsetnameditem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapsetnameditemreturnvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapsetnameditemthatexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapsetnameditemwithnewvalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_namednodemapwrongdocumenterr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchilddocfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildgetnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildnewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildnodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildnomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeappendchildnomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeattributenodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeattributenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeattributenodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeattributenodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecdatasectionnodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecdatasectionnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecdatasectionnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecdatasectionnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodechildnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodechildnodesappendchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodechildnodesempty.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecloneattributescopied.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeclonefalsenocopytext.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeclonegetparentnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeclonenodefalse.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeclonenodetrue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeclonetruecopytext.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecommentnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecommentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecommentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodecommentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentfragmentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentfragmentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentfragmentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentnodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumentnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumenttypenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumenttypenodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodedocumenttypenodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeelementnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeelementnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeelementnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeelementnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentitynodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentitynodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentitynodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentitynodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentityreferencenodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentityreferencenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentityreferencenodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentityreferencenodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeentitysetnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetfirstchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetfirstchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetlastchild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetlastchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetnextsibling.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetnextsiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetownerdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetownerdocumentnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetprevioussibling.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodegetprevioussiblingnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodehaschildnodes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodehaschildnodesfalse.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbefore.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforedocfragment.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforeinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenewchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforerefchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeinsertbeforerefchildnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistindexequalzero.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistindexgetlength.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistindexgetlengthofemptylist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistindexnotzero.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistreturnfirstitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelistreturnlastitem.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodelisttraverselist.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodenotationnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodenotationnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodenotationnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodenotationnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeparentnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeparentnodenull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeprocessinginstructionnodeattributes.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeprocessinginstructionnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeprocessinginstructionnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeprocessinginstructionnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodeprocessinginstructionsetnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechildgetnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechildnode.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechildnomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechildnomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_noderemovechildoldchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechild.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildinvalidnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnewchilddiffdocument.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnewchildexists.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnodeancestor.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildnomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodereplacechildoldchildnonexistent.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodesetnodevaluenomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodesetnodevaluenomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodetextnodeattribute.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodetextnodename.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodetextnodetype.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodetextnodevalue.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue01.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue02.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue03.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue04.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue05.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue06.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue07.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue08.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_nodevalue09.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_notationgetnotationname.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_notationgetpublicid.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_notationgetpublicidnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_notationgetsystemid.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_notationgetsystemidnull.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_processinginstructiongetdata.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_processinginstructiongettarget.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_processinginstructionsetdatanomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textindexsizeerrnegativeoffset.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textindexsizeerroffsetoutofbounds.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textparseintolistofelements.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittextfour.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittextnomodificationallowederr.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittextnomodificationallowederrEE.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittextone.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittextthree.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textsplittexttwo.html create mode 100644 dom/tests/mochitest/dom-level1-core/test_textwithnomarkup.html create mode 100644 dom/tests/mochitest/dom-level2-core/DOMTestCase.js create mode 100644 dom/tests/mochitest/dom-level2-core/exclusions.js create mode 100644 dom/tests/mochitest/dom-level2-core/files/hc_staff.html create mode 100644 dom/tests/mochitest/dom-level2-core/files/hc_staff.svg create mode 100644 dom/tests/mochitest/dom-level2-core/files/hc_staff.xhtml create mode 100644 dom/tests/mochitest/dom-level2-core/files/hc_staff.xml create mode 100644 dom/tests/mochitest/dom-level2-core/files/internalSubset01.js create mode 100644 dom/tests/mochitest/dom-level2-core/files/nodtdstaff.svg create mode 100644 dom/tests/mochitest/dom-level2-core/files/nodtdstaff.xml create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff.svg create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff.xml create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff2.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff2.svg create mode 100644 dom/tests/mochitest/dom-level2-core/files/staff2.xml create mode 100644 dom/tests/mochitest/dom-level2-core/files/staffNS.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/files/staffNS.svg create mode 100644 dom/tests/mochitest/dom-level2-core/files/staffNS.xml create mode 100644 dom/tests/mochitest/dom-level2-core/files/svgtest.js create mode 100644 dom/tests/mochitest/dom-level2-core/files/svgunit.js create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml-lat1.ent create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml-special.ent create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml-symbol.ent create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml1-frameset.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml1-strict.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/files/xhtml1-transitional.dtd create mode 100644 dom/tests/mochitest/dom-level2-core/mochitest.toml create mode 100644 dom/tests/mochitest/dom-level2-core/test_attrgetownerelement01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_attrgetownerelement02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_attrgetownerelement03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_attrgetownerelement04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_attrgetownerelement05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createAttributeNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocument07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocumentType01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocumentType02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createDocumentType03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_createElementNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateattributeNS07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateelementNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateelementNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateelementNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentcreateelementNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementbyid01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementsbytagnameNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementsbytagnameNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementsbytagnameNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementsbytagnameNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentgetelementsbytagnameNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode10.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode11.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode12.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode13.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode14.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode15.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode17.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode18.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode19.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode20.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode21.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documentimportnode22.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documenttypepublicid01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_documenttypesystemid01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocument03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocument04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocument05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocument07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocumenttype01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocumenttype02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationcreatedocumenttype04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationfeaturecore.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationfeaturexmlversion2.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_domimplementationhasfeature01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetattributenodens01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetattributenodens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetattributenodens03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetattributens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetelementsbytagnamens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetelementsbytagnamens04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementgetelementsbytagnamens05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattribute01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattribute02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattribute03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattribute04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattributens01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattributens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementhasattributens03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementremoveattributens01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributenodens06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributens08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_elementsetattributensurinull.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNodeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getAttributeNodeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementById01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementById02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS10.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS11.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS12.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS13.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getElementsByTagNameNS14.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getNamedItemNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getNamedItemNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getNamedItemNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_getNamedItemNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttribute01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttribute02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttribute03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttribute04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributes01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hasAttributes02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hc_namednodemapinvalidtype1.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hc_nodedocumentfragmentnormalize1.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_hc_nodedocumentfragmentnormalize2.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode10.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode11.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode12.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode13.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode14.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode15.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode16.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_importNode17.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_localName01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_localName02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_localName04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapgetnameditemns06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapremovenameditemns09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns08.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns10.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namednodemapsetnameditemns11.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namespaceURI01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namespaceURI02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namespaceURI03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_namespaceURI04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodegetlocalname03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodegetnamespaceuri03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodegetownerdocument01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodegetownerdocument02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodegetprefix03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodehasattributes01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodehasattributes02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodehasattributes03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodehasattributes04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_nodenormalize01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_normalize01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_ownerDocument01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_ownerElement01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_ownerElement02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_prefix01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_prefix03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_prefix04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_publicId01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_removeAttributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_removeAttributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_removeNamedItemNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_removeNamedItemNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_removeNamedItemNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS06.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS07.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS09.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNS10.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNodeNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNodeNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNodeNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNodeNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setAttributeNodeNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setNamedItemNS01.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setNamedItemNS02.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setNamedItemNS03.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setNamedItemNS04.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_setNamedItemNS05.html create mode 100644 dom/tests/mochitest/dom-level2-core/test_systemId01.html create mode 100644 dom/tests/mochitest/dom-level2-html/DOMTestCase.js create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/anchor2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet2.class create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/applet2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/applets/org/w3c/domts/DOMTSApplet.class create mode 100644 dom/tests/mochitest/dom-level2-html/files/area.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/area.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/area.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/area2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/area2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/area2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/base.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/base.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/base.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/base2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/base2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/base2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/body.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/body.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/body.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/br.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/br.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/br.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/button.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/button.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/button.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/collection.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/collection.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/collection.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/directory.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/directory.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/directory.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/div.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/div.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/div.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/dl.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/dl.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/dl.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/document-with-applet.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/document.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/document.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/document.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/element.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/element.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/element.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/fieldset.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/fieldset.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/fieldset.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/font.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/font.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/font.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/form.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/form2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form3.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/form3.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/form3.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frame2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frameset.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/frameset.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/frameset.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/heading.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/heading.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/heading.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/hr.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/hr.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/hr.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/html.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/html.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/html.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/iframe2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/img.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/img.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/img.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/index.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/input.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/input.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/input.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/isindex.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/isindex.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/isindex.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/label.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/label.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/label.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/legend.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/legend.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/legend.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/li.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/li.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/li.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/link.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/link.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/link.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/link2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/link2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/link2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/map.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/map.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/map.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/menu.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/menu.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/menu.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/meta.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/meta.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/meta.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/mod.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/mod.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/mod.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/object.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/object.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/object.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/object2.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/object2.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/object2.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/olist.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/olist.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/olist.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/optgroup.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/optgroup.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/optgroup.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/option.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/option.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/option.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/optionscollection.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/optionscollection.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/optionscollection.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/paragraph.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/paragraph.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/paragraph.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/param.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/param.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/param.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/pre.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/pre.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/pre.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/quote.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/quote.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/quote.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/right.png create mode 100644 dom/tests/mochitest/dom-level2-html/files/script.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/script.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/script.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/select.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/select.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/select.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/style.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/style.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/style.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/table.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/table.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/table.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/table1.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/table1.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/table1.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecaption.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecaption.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecaption.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecell.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecell.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecell.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecol.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecol.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablecol.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablerow.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablerow.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablerow.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablesection.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablesection.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/tablesection.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/textarea.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/textarea.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/textarea.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/title.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/title.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/title.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/ulist.html create mode 100644 dom/tests/mochitest/dom-level2-html/files/ulist.xhtml create mode 100644 dom/tests/mochitest/dom-level2-html/files/ulist.xml create mode 100644 dom/tests/mochitest/dom-level2-html/files/w3c_main.png create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml-lat1.ent create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml-special.ent create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml-symbol.ent create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml1-frameset.dtd create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd create mode 100644 dom/tests/mochitest/dom-level2-html/files/xhtml1-transitional.dtd create mode 100644 dom/tests/mochitest/dom-level2-html/mochitest.toml create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBRElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLCollection12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDirectoryElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDivElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDlistElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLDocument21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement100.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement101.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement102.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement103.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement104.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement105.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement106.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement107.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement108.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement109.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement110.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement111.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement112.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement113.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement114.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement115.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement116.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement117.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement118.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement119.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement120.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement121.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement122.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement123.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement124.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement125.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement126.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement127.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement128.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement129.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement130.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement131.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement132.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement133.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement134.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement135.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement136.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement137.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement138.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement139.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement140.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement141.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement142.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement143.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement144.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement145.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement23.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement24.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement25.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement26.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement27.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement28.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement29.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement30.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement31.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement32.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement33.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement34.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement35.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement36.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement37.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement38.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement39.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement40.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement41.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement42.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement43.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement44.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement45.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement46.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement47.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement48.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement49.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement50.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement51.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement52.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement53.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement54.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement55.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement56.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement57.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement58.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement59.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement60.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement61.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement62.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement63.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement64.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement65.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement66.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement67.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement68.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement69.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement70.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement71.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement72.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement73.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement74.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement75.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement76.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement77.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement78.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement79.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement80.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement81.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement82.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement83.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement84.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement85.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement86.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement87.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement88.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement89.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement90.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement91.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement92.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement93.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement94.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement95.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement96.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement97.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement98.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLElement99.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFontElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFontElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFontElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFormElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHRElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHRElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHRElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHRElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLHtmlElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLImageElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLInputElement22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLIElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLIElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMapElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMapElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMenuElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLModElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLModElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLModElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLModElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOListElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOListElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOListElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLParagraphElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLParamElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLParamElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLParamElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLParamElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLPreElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCaptionElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement23.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement24.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement25.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement26.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement27.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement28.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement29.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement30.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement23.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement24.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement25.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement26.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement27.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement28.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement29.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement30.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement31.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement32.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement33.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement34.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement35.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement36.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement37.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement38.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement39.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableElement40.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement16.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement23.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement24.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement25.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement26.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement27.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement28.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement29.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement30.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement31.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLTitleElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLUListElement01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_HTMLUListElement02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_alltests.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_anchor06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_area01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_area02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_area03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_area04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_body01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_button09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_dlist01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_doc01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_hasFeature06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object05.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object11.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object13.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object14.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_object15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table01.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table02.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table03.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table04.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table06.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table07.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table08.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table09.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table10.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table12.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table15.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table17.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table18.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table19.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table20.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table21.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table22.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table23.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table24.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table25.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table26.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table27.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table28.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table29.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table30.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table31.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table32.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table33.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table34.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table35.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table36.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table37.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table38.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table39.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table40.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table41.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table42.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table43.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table44.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table45.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table46.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table47.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table48.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table49.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table50.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table51.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table52.html create mode 100644 dom/tests/mochitest/dom-level2-html/test_table53.html create mode 100644 dom/tests/mochitest/fetch/common_readableStreams.js create mode 100644 dom/tests/mochitest/fetch/common_temporaryFileBlob.js create mode 100644 dom/tests/mochitest/fetch/empty.js create mode 100644 dom/tests/mochitest/fetch/empty.js^headers^ create mode 100644 dom/tests/mochitest/fetch/fetch_test_framework.js create mode 100644 dom/tests/mochitest/fetch/file_fetch_cached_redirect.html create mode 100644 dom/tests/mochitest/fetch/file_fetch_cached_redirect.html^headers^ create mode 100644 dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html create mode 100644 dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html^headers^ create mode 100644 dom/tests/mochitest/fetch/file_fetch_observer.html create mode 100644 dom/tests/mochitest/fetch/iframe_readableStreams.html create mode 100644 dom/tests/mochitest/fetch/message_receiver.html create mode 100644 dom/tests/mochitest/fetch/mochitest.toml create mode 100644 dom/tests/mochitest/fetch/nested_worker_wrapper.js create mode 100644 dom/tests/mochitest/fetch/reroute.html create mode 100644 dom/tests/mochitest/fetch/reroute.js create mode 100644 dom/tests/mochitest/fetch/reroute.js^headers^ create mode 100644 dom/tests/mochitest/fetch/slow.sjs create mode 100644 dom/tests/mochitest/fetch/sw_reroute.js create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic.js create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http.js create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http2.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_empty_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http_sw_empty_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_http_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_sw_empty_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_basic_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_cached_redirect.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_cached_redirect.js create mode 100644 dom/tests/mochitest/fetch/test_fetch_cors.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_cors.js create mode 100644 dom/tests/mochitest/fetch/test_fetch_cors_sw_empty_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_cors_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_csp_block.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_observer.html create mode 100644 dom/tests/mochitest/fetch/test_fetch_user_control_rp.html create mode 100644 dom/tests/mochitest/fetch/test_formdataparsing.html create mode 100644 dom/tests/mochitest/fetch/test_formdataparsing.js create mode 100644 dom/tests/mochitest/fetch/test_formdataparsing_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_headers.html create mode 100644 dom/tests/mochitest/fetch/test_headers_common.js create mode 100644 dom/tests/mochitest/fetch/test_headers_mainthread.html create mode 100644 dom/tests/mochitest/fetch/test_headers_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_readableStreams.html create mode 100644 dom/tests/mochitest/fetch/test_request.html create mode 100644 dom/tests/mochitest/fetch/test_request.js create mode 100644 dom/tests/mochitest/fetch/test_request_context.html create mode 100644 dom/tests/mochitest/fetch/test_request_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_response.html create mode 100644 dom/tests/mochitest/fetch/test_response.js create mode 100644 dom/tests/mochitest/fetch/test_responseReadyForWasm.html create mode 100644 dom/tests/mochitest/fetch/test_response_sw_reroute.html create mode 100644 dom/tests/mochitest/fetch/test_temporaryFileBlob.html create mode 100644 dom/tests/mochitest/fetch/test_webassembly_streaming.html create mode 100644 dom/tests/mochitest/fetch/utils.js create mode 100644 dom/tests/mochitest/fetch/worker_readableStreams.js create mode 100644 dom/tests/mochitest/fetch/worker_temporaryFileBlob.js create mode 100644 dom/tests/mochitest/fetch/worker_wrapper.js create mode 100644 dom/tests/mochitest/fs/chrome.toml create mode 100644 dom/tests/mochitest/fs/page_blank.html create mode 100644 dom/tests/mochitest/fs/test_privateWin.html create mode 100644 dom/tests/mochitest/gamepad/gamepad_frame.html create mode 100644 dom/tests/mochitest/gamepad/gamepad_frame_state.html create mode 100644 dom/tests/mochitest/gamepad/mochitest.toml create mode 100644 dom/tests/mochitest/gamepad/mock_gamepad.js create mode 100644 dom/tests/mochitest/gamepad/test_check_timestamp.html create mode 100644 dom/tests/mochitest/gamepad/test_check_timestamp_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_connect_events.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_connect_events_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_extensions.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_extensions_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_hidden_frame.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin.html create mode 100644 dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin_iframe.html create mode 100644 dom/tests/mochitest/gamepad/test_navigator_gamepads.html create mode 100644 dom/tests/mochitest/gamepad/test_navigator_gamepads_iframe.html create mode 100644 dom/tests/mochitest/general/497633.html create mode 100644 dom/tests/mochitest/general/chrome.toml create mode 100644 dom/tests/mochitest/general/cssA.css create mode 100644 dom/tests/mochitest/general/cssB.css create mode 100644 dom/tests/mochitest/general/cssC.css create mode 100644 dom/tests/mochitest/general/embed_navigate.html create mode 100644 dom/tests/mochitest/general/emptyCssFile2.css create mode 100644 dom/tests/mochitest/general/fail.png create mode 100644 dom/tests/mochitest/general/file_bug628069.html create mode 100644 dom/tests/mochitest/general/file_clonewrapper.html create mode 100644 dom/tests/mochitest/general/file_domWindowUtils_scrollbarSize.html create mode 100644 dom/tests/mochitest/general/file_focusrings.html create mode 100644 dom/tests/mochitest/general/file_frameElementWrapping.html create mode 100644 dom/tests/mochitest/general/file_moving_nodeList.html create mode 100644 dom/tests/mochitest/general/file_moving_xhr.html create mode 100644 dom/tests/mochitest/general/file_resource_timing_nocors.html create mode 100644 dom/tests/mochitest/general/frameSelectEvents.html create mode 100644 dom/tests/mochitest/general/frameStorageAllowed.html create mode 100644 dom/tests/mochitest/general/frameStorageChrome.html create mode 100644 dom/tests/mochitest/general/frameStorageNullprincipal.sjs create mode 100644 dom/tests/mochitest/general/frameStoragePrevented.html create mode 100644 dom/tests/mochitest/general/generateCss.sjs create mode 100644 dom/tests/mochitest/general/historyframes.html create mode 100644 dom/tests/mochitest/general/image_100.png create mode 100644 dom/tests/mochitest/general/image_200.png create mode 100644 dom/tests/mochitest/general/image_50.png create mode 100644 dom/tests/mochitest/general/importsSameAndCrossOrigin.css create mode 100644 dom/tests/mochitest/general/mochitest.toml create mode 100644 dom/tests/mochitest/general/navigation_timing.html create mode 100644 dom/tests/mochitest/general/pass.apng create mode 100644 dom/tests/mochitest/general/performance_timeline_main_test.html create mode 100644 dom/tests/mochitest/general/postback.html create mode 100644 dom/tests/mochitest/general/res0.resource create mode 100644 dom/tests/mochitest/general/res1.resource create mode 100644 dom/tests/mochitest/general/res1.resource^headers^ create mode 100644 dom/tests/mochitest/general/res2.resource create mode 100644 dom/tests/mochitest/general/res2.resource^headers^ create mode 100644 dom/tests/mochitest/general/res3.resource create mode 100644 dom/tests/mochitest/general/res3.resource^headers^ create mode 100644 dom/tests/mochitest/general/res4.resource create mode 100644 dom/tests/mochitest/general/res4.resource^headers^ create mode 100644 dom/tests/mochitest/general/res5.resource create mode 100644 dom/tests/mochitest/general/res5.resource^headers^ create mode 100644 dom/tests/mochitest/general/res6.resource create mode 100644 dom/tests/mochitest/general/res6.resource^headers^ create mode 100644 dom/tests/mochitest/general/res7.resource create mode 100644 dom/tests/mochitest/general/res7.resource^headers^ create mode 100644 dom/tests/mochitest/general/res8.resource create mode 100644 dom/tests/mochitest/general/res8.resource^headers^ create mode 100644 dom/tests/mochitest/general/resource_timing.js create mode 100644 dom/tests/mochitest/general/resource_timing_cross_origin.html create mode 100644 dom/tests/mochitest/general/resource_timing_iframe.html create mode 100644 dom/tests/mochitest/general/resource_timing_location_navigate.html create mode 100644 dom/tests/mochitest/general/resource_timing_main_test.html create mode 100644 dom/tests/mochitest/general/resource_timing_meta_refresh.html create mode 100644 dom/tests/mochitest/general/resource_timing_nocors.html create mode 100644 dom/tests/mochitest/general/resource_timing_redirect.html create mode 100644 dom/tests/mochitest/general/resource_timing_redirect.html^headers^ create mode 100644 dom/tests/mochitest/general/start_historyframe.html create mode 100644 dom/tests/mochitest/general/storagePermissionsUtils.js create mode 100644 dom/tests/mochitest/general/test-data.json create mode 100644 dom/tests/mochitest/general/test-data2.json create mode 100644 dom/tests/mochitest/general/test_497898.html create mode 100644 dom/tests/mochitest/general/test_CCW_optimization.html create mode 100644 dom/tests/mochitest/general/test_DOMMatrix.html create mode 100644 dom/tests/mochitest/general/test_WebKitCSSMatrix.html create mode 100644 dom/tests/mochitest/general/test_bug1161721.html create mode 100644 dom/tests/mochitest/general/test_bug1170911.html create mode 100644 dom/tests/mochitest/general/test_bug1208217.html create mode 100644 dom/tests/mochitest/general/test_bug1313753.html create mode 100644 dom/tests/mochitest/general/test_bug1434273.html create mode 100644 dom/tests/mochitest/general/test_bug504220.html create mode 100644 dom/tests/mochitest/general/test_bug628069_1.html create mode 100644 dom/tests/mochitest/general/test_bug628069_2.html create mode 100644 dom/tests/mochitest/general/test_bug631440.html create mode 100644 dom/tests/mochitest/general/test_bug653364.html create mode 100644 dom/tests/mochitest/general/test_bug861217.html create mode 100644 dom/tests/mochitest/general/test_clientRects.html create mode 100644 dom/tests/mochitest/general/test_clipboard_disallowed.html create mode 100644 dom/tests/mochitest/general/test_clipboard_events.html create mode 100644 dom/tests/mochitest/general/test_consoleAPI.html create mode 100644 dom/tests/mochitest/general/test_contentViewer_overrideDPPX.html create mode 100644 dom/tests/mochitest/general/test_devicePixelRatio_with_zoom.html create mode 100644 dom/tests/mochitest/general/test_domWindowUtils.html create mode 100644 dom/tests/mochitest/general/test_domWindowUtils_scrollXY.html create mode 100644 dom/tests/mochitest/general/test_domWindowUtils_scrollbarSize.html create mode 100644 dom/tests/mochitest/general/test_donottrack.html create mode 100644 dom/tests/mochitest/general/test_focus_legend_noparent.html create mode 100644 dom/tests/mochitest/general/test_focus_scrollchildframe.html create mode 100644 dom/tests/mochitest/general/test_focusrings.xhtml create mode 100644 dom/tests/mochitest/general/test_for_of.html create mode 100644 dom/tests/mochitest/general/test_frameElementWrapping.html create mode 100644 dom/tests/mochitest/general/test_framedhistoryframes.html create mode 100644 dom/tests/mochitest/general/test_img_mutations.html create mode 100644 dom/tests/mochitest/general/test_innerScreen.xhtml create mode 100644 dom/tests/mochitest/general/test_interfaces.html create mode 100644 dom/tests/mochitest/general/test_interfaces.js create mode 100644 dom/tests/mochitest/general/test_interfaces_secureContext.html create mode 100644 dom/tests/mochitest/general/test_media_queries_with_zoom.html create mode 100644 dom/tests/mochitest/general/test_navigation_timing.html create mode 100644 dom/tests/mochitest/general/test_network_events.html create mode 100644 dom/tests/mochitest/general/test_nodeAdoption_chrome_boundary.xhtml create mode 100644 dom/tests/mochitest/general/test_offsets.css create mode 100644 dom/tests/mochitest/general/test_offsets.html create mode 100644 dom/tests/mochitest/general/test_offsets.js create mode 100644 dom/tests/mochitest/general/test_offsets.xhtml create mode 100644 dom/tests/mochitest/general/test_outerHTML.html create mode 100644 dom/tests/mochitest/general/test_outerHTML.xhtml create mode 100644 dom/tests/mochitest/general/test_paste_selection.html create mode 100644 dom/tests/mochitest/general/test_performance_nav_timing_before_onload.html create mode 100644 dom/tests/mochitest/general/test_performance_now.html create mode 100644 dom/tests/mochitest/general/test_performance_timeline.html create mode 100644 dom/tests/mochitest/general/test_picture_apng.html create mode 100644 dom/tests/mochitest/general/test_picture_mutations.html create mode 100644 dom/tests/mochitest/general/test_pointerPreserves3D.html create mode 100644 dom/tests/mochitest/general/test_pointerPreserves3DClip.html create mode 100644 dom/tests/mochitest/general/test_pointerPreserves3DPerspective.html create mode 100644 dom/tests/mochitest/general/test_resizeby.html create mode 100644 dom/tests/mochitest/general/test_resource_timing.html create mode 100644 dom/tests/mochitest/general/test_resource_timing_cross_origin.html create mode 100644 dom/tests/mochitest/general/test_resource_timing_cross_origin_navigate.html create mode 100644 dom/tests/mochitest/general/test_resource_timing_frameset.html create mode 100644 dom/tests/mochitest/general/test_resource_timing_nocors.html create mode 100644 dom/tests/mochitest/general/test_selectevents.html create mode 100644 dom/tests/mochitest/general/test_showModalDialog_removed.html create mode 100644 dom/tests/mochitest/general/test_spacetopagedown.html create mode 100644 dom/tests/mochitest/general/test_storagePermissionsAccept.html create mode 100644 dom/tests/mochitest/general/test_storagePermissionsLimitForeign.html create mode 100644 dom/tests/mochitest/general/test_storagePermissionsReject.html create mode 100644 dom/tests/mochitest/general/test_storagePermissionsRejectForeign.html create mode 100644 dom/tests/mochitest/general/test_stylesheetPI.html create mode 100644 dom/tests/mochitest/general/test_toggling_performance_navigation_timing.html create mode 100644 dom/tests/mochitest/general/test_vibrator.html create mode 100644 dom/tests/mochitest/general/test_windowProperties.html create mode 100644 dom/tests/mochitest/general/test_windowedhistoryframes.html create mode 100644 dom/tests/mochitest/general/url1_historyframe.html create mode 100644 dom/tests/mochitest/general/url2_historyframe.html create mode 100644 dom/tests/mochitest/general/window_clipboard_events.html create mode 100644 dom/tests/mochitest/general/window_storagePermissions.html create mode 100644 dom/tests/mochitest/general/workerStorageAllowed.js create mode 100644 dom/tests/mochitest/general/workerStoragePrevented.js create mode 100644 dom/tests/mochitest/geolocation/chrome.toml create mode 100644 dom/tests/mochitest/geolocation/crossorigin_iframe.html create mode 100644 dom/tests/mochitest/geolocation/file_featurePolicy.html create mode 100644 dom/tests/mochitest/geolocation/geolocation.html create mode 100644 dom/tests/mochitest/geolocation/geolocation_common.js create mode 100644 dom/tests/mochitest/geolocation/mochitest.toml create mode 100644 dom/tests/mochitest/geolocation/network_geolocation.sjs create mode 100644 dom/tests/mochitest/geolocation/popup.html create mode 100644 dom/tests/mochitest/geolocation/test_allowCurrent.html create mode 100644 dom/tests/mochitest/geolocation/test_allowWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_cachedPosition.html create mode 100644 dom/tests/mochitest/geolocation/test_cancelCurrent.html create mode 100644 dom/tests/mochitest/geolocation/test_cancelWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_clearWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_clearWatchBeforeAllowing.html create mode 100644 dom/tests/mochitest/geolocation/test_clearWatch_invalid.html create mode 100644 dom/tests/mochitest/geolocation/test_crossorigin_iframe.html create mode 100644 dom/tests/mochitest/geolocation/test_enableHighAccuracy.html create mode 100644 dom/tests/mochitest/geolocation/test_errorcheck.html create mode 100644 dom/tests/mochitest/geolocation/test_featurePolicy.html create mode 100644 dom/tests/mochitest/geolocation/test_garbageWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_geoGetCurrentPositionBlockedInInsecureContext.html create mode 100644 dom/tests/mochitest/geolocation/test_geoWatchPositionBlockedInInsecureContext.html create mode 100644 dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off.html create mode 100644 dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off_iframe.html create mode 100644 dom/tests/mochitest/geolocation/test_handlerSpinsEventLoop.html create mode 100644 dom/tests/mochitest/geolocation/test_hidden.html create mode 100644 dom/tests/mochitest/geolocation/test_manyCurrentConcurrent.html create mode 100644 dom/tests/mochitest/geolocation/test_manyCurrentSerial.html create mode 100644 dom/tests/mochitest/geolocation/test_manyWatchConcurrent.html create mode 100644 dom/tests/mochitest/geolocation/test_manyWatchSerial.html create mode 100644 dom/tests/mochitest/geolocation/test_manyWindows.html create mode 100644 dom/tests/mochitest/geolocation/test_native_provider.html create mode 100644 dom/tests/mochitest/geolocation/test_not_fully_active.html create mode 100644 dom/tests/mochitest/geolocation/test_optional_api_params.html create mode 100644 dom/tests/mochitest/geolocation/test_shutdown.html create mode 100644 dom/tests/mochitest/geolocation/test_timeoutCurrent.html create mode 100644 dom/tests/mochitest/geolocation/test_timeoutWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_timerRestartWatch.html create mode 100644 dom/tests/mochitest/geolocation/test_windowClose.html create mode 100644 dom/tests/mochitest/geolocation/test_worseAccuracyDoesNotBlockCallback.html create mode 100644 dom/tests/mochitest/geolocation/windowTest.html create mode 100644 dom/tests/mochitest/integer-gemm/mochitest.toml create mode 100644 dom/tests/mochitest/integer-gemm/test_unavailable_for_webpage.html create mode 100644 dom/tests/mochitest/keyhandling/browsertest.html create mode 100644 dom/tests/mochitest/keyhandling/chrome.toml create mode 100644 dom/tests/mochitest/keyhandling/mochitest.toml create mode 100644 dom/tests/mochitest/keyhandling/test_browser.xhtml create mode 100644 dom/tests/mochitest/keyhandling/test_editor.xhtml create mode 100644 dom/tests/mochitest/keyhandling/test_input.html create mode 100644 dom/tests/mochitest/keyhandling/test_textarea.html create mode 100644 dom/tests/mochitest/keyhandling/test_windowed.xhtml create mode 100644 dom/tests/mochitest/localstorage/chrome.toml create mode 100644 dom/tests/mochitest/localstorage/file_tryAccessSessionStorage.html create mode 100644 dom/tests/mochitest/localstorage/frameChromeSlave.html create mode 100644 dom/tests/mochitest/localstorage/frameKeySync.html create mode 100644 dom/tests/mochitest/localstorage/frameLocalStorageCookieSettings.html create mode 100644 dom/tests/mochitest/localstorage/frameLocalStorageSessionOnly.html create mode 100644 dom/tests/mochitest/localstorage/frameMasterEqual.html create mode 100644 dom/tests/mochitest/localstorage/frameMasterNotEqual.html create mode 100644 dom/tests/mochitest/localstorage/frameOrder.html create mode 100644 dom/tests/mochitest/localstorage/frameQuota.html create mode 100644 dom/tests/mochitest/localstorage/frameQuotaSessionOnly.html create mode 100644 dom/tests/mochitest/localstorage/frameReplace.html create mode 100644 dom/tests/mochitest/localstorage/frameSlaveEqual.html create mode 100644 dom/tests/mochitest/localstorage/frameSlaveNotEqual.html create mode 100644 dom/tests/mochitest/localstorage/interOriginFrame.js create mode 100644 dom/tests/mochitest/localstorage/interOriginTest.js create mode 100644 dom/tests/mochitest/localstorage/interOriginTest2.js create mode 100644 dom/tests/mochitest/localstorage/localStorageCommon.js create mode 100644 dom/tests/mochitest/localstorage/mochitest.toml create mode 100644 dom/tests/mochitest/localstorage/page_blank.html create mode 100644 dom/tests/mochitest/localstorage/test_brokenUTF-16.html create mode 100644 dom/tests/mochitest/localstorage/test_bug600307-DBOps.html create mode 100644 dom/tests/mochitest/localstorage/test_bug746272-1.html create mode 100644 dom/tests/mochitest/localstorage/test_bug746272-2.html create mode 100644 dom/tests/mochitest/localstorage/test_cookieBlock.html create mode 100644 dom/tests/mochitest/localstorage/test_embededNulls.html create mode 100644 dom/tests/mochitest/localstorage/test_keySync.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageBase.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageBasePrivateBrowsing_perwindowpb.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageBaseSessionOnly.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageCookieSettings.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageEnablePref.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageFromChrome.xhtml create mode 100644 dom/tests/mochitest/localstorage/test_localStorageKeyOrder.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageOriginsDiff.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageOriginsDomainDiffs.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageOriginsEquals.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageOriginsPortDiffs.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageOriginsSchemaDiffs.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageQuota.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing_perwindowpb.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly2.html create mode 100644 dom/tests/mochitest/localstorage/test_localStorageReplace.html create mode 100644 dom/tests/mochitest/localstorage/test_storageConstructor.html create mode 100644 dom/tests/mochitest/localstorage/windowProxy.html create mode 100644 dom/tests/mochitest/orientation/bug507902-frame.html create mode 100644 dom/tests/mochitest/orientation/mochitest.toml create mode 100644 dom/tests/mochitest/orientation/test_bug507902.html create mode 100644 dom/tests/mochitest/pointerlock/file_allowPointerLockSandboxFlag.html create mode 100644 dom/tests/mochitest/pointerlock/file_changeLockElement.html create mode 100644 dom/tests/mochitest/pointerlock/file_childIframe.html create mode 100644 dom/tests/mochitest/pointerlock/file_doubleLock.html create mode 100644 dom/tests/mochitest/pointerlock/file_escapeKey.html create mode 100644 dom/tests/mochitest/pointerlock/file_infiniteMovement.html create mode 100644 dom/tests/mochitest/pointerlock/file_locksvgelement.html create mode 100644 dom/tests/mochitest/pointerlock/file_movementXY.html create mode 100644 dom/tests/mochitest/pointerlock/file_nestedFullScreen.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerLockPref.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlock-api-with-shadow.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlock-api.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_no_user_gesture.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_not_focused.html create mode 100644 dom/tests/mochitest/pointerlock/file_pointerlockerror.html create mode 100644 dom/tests/mochitest/pointerlock/file_removedFromDOM.html create mode 100644 dom/tests/mochitest/pointerlock/file_retargetMouseEvents.html create mode 100644 dom/tests/mochitest/pointerlock/file_screenClientXYConst.html create mode 100644 dom/tests/mochitest/pointerlock/file_suppressSomeMouseEvents.html create mode 100644 dom/tests/mochitest/pointerlock/file_targetOutOfFocus.html create mode 100644 dom/tests/mochitest/pointerlock/file_withoutDOM.html create mode 100644 dom/tests/mochitest/pointerlock/iframe_differentDOM.html create mode 100644 dom/tests/mochitest/pointerlock/mochitest.toml create mode 100644 dom/tests/mochitest/pointerlock/pointerlock_utils.js create mode 100644 dom/tests/mochitest/pointerlock/test_closewindow-with-pointerlock.html create mode 100644 dom/tests/mochitest/pointerlock/test_pointerlock-api.html create mode 100644 dom/tests/mochitest/pointerlock/test_pointerlock_focus.html create mode 100644 dom/tests/mochitest/pointerlock/test_pointerlock_target_not_in_active_document.html create mode 100644 dom/tests/mochitest/pointerlock/test_pointerlock_xorigin_iframe.html create mode 100644 dom/tests/mochitest/script/bug1656248_frame.html create mode 100644 dom/tests/mochitest/script/file_blocked_script.sjs create mode 100644 dom/tests/mochitest/script/mochitest.toml create mode 100644 dom/tests/mochitest/script/slow.sjs create mode 100644 dom/tests/mochitest/script/subdir/bug1656248_import.mjs create mode 100644 dom/tests/mochitest/script/subdir/bug1656248_script.mjs create mode 100644 dom/tests/mochitest/script/test_bug1053321.html create mode 100644 dom/tests/mochitest/script/test_bug1656248.html create mode 100644 dom/tests/mochitest/script/test_bug1788532.html create mode 100644 dom/tests/mochitest/script/test_bug1788532_moduleA.mjs create mode 100644 dom/tests/mochitest/script/test_bug1788532_moduleB.mjs create mode 100644 dom/tests/mochitest/script/test_whitespace.html create mode 100644 dom/tests/mochitest/sessionstorage/chrome.toml create mode 100644 dom/tests/mochitest/sessionstorage/file_http.html create mode 100644 dom/tests/mochitest/sessionstorage/file_https.html create mode 100644 dom/tests/mochitest/sessionstorage/frameEqual.html create mode 100644 dom/tests/mochitest/sessionstorage/frameNotEqual.html create mode 100644 dom/tests/mochitest/sessionstorage/frameReplace.html create mode 100644 dom/tests/mochitest/sessionstorage/interOriginSlave.js create mode 100644 dom/tests/mochitest/sessionstorage/interOriginTest.js create mode 100644 dom/tests/mochitest/sessionstorage/mochitest.toml create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageBase.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageBaseSessionOnly.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageClone.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned_exempted.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageFromChrome.xhtml create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageHttpHttps.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageReplace.html create mode 100644 dom/tests/mochitest/sessionstorage/test_sessionStorageUsage.html create mode 100644 dom/tests/mochitest/storageevent/frameLocalStorageMaster.html create mode 100644 dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html create mode 100644 dom/tests/mochitest/storageevent/frameLocalStorageSlaveNotEqual.html create mode 100644 dom/tests/mochitest/storageevent/frameSessionStorageMasterEqual.html create mode 100644 dom/tests/mochitest/storageevent/frameSessionStorageMasterNotEqual.html create mode 100644 dom/tests/mochitest/storageevent/frameSessionStorageSlaveEqual.html create mode 100644 dom/tests/mochitest/storageevent/frameSessionStorageSlaveNotEqual.html create mode 100644 dom/tests/mochitest/storageevent/interOriginFrame.js create mode 100644 dom/tests/mochitest/storageevent/interOriginTest2.js create mode 100644 dom/tests/mochitest/storageevent/mochitest.toml create mode 100644 dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckNoPropagation.html create mode 100644 dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckPropagation.html create mode 100644 dom/tests/mochitest/storageevent/test_storageNotifications.html create mode 100644 dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckNoPropagation.html create mode 100644 dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckPropagation.html create mode 100644 dom/tests/mochitest/webcomponents/chrome.toml create mode 100644 dom/tests/mochitest/webcomponents/dummy_page.html create mode 100644 dom/tests/mochitest/webcomponents/head.js create mode 100644 dom/tests/mochitest/webcomponents/htmlconstructor_autonomous_tests.js create mode 100644 dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js create mode 100644 dom/tests/mochitest/webcomponents/inert_style.css create mode 100644 dom/tests/mochitest/webcomponents/mochitest.toml create mode 100644 dom/tests/mochitest/webcomponents/test_bug1017896.html create mode 100644 dom/tests/mochitest/webcomponents/test_bug1269155.html create mode 100644 dom/tests/mochitest/webcomponents/test_bug1276240.html create mode 100644 dom/tests/mochitest/webcomponents/test_bug900724.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_callback_innerhtml.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_define.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_define_parser.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_ensure_custom_element.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_get.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor_chrome.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_in_shadow.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_lifecycle.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_namespace.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_namespace.xhtml create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_set_element_creation_callback.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_stack.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_template.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_throw_on_dynamic_markup_insertion.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_uncatchable_exception.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_upgrade.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_upgrade_chrome.html create mode 100644 dom/tests/mochitest/webcomponents/test_custom_element_when_defined.html create mode 100644 dom/tests/mochitest/webcomponents/test_declarative_shadowdom_failure_log.html create mode 100644 dom/tests/mochitest/webcomponents/test_declarative_shadowdom_reentry.html create mode 100644 dom/tests/mochitest/webcomponents/test_detached_style.html create mode 100644 dom/tests/mochitest/webcomponents/test_document_adoptnode.html create mode 100644 dom/tests/mochitest/webcomponents/test_document_importnode.html create mode 100644 dom/tests/mochitest/webcomponents/test_event_composed.html create mode 100644 dom/tests/mochitest/webcomponents/test_event_retarget.html create mode 100644 dom/tests/mochitest/webcomponents/test_event_stopping.html create mode 100644 dom/tests/mochitest/webcomponents/test_link_prefetch.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowdom_active_pseudo_class.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowdom_ime.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowroot.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowroot_clonenode.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowroot_inert_element.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowroot_style.html create mode 100644 dom/tests/mochitest/webcomponents/test_shadowroot_style_order.html create mode 100644 dom/tests/mochitest/webcomponents/test_style_fallback_content.html create mode 100644 dom/tests/mochitest/webcomponents/test_template.html create mode 100644 dom/tests/mochitest/webcomponents/test_template_xhtml.html create mode 100644 dom/tests/mochitest/webcomponents/test_upgrade_page.html create mode 100644 dom/tests/mochitest/webcomponents/test_xul_custom_element.xhtml create mode 100644 dom/tests/mochitest/webcomponents/test_xul_shadowdom_accesskey.xhtml create mode 100644 dom/tests/mochitest/webcomponents/upgrade_tests.js create mode 100644 dom/tests/mochitest/whatwg/chrome.toml create mode 100644 dom/tests/mochitest/whatwg/file_bug500328_1.html create mode 100644 dom/tests/mochitest/whatwg/file_bug500328_2.html create mode 100644 dom/tests/mochitest/whatwg/file_structuredCloneAndExposed.sjs create mode 100644 dom/tests/mochitest/whatwg/mochitest.toml create mode 100644 dom/tests/mochitest/whatwg/postMessage_chrome_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_closed_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_hash.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_idn_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_joined_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_joined_helper2.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_onOther.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_origin_helper.xhtml create mode 100644 dom/tests/mochitest/whatwg/postMessage_override_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.js create mode 100644 dom/tests/mochitest/whatwg/postMessage_throw_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_transfer_helper.html create mode 100644 dom/tests/mochitest/whatwg/postMessage_userpass_helper.html create mode 100644 dom/tests/mochitest/whatwg/test_MessageEvent.html create mode 100644 dom/tests/mochitest/whatwg/test_MessageEvent_dispatchToOther.html create mode 100644 dom/tests/mochitest/whatwg/test_bug477323.html create mode 100644 dom/tests/mochitest/whatwg/test_bug500328.html create mode 100644 dom/tests/mochitest/whatwg/test_document_scripts.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_basehref.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_chrome.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_closed.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_hash.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_idn.xhtml create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_joined.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_onOther.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_origin.xhtml create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_override.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_special.xhtml create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_structured_clone.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_throw.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_transfer.html create mode 100644 dom/tests/mochitest/whatwg/test_postMessage_userpass.html create mode 100644 dom/tests/mochitest/whatwg/test_structuredCloneAndExposed.html create mode 100644 dom/tests/moz.build create mode 100644 dom/tests/reftest/bug1389406-01.xsl create mode 100644 dom/tests/reftest/bug1389406-02.xsl create mode 100644 dom/tests/reftest/bug1389406-ref.xml create mode 100644 dom/tests/reftest/bug1389406.xml create mode 100644 dom/tests/reftest/bug427779-ref.xml create mode 100644 dom/tests/reftest/bug427779.xml create mode 100644 dom/tests/reftest/bug439965-ref.html create mode 100644 dom/tests/reftest/bug439965.html create mode 100644 dom/tests/reftest/bug453105-ref.html create mode 100644 dom/tests/reftest/bug453105.html create mode 100644 dom/tests/reftest/bug456008-ref.html create mode 100644 dom/tests/reftest/bug456008.xhtml create mode 100644 dom/tests/reftest/bug559996-iframe.html create mode 100644 dom/tests/reftest/bug559996-ref-iframe.html create mode 100644 dom/tests/reftest/bug559996-ref.html create mode 100644 dom/tests/reftest/bug559996.html create mode 100644 dom/tests/reftest/bug591981-1.html create mode 100644 dom/tests/reftest/bug591981-2.html create mode 100644 dom/tests/reftest/bug591981-ref.html create mode 100644 dom/tests/reftest/bug591981-script.js create mode 100644 dom/tests/reftest/bug592366-1.html create mode 100644 dom/tests/reftest/bug592366-1.xhtml create mode 100644 dom/tests/reftest/bug592366-2.html create mode 100644 dom/tests/reftest/bug592366-2.xhtml create mode 100644 dom/tests/reftest/bug592366-ref.html create mode 100644 dom/tests/reftest/bug592366-ref.xhtml create mode 100644 dom/tests/reftest/bug798068-ref.xhtml create mode 100644 dom/tests/reftest/bug798068.xhtml create mode 100644 dom/tests/reftest/child592366-1.html create mode 100644 dom/tests/reftest/child592366-1.xhtml create mode 100644 dom/tests/reftest/child592366-2.html create mode 100644 dom/tests/reftest/child592366-2.xhtml create mode 100644 dom/tests/reftest/optiontext-ref.html create mode 100644 dom/tests/reftest/optiontext.html create mode 100644 dom/tests/reftest/reftest.list create mode 100644 dom/tests/reftest/script592366-2.js create mode 100644 dom/tests/reftest/xml-stylesheet/css_relative_href.xml create mode 100644 dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml create mode 100644 dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml^headers^ create mode 100644 dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml create mode 100644 dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml^headers^ create mode 100644 dom/tests/reftest/xml-stylesheet/embedded_dtd_id.svg create mode 100644 dom/tests/reftest/xml-stylesheet/error_no_href.svg create mode 100644 dom/tests/reftest/xml-stylesheet/fail.svg create mode 100644 dom/tests/reftest/xml-stylesheet/failer.css create mode 100644 dom/tests/reftest/xml-stylesheet/lreas_selflink_dtd_id.svg create mode 100644 dom/tests/reftest/xml-stylesheet/lreas_selflink_empty_href.svg create mode 100644 dom/tests/reftest/xml-stylesheet/lreas_selflink_relative_href.svg create mode 100644 dom/tests/reftest/xml-stylesheet/pass.svg create mode 100644 dom/tests/reftest/xml-stylesheet/passer.css create mode 100644 dom/tests/reftest/xml-stylesheet/passer_override.css create mode 100644 dom/tests/reftest/xml-stylesheet/reftest.list create mode 100644 dom/tests/reftest/xml-stylesheet/svg_passer.xslt create mode 100644 dom/tests/reftest/xml-stylesheet/xslt_relative_href.svg create mode 100644 dom/tests/reftest/xml-stylesheet/xslt_selflink_dtd_id.xml create mode 100644 dom/tests/reftest/xml-stylesheet/xslt_selflink_empty_href.xml create mode 100644 dom/tests/reftest/xml-stylesheet/xslt_selflink_relative_href.xml create mode 100644 dom/tests/unit/test_Fetch.js create mode 100644 dom/tests/unit/test_PromiseDebugging.js create mode 100644 dom/tests/unit/test_bug319968.js create mode 100644 dom/tests/unit/test_bug465752.js create mode 100644 dom/tests/unit/test_geolocation_monitor.js create mode 100644 dom/tests/unit/test_geolocation_position_unavailable.js create mode 100644 dom/tests/unit/test_geolocation_position_unavailable_wrap.js create mode 100644 dom/tests/unit/test_geolocation_provider.js create mode 100644 dom/tests/unit/test_geolocation_provider_timeout.js create mode 100644 dom/tests/unit/test_geolocation_reset_accuracy.js create mode 100644 dom/tests/unit/test_geolocation_reset_accuracy_wrap.js create mode 100644 dom/tests/unit/test_geolocation_timeout.js create mode 100644 dom/tests/unit/test_geolocation_timeout_wrap.js create mode 100644 dom/tests/unit/test_xhr_init.js create mode 100644 dom/tests/unit/xpcshell.toml (limited to 'dom/tests') diff --git a/dom/tests/browser/beforeunload_test_page.html b/dom/tests/browser/beforeunload_test_page.html new file mode 100644 index 0000000000..12dc636e23 --- /dev/null +++ b/dom/tests/browser/beforeunload_test_page.html @@ -0,0 +1,92 @@ + + + + +

+ There are currently 0 beforeunload handlers registered in this frame. +

+

+ There are currently 0 beforeunload handlers registered on my subframe. +

+ + + + + + + diff --git a/dom/tests/browser/browser.toml b/dom/tests/browser/browser.toml new file mode 100644 index 0000000000..dfb7c2c569 --- /dev/null +++ b/dom/tests/browser/browser.toml @@ -0,0 +1,177 @@ +[DEFAULT] +support-files = [ + "browser_frame_elements.html", + "page_privatestorageevent.html", + "page_localStorage.js", + "page_localstorage.html", + "page_localstorage_coop+coep.html", + "page_localstorage_coop+coep.html^headers^", + "page_localstorage_snapshotting.html", + "position.html", + "test-console-api.html", + "test_bug1004814.html", + "worker_bug1004814.js", + "geo_leak_test.html", + "dummy.html", + "dummy.png", + "helper_localStorage.js", + "!/dom/tests/mochitest/geolocation/network_geolocation.sjs", +] + +["browser_ConsoleAPI_originAttributes.js"] + +["browser_ConsoleStorageAPITests.js"] + +["browser_ConsoleStoragePBTest_perwindowpb.js"] + +["browser_alert_from_about_blank.js"] + +["browser_autofocus_background.js"] + +["browser_autofocus_preference.js"] + +["browser_beforeunload_between_chrome_content.js"] +https_first_disabled = true + +["browser_bug396843.js"] + +["browser_bug1004814.js"] + +["browser_bug1008941_dismissGeolocationHanger.js"] +tags = "geolocation" + +["browser_bug1236512.js"] +skip-if = ["os != 'mac'"] + +["browser_bug1238427.js"] + +["browser_bug1316330.js"] + +["browser_bug1563629.js"] +support-files = ["file_postMessage_parent.html"] + +["browser_bug1685807.js"] +support-files = ["file_bug1685807.html"] + +["browser_bug1709346.js"] +support-files = [ + "load_forever.sjs", + "file_empty_cross_site_frame.html", +] + +["browser_bytecode_cache_asm_js.js"] +support-files = [ + "page_bytecode_cache_asm_js.html", + "page_bytecode_cache_asm_js.js", +] + +["browser_cancel_keydown_keypress_event.js"] +support-files = ["prevent_return_key.html"] + +["browser_data_document_crossOriginIsolated.js"] + +["browser_focus_steal_from_chrome.js"] + +["browser_focus_steal_from_chrome_during_mousedown.js"] + +["browser_form_associated_custom_elements_validity.js"] +support-files = ["file_empty.html"] + +["browser_frame_elements.js"] + +["browser_hasActivePeerConnections.js"] +support-files = ["create_webrtc_peer_connection.html"] +skip-if = [ + "os == 'linux' && bits == 64", # Bug 1742012 + "os == 'win' && debug", # Bug 1742012 +] + +["browser_hasbeforeunload.js"] +https_first_disabled = true +support-files = ["beforeunload_test_page.html"] + +["browser_keypressTelemetry.js"] +skip-if = ["true"] + +["browser_localStorage_e10s.js"] +https_first_disabled = true +fail-if = ["fission"] +skip-if = [ + "verify", + "tsan", # Times out on TSan intermittently. +] + +["browser_localStorage_fis.js"] +skip-if = [ + "verify", + "tsan", +] + +["browser_localStorage_privatestorageevent.js"] + +["browser_localStorage_snapshotting.js"] + +["browser_navigate_replace_browsingcontext.js"] + +["browser_noopener.js"] +skip-if = ["verify && debug && os == 'linux'"] +support-files = [ + "test_noopener_source.html", + "test_noopener_target.html", +] + +["browser_noopener_null_uri.js"] + +["browser_persist_cookies.js"] +support-files = [ + "set-samesite-cookies-and-redirect.sjs", + "mimeme.sjs", +] + +["browser_persist_cross_origin_iframe.js"] +support-files = ["image.html"] + +["browser_persist_image_accept.js"] + +["browser_persist_mixed_content_image.js"] +support-files = ["test_mixed_content_image.html"] + +["browser_pointerlock_warning.js"] + +["browser_sessionStorage_navigation.js"] +skip-if = ["os == 'linux' && bits == 64 && !debug"] # Bug 1712961 +support-files = [ + "file_empty.html", + "file_coop_coep.html", + "file_coop_coep.html^headers^", +] + +["browser_test_focus_after_modal_state.js"] +skip-if = ["verify"] +support-files = ["focus_after_prompt.html"] + +["browser_test_new_window_from_content.js"] +tags = "openwindow" +skip-if = [ + "os == 'android'", + "os == 'linux' && debug", # see bug 1261495 for Linux debug time outs +] +support-files = ["test_new_window_from_content_child.html"] + +["browser_test_toolbars_visibility.js"] +https_first_disabled = true +support-files = ["test_new_window_from_content_child.html"] + +["browser_unlinkable_about_page_can_load_module_scripts.js"] +support-files = [ + "file_load_module_script.html", + "file_module_loaded.mjs", + "file_module_loaded2.mjs", +] + +["browser_wakelock.js"] + +["browser_windowProxy_transplant.js"] +support-files = ["file_postMessage_parent.html"] + +["browser_xhr_sandbox.js"] diff --git a/dom/tests/browser/browser_ConsoleAPI_originAttributes.js b/dom/tests/browser/browser_ConsoleAPI_originAttributes.js new file mode 100644 index 0000000000..a9cc4989db --- /dev/null +++ b/dom/tests/browser/browser_ConsoleAPI_originAttributes.js @@ -0,0 +1,108 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +const ConsoleAPIStorage = Cc["@mozilla.org/consoleAPI-storage;1"].getService( + Ci.nsIConsoleAPIStorage +); + +const { WebExtensionPolicy } = Cu.getGlobalForObject( + ChromeUtils.importESModule("resource://gre/modules/AppConstants.sys.mjs") +); + +const FAKE_ADDON_ID = "test-webext-addon@mozilla.org"; +const EXPECTED_CONSOLE_ID = `addon/${FAKE_ADDON_ID}`; +const EXPECTED_CONSOLE_MESSAGE_CONTENT = "fake-webext-addon-test-log-message"; + +const ConsoleObserver = { + init() { + ConsoleAPIStorage.addLogEventListener( + this.observe, + Cc["@mozilla.org/systemprincipal;1"].createInstance(Ci.nsIPrincipal) + ); + }, + + uninit() { + ConsoleAPIStorage.removeLogEventListener(this.observe); + }, + + observe(aSubject) { + let consoleAPIMessage = aSubject.wrappedJSObject; + + is( + consoleAPIMessage.arguments[0], + EXPECTED_CONSOLE_MESSAGE_CONTENT, + "the consoleAPIMessage contains the expected message" + ); + + is( + consoleAPIMessage.addonId, + FAKE_ADDON_ID, + "the consoleAPImessage originAttributes contains the expected addonId" + ); + + let cachedMessages = ConsoleAPIStorage.getEvents().filter(msg => { + return msg.addonId == FAKE_ADDON_ID; + }); + + is( + cachedMessages.length, + 1, + "found the expected cached console messages from the addon" + ); + is( + cachedMessages[0] && cachedMessages[0].addonId, + FAKE_ADDON_ID, + "the cached message originAttributes contains the expected addonId" + ); + + finish(); + }, +}; + +function test() { + ConsoleObserver.init(); + + waitForExplicitFinish(); + + let uuidGenerator = Services.uuid; + let uuid = uuidGenerator.generateUUID().number; + uuid = uuid.slice(1, -1); // Strip { and } off the UUID. + + const url = `moz-extension://${uuid}/`; + let policy = new WebExtensionPolicy({ + id: FAKE_ADDON_ID, + mozExtensionHostname: uuid, + baseURL: "file:///", + allowedOrigins: new MatchPatternSet([]), + localizeCallback() {}, + }); + policy.active = true; + + let baseURI = Services.io.newURI(url); + let principal = Services.scriptSecurityManager.createContentPrincipal( + baseURI, + {} + ); + + let chromeWebNav = Services.appShell.createWindowlessBrowser(true); + let docShell = chromeWebNav.docShell; + docShell.createAboutBlankDocumentViewer(principal, principal); + + info("fake webextension docShell created"); + + registerCleanupFunction(function () { + policy.active = false; + if (chromeWebNav) { + chromeWebNav.close(); + chromeWebNav = null; + } + ConsoleObserver.uninit(); + }); + + let window = docShell.docViewer.DOMDocument.defaultView; + window.eval(`console.log("${EXPECTED_CONSOLE_MESSAGE_CONTENT}");`); + chromeWebNav.close(); + chromeWebNav = null; + + info("fake webextension page logged a console api message"); +} diff --git a/dom/tests/browser/browser_ConsoleStorageAPITests.js b/dom/tests/browser/browser_ConsoleStorageAPITests.js new file mode 100644 index 0000000000..f28db48a91 --- /dev/null +++ b/dom/tests/browser/browser_ConsoleStorageAPITests.js @@ -0,0 +1,108 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +const TEST_URI = + "http://example.com/browser/dom/tests/browser/test-console-api.html"; + +function tearDown() { + while (gBrowser.tabs.length > 1) { + gBrowser.removeCurrentTab(); + } +} + +add_task(async function () { + // Don't cache removed tabs, so "clear console cache on tab close" triggers. + await SpecialPowers.pushPrefEnv({ set: [["browser.tabs.max_tabs_undo", 0]] }); + + registerCleanupFunction(tearDown); + + info( + "Open a keepalive tab in the background to make sure we don't accidentally kill the content process" + ); + var keepaliveTab = await BrowserTestUtils.addTab( + gBrowser, + "data:text/html,Keep Alive Tab" + ); + + info("Open the main tab to run the test in"); + var tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URI); + var browser = gBrowser.selectedBrowser; + + const windowId = await ContentTask.spawn(browser, null, async function (opt) { + let ConsoleAPIStorage = Cc["@mozilla.org/consoleAPI-storage;1"].getService( + Ci.nsIConsoleAPIStorage + ); + + let observerPromise = new Promise(resolve => { + let apiCallCount = 0; + function observe(aSubject) { + apiCallCount++; + info(`Received ${apiCallCount} console log events`); + if (apiCallCount == 4) { + ConsoleAPIStorage.removeLogEventListener(observe); + resolve(); + } + } + + info("Setting up observer"); + ConsoleAPIStorage.addLogEventListener( + observe, + Cc["@mozilla.org/systemprincipal;1"].createInstance(Ci.nsIPrincipal) + ); + }); + + info("Emit a few console API logs"); + content.console.log("this", "is", "a", "log", "message"); + content.console.info("this", "is", "a", "info", "message"); + content.console.warn("this", "is", "a", "warn", "message"); + content.console.error("this", "is", "a", "error", "message"); + + info("Wait for the corresponding log event"); + await observerPromise; + + const innerWindowId = content.windowGlobalChild.innerWindowId; + const events = ConsoleAPIStorage.getEvents(innerWindowId).filter( + message => + message.arguments[0] === "this" && + message.arguments[1] === "is" && + message.arguments[2] === "a" && + message.arguments[4] === "message" + ); + is(events.length, 4, "The storage service got the messages we emitted"); + + info("Ensure clearEvents does remove the events from storage"); + ConsoleAPIStorage.clearEvents(); + is(ConsoleAPIStorage.getEvents(innerWindowId).length, 0, "Cleared Storage"); + + return content.windowGlobalChild.innerWindowId; + }); + + await SpecialPowers.spawn(browser, [], function () { + // make sure a closed window's events are in fact removed from + // the storage cache + content.console.log("adding a new event"); + }); + + info("Close the window"); + gBrowser.removeTab(tab, { animate: false }); + // Ensure actual window destruction is not delayed (too long). + SpecialPowers.DOMWindowUtils.garbageCollect(); + + // Spawn the check in the keepaliveTab, so that we can read the ConsoleAPIStorage correctly + gBrowser.selectedTab = keepaliveTab; + browser = gBrowser.selectedBrowser; + + // Spin the event loop to make sure everything is cleared. + await SpecialPowers.spawn(browser, [], () => {}); + + await SpecialPowers.spawn(browser, [windowId], function (windowId) { + var ConsoleAPIStorage = Cc["@mozilla.org/consoleAPI-storage;1"].getService( + Ci.nsIConsoleAPIStorage + ); + is( + ConsoleAPIStorage.getEvents(windowId).length, + 0, + "tab close is clearing the cache" + ); + }); +}); diff --git a/dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js b/dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js new file mode 100644 index 0000000000..38f85ef5b1 --- /dev/null +++ b/dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js @@ -0,0 +1,96 @@ +/* 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/. */ +function test() { + // initialization + waitForExplicitFinish(); + let windowsToClose = []; + let innerID; + let beforeEvents; + let afterEvents; + let storageShouldOccur; + let testURI = + "http://example.com/browser/dom/tests/browser/test-console-api.html"; + let ConsoleAPIStorage = Cc["@mozilla.org/consoleAPI-storage;1"].getService( + Ci.nsIConsoleAPIStorage + ); + + function getInnerWindowId(aWindow) { + return aWindow.windowGlobalChild.innerWindowId; + } + + function whenNewWindowLoaded(aOptions, aCallback) { + let win = OpenBrowserWindow(aOptions); + win.addEventListener( + "load", + function () { + aCallback(win); + }, + { once: true } + ); + } + + function doTest(aIsPrivateMode, aWindow, aCallback) { + BrowserTestUtils.browserLoaded(aWindow.gBrowser.selectedBrowser).then( + () => { + function observe(aSubject) { + afterEvents = ConsoleAPIStorage.getEvents(innerID); + is( + beforeEvents.length == afterEvents.length - 1, + storageShouldOccur, + "storage should" + (storageShouldOccur ? "" : " not") + " occur" + ); + + executeSoon(function () { + ConsoleAPIStorage.removeLogEventListener(observe); + aCallback(); + }); + } + + ConsoleAPIStorage.addLogEventListener( + observe, + aWindow.document.nodePrincipal + ); + aWindow.nativeConsole.log( + "foo bar baz (private: " + aIsPrivateMode + ")" + ); + } + ); + + // We expect that console API messages are always stored. + storageShouldOccur = true; + innerID = getInnerWindowId(aWindow); + beforeEvents = ConsoleAPIStorage.getEvents(innerID); + BrowserTestUtils.startLoadingURIString( + aWindow.gBrowser.selectedBrowser, + testURI + ); + } + + function testOnWindow(aOptions, aCallback) { + whenNewWindowLoaded(aOptions, function (aWin) { + windowsToClose.push(aWin); + // execute should only be called when need, like when you are opening + // web pages on the test. If calling executeSoon() is not necesary, then + // call whenNewWindowLoaded() instead of testOnWindow() on your test. + executeSoon(() => aCallback(aWin)); + }); + } + + // this function is called after calling finish() on the test. + registerCleanupFunction(function () { + windowsToClose.forEach(function (aWin) { + aWin.close(); + }); + }); + + // test first when not on private mode + testOnWindow({}, function (aWin) { + doTest(false, aWin, function () { + // then test when on private mode + testOnWindow({ private: true }, function (aWin) { + doTest(true, aWin, finish); + }); + }); + }); +} diff --git a/dom/tests/browser/browser_alert_from_about_blank.js b/dom/tests/browser/browser_alert_from_about_blank.js new file mode 100644 index 0000000000..aa12dd1f7e --- /dev/null +++ b/dom/tests/browser/browser_alert_from_about_blank.js @@ -0,0 +1,42 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +add_task(async function test_check_alert_from_blank() { + await BrowserTestUtils.withNewTab( + "https://example.com/blank", + async browser => { + await SpecialPowers.spawn(browser, [], () => { + let button = content.document.createElement("button"); + button.addEventListener("click", () => { + let newWin = content.open( + "about:blank", + "", + "popup,width=600,height=600" + ); + newWin.alert("Alert from the popup."); + }); + content.document.body.append(button); + }); + let newWinPromise = BrowserTestUtils.waitForNewWindow(); + await BrowserTestUtils.synthesizeMouseAtCenter("button", {}, browser); + let otherWin = await newWinPromise; + Assert.equal( + otherWin.gBrowser.currentURI?.spec, + "about:blank", + "Should have opened about:blank" + ); + Assert.equal( + otherWin.menubar.visible, + false, + "Should be a popup window." + ); + let contentDialogManager = gBrowser + .getTabDialogBox(gBrowser.selectedBrowser) + .getContentDialogManager(); + todo_is(contentDialogManager._dialogs.length, 1, "Should have 1 dialog."); + await BrowserTestUtils.closeWindow(otherWin); + } + ); +}); diff --git a/dom/tests/browser/browser_autofocus_background.js b/dom/tests/browser/browser_autofocus_background.js new file mode 100644 index 0000000000..7c0696cfd2 --- /dev/null +++ b/dom/tests/browser/browser_autofocus_background.js @@ -0,0 +1,59 @@ +add_task(async function () { + const URL = + "data:text/html,"; + const foregroundTab = gBrowser.selectedTab; + const backgroundTab = BrowserTestUtils.addTab(gBrowser); + + // Ensure tab is still in the foreground. + is( + gBrowser.selectedTab, + foregroundTab, + "foregroundTab should still be selected" + ); + + // Load the second tab in the background. + const loadedPromise = BrowserTestUtils.browserLoaded( + backgroundTab.linkedBrowser, + /* includesubframes */ false, + URL + ); + BrowserTestUtils.startLoadingURIString(backgroundTab.linkedBrowser, URL); + await loadedPromise; + + // Get active element in the tab. + let tagName = await SpecialPowers.spawn( + backgroundTab.linkedBrowser, + [], + async function () { + // Spec asks us to flush autofocus candidates in the + // `update-the-rendering` step, so we need to wait + // for a rAF to ensure autofocus candidates are + // flushed. + await new Promise(r => { + content.requestAnimationFrame(r); + }); + return content.document.activeElement.tagName; + } + ); + + is( + tagName, + "INPUT", + "The background tab's focused element should be the " + ); + + is( + gBrowser.selectedTab, + foregroundTab, + "foregroundTab tab should still be selected, shouldn't cause a tab switch" + ); + + is( + document.activeElement, + foregroundTab.linkedBrowser, + "The background tab's focused element should not cause the tab to be selected" + ); + + // Cleaning up. + BrowserTestUtils.removeTab(backgroundTab); +}); diff --git a/dom/tests/browser/browser_autofocus_preference.js b/dom/tests/browser/browser_autofocus_preference.js new file mode 100644 index 0000000000..8fdb08ff98 --- /dev/null +++ b/dom/tests/browser/browser_autofocus_preference.js @@ -0,0 +1,16 @@ +add_task(async function () { + await SpecialPowers.pushPrefEnv({ set: [["browser.autofocus", false]] }); + + const url = + "data:text/html,"; + + let loadedPromise = BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser); + BrowserTestUtils.startLoadingURIString(gBrowser.selectedBrowser, url); + await loadedPromise; + + await new Promise(resolve => executeSoon(resolve)); + + await SpecialPowers.spawn(gBrowser.selectedBrowser, [], async function () { + is(content.document.activeElement, content.document.body, "body focused"); + }); +}); diff --git a/dom/tests/browser/browser_beforeunload_between_chrome_content.js b/dom/tests/browser/browser_beforeunload_between_chrome_content.js new file mode 100644 index 0000000000..ae211c59fe --- /dev/null +++ b/dom/tests/browser/browser_beforeunload_between_chrome_content.js @@ -0,0 +1,152 @@ +const TEST_URL = "http://www.example.com/browser/dom/tests/browser/dummy.html"; + +const { PromptTestUtils } = ChromeUtils.importESModule( + "resource://testing-common/PromptTestUtils.sys.mjs" +); + +function pageScript() { + window.addEventListener( + "beforeunload", + function (event) { + var str = "Leaving?"; + event.returnValue = str; + return str; + }, + true + ); +} + +function injectBeforeUnload(browser) { + return ContentTask.spawn(browser, null, async function () { + content.window.addEventListener( + "beforeunload", + function (event) { + sendAsyncMessage("Test:OnBeforeUnloadReceived"); + var str = "Leaving?"; + event.returnValue = str; + return str; + }, + true + ); + }); +} + +// Wait for onbeforeunload dialog, and dismiss it immediately. +function awaitAndCloseBeforeUnloadDialog(browser, doStayOnPage) { + return PromptTestUtils.handleNextPrompt( + browser, + { modalType: Services.prompt.MODAL_TYPE_CONTENT, promptType: "confirmEx" }, + { buttonNumClick: doStayOnPage ? 1 : 0 } + ); +} + +SpecialPowers.pushPrefEnv({ + set: [["dom.require_user_interaction_for_beforeunload", false]], +}); + +/** + * Test navigation from a content page to a chrome page. Also check that only + * one beforeunload event is fired. + */ +/* global messageManager */ +add_task(async function () { + let beforeUnloadCount = 0; + messageManager.addMessageListener("Test:OnBeforeUnloadReceived", function () { + beforeUnloadCount++; + }); + + // Open a content page. + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URL); + let browser = tab.linkedBrowser; + + ok(browser.isRemoteBrowser, "Browser should be remote."); + + await injectBeforeUnload(browser); + // Navigate to a chrome page. + let dialogShown1 = awaitAndCloseBeforeUnloadDialog(browser, false); + BrowserTestUtils.startLoadingURIString(browser, "about:support"); + await Promise.all([dialogShown1, BrowserTestUtils.browserLoaded(browser)]); + + is(beforeUnloadCount, 1, "Should have received one beforeunload event."); + ok(!browser.isRemoteBrowser, "Browser should not be remote."); + + // Go back to content page. + ok(gBrowser.webNavigation.canGoBack, "Should be able to go back."); + gBrowser.goBack(); + await BrowserTestUtils.browserLoaded(browser); + await injectBeforeUnload(browser); + + // Test that going forward triggers beforeunload prompt as well. + ok(gBrowser.webNavigation.canGoForward, "Should be able to go forward."); + let dialogShown2 = awaitAndCloseBeforeUnloadDialog(false); + gBrowser.goForward(); + await Promise.all([dialogShown2, BrowserTestUtils.browserLoaded(browser)]); + is(beforeUnloadCount, 2, "Should have received two beforeunload events."); + + BrowserTestUtils.removeTab(tab); +}); + +/** + * Test navigation from a chrome page to a content page. Also check that only + * one beforeunload event is fired. + */ +add_task(async function () { + let beforeUnloadCount = 0; + messageManager.addMessageListener("Test:OnBeforeUnloadReceived", function () { + beforeUnloadCount++; + }); + + // Open a chrome page. + let tab = await BrowserTestUtils.openNewForegroundTab( + gBrowser, + "about:support" + ); + let browser = tab.linkedBrowser; + + ok(!browser.isRemoteBrowser, "Browser should not be remote."); + await ContentTask.spawn(browser, null, async function () { + content.window.addEventListener( + "beforeunload", + function (event) { + sendAsyncMessage("Test:OnBeforeUnloadReceived"); + var str = "Leaving?"; + event.returnValue = str; + return str; + }, + true + ); + }); + + // Navigate to a content page. + let dialogShown1 = awaitAndCloseBeforeUnloadDialog(false); + BrowserTestUtils.startLoadingURIString(browser, TEST_URL); + await Promise.all([dialogShown1, BrowserTestUtils.browserLoaded(browser)]); + is(beforeUnloadCount, 1, "Should have received one beforeunload event."); + ok(browser.isRemoteBrowser, "Browser should be remote."); + + // Go back to chrome page. + ok(gBrowser.webNavigation.canGoBack, "Should be able to go back."); + gBrowser.goBack(); + await BrowserTestUtils.browserLoaded(browser); + await ContentTask.spawn(browser, null, async function () { + content.window.addEventListener( + "beforeunload", + function (event) { + sendAsyncMessage("Test:OnBeforeUnloadReceived"); + var str = "Leaving?"; + event.returnValue = str; + return str; + }, + true + ); + }); + + // Test that going forward triggers beforeunload prompt as well. + ok(gBrowser.webNavigation.canGoForward, "Should be able to go forward."); + let dialogShown2 = awaitAndCloseBeforeUnloadDialog(false); + gBrowser.goForward(); + await Promise.all([dialogShown2, BrowserTestUtils.browserLoaded(browser)]); + is(beforeUnloadCount, 2, "Should have received two beforeunload events."); + + BrowserTestUtils.removeTab(tab); +}); diff --git a/dom/tests/browser/browser_bug1004814.js b/dom/tests/browser/browser_bug1004814.js new file mode 100644 index 0000000000..789709a8d7 --- /dev/null +++ b/dom/tests/browser/browser_bug1004814.js @@ -0,0 +1,47 @@ +/* vim:set ts=2 sw=2 sts=2 et: */ +/* 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/. */ + +add_task(async function () { + const TEST_URI = + "http://example.com/browser/dom/tests/browser/test_bug1004814.html"; + + await BrowserTestUtils.withNewTab(TEST_URI, async aBrowser => { + let duration = await SpecialPowers.spawn(aBrowser, [], function (opts) { + const ConsoleAPIStorage = Cc[ + "@mozilla.org/consoleAPI-storage;1" + ].getService(Ci.nsIConsoleAPIStorage); + + return new Promise(resolve => { + function observe(aSubject) { + var obj = aSubject.wrappedJSObject; + if ( + obj.arguments.length != 1 || + obj.arguments[0] != "bug1004814" || + obj.level != "timeEnd" + ) { + return; + } + + ConsoleAPIStorage.removeLogEventListener(observe); + resolve(obj.timer.duration); + } + + ConsoleAPIStorage.addLogEventListener( + observe, + Cc["@mozilla.org/systemprincipal;1"].createInstance(Ci.nsIPrincipal) + ); + + var w = new content.Worker("worker_bug1004814.js"); + w.postMessage(true); + }); + }); + + Assert.greater( + duration, + 0, + "ConsoleEvent.timer.duration > 0: " + duration + " ~ 200ms" + ); + }); +}); diff --git a/dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js b/dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js new file mode 100644 index 0000000000..ae339e1d8d --- /dev/null +++ b/dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js @@ -0,0 +1,45 @@ +/* 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 TEST_URI = + // eslint-disable-next-line no-useless-concat + "https://example.com/" + "browser/dom/tests/browser/position.html"; + +add_task(async function testDismissHanger() { + info( + "Check that location is not shared when dismissing the geolocation hanger" + ); + + let promisePanelShown = BrowserTestUtils.waitForEvent( + PopupNotifications.panel, + "popupshown", + true + ); + await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URI); + await promisePanelShown; + + // We intentionally turn off this a11y check, because the following click + // is sent on the to dismiss the Geolocation hanger using an + // alternative way of the popup dismissal, while the other way like `Esc` key + // is available for assistive technology users, thus this test can be ignored. + AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false }); + // click outside the Geolocation hanger to dismiss it + window.document.getElementById("nav-bar").click(); + AccessibilityUtils.resetEnv(); + info("Clicked outside the Geolocation panel to dismiss it"); + + let hasLocation = await SpecialPowers.spawn( + gBrowser.selectedBrowser, + [], + async function () { + return content.document.body.innerHTML.includes("location..."); + } + ); + + ok(hasLocation, "Location is not shared"); + + BrowserTestUtils.removeTab(gBrowser.selectedTab); +}); diff --git a/dom/tests/browser/browser_bug1236512.js b/dom/tests/browser/browser_bug1236512.js new file mode 100644 index 0000000000..66d58ab132 --- /dev/null +++ b/dom/tests/browser/browser_bug1236512.js @@ -0,0 +1,119 @@ +/** + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +"use strict"; + +const testPageURL = + "http://mochi.test:8888/browser/dom/tests/browser/dummy.html"; + +async function testContentVisibilityState(aIsHidden, aBrowser) { + await SpecialPowers.spawn( + aBrowser.selectedBrowser, + [aIsHidden], + aExpectedResult => { + is(content.document.hidden, aExpectedResult, "document.hidden"); + is( + content.document.visibilityState, + aExpectedResult ? "hidden" : "visible", + "document.visibilityState" + ); + } + ); +} + +async function waitContentVisibilityChange(aIsHidden, aBrowser) { + await SpecialPowers.spawn( + aBrowser.selectedBrowser, + [aIsHidden], + async function (aExpectedResult) { + let visibilityState = aExpectedResult ? "hidden" : "visible"; + if ( + content.document.hidden === aExpectedResult && + content.document.visibilityState === visibilityState + ) { + ok(true, "already changed to expected visibility state"); + return; + } + + info("wait visibilitychange event"); + await ContentTaskUtils.waitForEvent( + content.document, + "visibilitychange", + true /* capture */, + aEvent => { + info( + `visibilitychange: ${content.document.hidden} ${content.document.visibilityState}` + ); + return ( + content.document.hidden === aExpectedResult && + content.document.visibilityState === visibilityState + ); + } + ); + } + ); +} + +/** + * This test is to test the visibility state will change to "hidden" when browser + * window is fully covered by another non-translucent application. Note that we + * only support this on Mac for now, other platforms don't support reporting + * occlusion state. + */ +add_task(async function () { + info("creating test window"); + let winTest = await BrowserTestUtils.openNewBrowserWindow(); + // Specify the width, height, left and top, so that the new window can be + // fully covered by "window". + let resizePromise = BrowserTestUtils.waitForEvent( + winTest, + "resize", + false, + e => { + return winTest.innerHeight <= 500 && winTest.innerWidth <= 500; + } + ); + winTest.moveTo(200, 200); + winTest.resizeTo(500, 500); + await resizePromise; + + let browserTest = winTest.gBrowser; + + info(`loading test page: ${testPageURL}`); + BrowserTestUtils.startLoadingURIString( + browserTest.selectedBrowser, + testPageURL + ); + await BrowserTestUtils.browserLoaded(browserTest.selectedBrowser); + + info("test init visibility state"); + await testContentVisibilityState(false /* isHidden */, browserTest); + + info( + "test window should report 'hidden' if it is fully covered by another " + + "window" + ); + await new Promise(resolve => waitForFocus(resolve, window)); + await waitContentVisibilityChange(true /* isHidden */, browserTest); + + info( + "test window should still report 'hidden' since it is still fully covered " + + "by another window" + ); + let tab = BrowserTestUtils.addTab(browserTest); + await BrowserTestUtils.switchTab(browserTest, tab); + BrowserTestUtils.removeTab(browserTest.selectedTab); + await testContentVisibilityState(true /* isHidden */, browserTest); + + info( + "test window should report 'visible' if it is not fully covered by " + + "another window" + ); + await new Promise(resolve => waitForFocus(resolve, winTest)); + await waitContentVisibilityChange(false /* isHidden */, browserTest); + + info("closing test window"); + await BrowserTestUtils.closeWindow(winTest); +}); diff --git a/dom/tests/browser/browser_bug1238427.js b/dom/tests/browser/browser_bug1238427.js new file mode 100644 index 0000000000..60cb383e03 --- /dev/null +++ b/dom/tests/browser/browser_bug1238427.js @@ -0,0 +1,40 @@ +/* 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 TEST_URI = + // eslint-disable-next-line no-useless-concat + "http://example.com/" + "browser/dom/tests/browser/geo_leak_test.html"; + +const BASE_GEO_URL = + "http://mochi.test:8888/tests/dom/tests/mochitest/geolocation/network_geolocation.sjs"; + +add_task(async function () { + Services.prefs.setBoolPref("geo.prompt.testing", true); + Services.prefs.setBoolPref("geo.prompt.testing.allow", true); + + // Make the geolocation provider responder very slowly to ensure that + // it does not reply before we close the tab. + Services.prefs.setCharPref( + "geo.provider.network.url", + BASE_GEO_URL + "?delay=100000" + ); + + // Open the test URI and close it. The test harness will make sure that the + // page is cleaned up after some GCs. If geolocation is not shut down properly, + // it will show up as a non-shutdown leak. + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: TEST_URI, + }, + function (browser) { + /* ... */ + } + ); + + ok(true, "Need to do something in this test"); +}); diff --git a/dom/tests/browser/browser_bug1316330.js b/dom/tests/browser/browser_bug1316330.js new file mode 100644 index 0000000000..c81d489cf7 --- /dev/null +++ b/dom/tests/browser/browser_bug1316330.js @@ -0,0 +1,52 @@ +const URL = + "data:text/html,"; + +add_task(async function () { + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, URL); + let browser = tab.linkedBrowser; + + await EventUtils.synthesizeAndWaitKey("d", { repeat: 3 }); + + await SpecialPowers.spawn(browser, [], async function () { + is( + content.document.body.getAttribute("data-down"), + "2", + "Correct number of events" + ); + is( + content.document.body.getAttribute("data-press"), + "2", + "Correct number of events" + ); + }); + + await EventUtils.synthesizeAndWaitKey("p", { repeat: 3 }); + + await SpecialPowers.spawn(browser, [], async function () { + is( + content.document.body.getAttribute("data-down"), + "4", + "Correct number of events" + ); + is( + content.document.body.getAttribute("data-press"), + "4", + "Correct number of events" + ); + }); + + gBrowser.removeCurrentTab(); +}); diff --git a/dom/tests/browser/browser_bug1563629.js b/dom/tests/browser/browser_bug1563629.js new file mode 100644 index 0000000000..afbf5970d0 --- /dev/null +++ b/dom/tests/browser/browser_bug1563629.js @@ -0,0 +1,79 @@ +"use strict"; + +const DIRPATH = getRootDirectory(gTestPath).replace( + "chrome://mochitests/content/", + "" +); +const PATH = DIRPATH + "file_postMessage_parent.html"; + +const URL1 = `https://example.com/${PATH}`; +const URL2 = `https://example.org/${PATH}`; + +function listenForCrash(win) { + function listener(event) { + ok(false, "a crash occurred"); + } + + win.addEventListener("oop-browser-crashed", listener); + registerCleanupFunction(() => { + win.removeEventListener("oop-browser-crashed", listener); + }); +} + +add_task(async function () { + let win = await BrowserTestUtils.openNewBrowserWindow({ + fission: true, + private: true, + remote: true, + }); + + listenForCrash(win); + + try { + let tab = win.gBrowser.selectedTab; + let browser = tab.linkedBrowser; + + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser, false, URL1); + + async function loadURL(url) { + let iframe = content.document.createElement("iframe"); + content.document.body.appendChild(iframe); + + iframe.contentWindow.location = url; + await new Promise(resolve => + iframe.addEventListener("load", resolve, { once: true }) + ); + + return iframe.browsingContext; + } + + function length() { + return content.length; + } + + let outer = await SpecialPowers.spawn(browser, [URL2], loadURL); + let inner = await SpecialPowers.spawn(outer, [URL2], loadURL); + + is(await SpecialPowers.spawn(outer, [], length), 1, "have 1 inner frame"); + is(await SpecialPowers.spawn(browser, [], length), 1, "have 1 outer frame"); + + // Send a message from the outer iframe to the inner one. + // + // This would've previously crashed the content process that URL2 is running + // in. + await SpecialPowers.spawn(outer, [], () => { + content.frames[0].postMessage("foo", "*"); + }); + + // Now send a message from the inner frame to the outer one. + await SpecialPowers.spawn(inner, [], () => { + content.parent.postMessage("bar", "*"); + }); + + // Assert we've made it this far. + ok(true, "didn't crash"); + } finally { + await BrowserTestUtils.closeWindow(win); + } +}); diff --git a/dom/tests/browser/browser_bug1685807.js b/dom/tests/browser/browser_bug1685807.js new file mode 100644 index 0000000000..0e0dae2b16 --- /dev/null +++ b/dom/tests/browser/browser_bug1685807.js @@ -0,0 +1,78 @@ +/** + * Bug 1685807 - Testing that the window.name won't be reset when loading an + * about:blank page to a window which had loaded non-about:blank + * page. And other case that window.name should be reset if + * the document.domain has changed. + */ + +"use strict"; + +const EMPTY_URI = + "https://test1.example.com/browser/dom/tests/browser/file_empty.html"; +const TEST_URI = + "https://test1.example.com/browser/dom/tests/browser/file_bug1685807.html"; + +add_setup(async function () { + await SpecialPowers.pushPrefEnv({ + set: [["privacy.window.name.update.enabled", true]], + }); +}); + +add_task(async function doTests() { + for (let testDocDomain of [false, true]) { + // Open an empty tab. + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, EMPTY_URI); + let browser = tab.linkedBrowser; + + // Create a promise in order to wait loading of the about:blank page. + let loadedPromise = BrowserTestUtils.browserLoaded( + browser, + false, + "about:blank" + ); + + // Set the window.name and document.domain. + SpecialPowers.spawn( + browser, + [TEST_URI, testDocDomain], + (aTestURI, aTestDocDomain) => { + content.name = "Test"; + + if (aTestDocDomain) { + content.document.domain = "example.com"; + } + + // Open the page which will trigger the loading of the about:blank page. + content.open(aTestURI); + } + ); + + // Wait until the about:blank page is loaded. + await loadedPromise; + + // Check the window.name. + await SpecialPowers.spawn(browser, [testDocDomain], aTestDocDomain => { + if (aTestDocDomain) { + // The window.name should be reset if the document.domain was set to a + // cross-origin. + is(content.name, "", "The window.name should be reset."); + } else { + is(content.name, "Test", "The window.name shouldn't be reset."); + } + }); + + let awaitPageShow = BrowserTestUtils.waitForContentEvent( + browser, + "pageshow" + ); + browser.goBack(); + await awaitPageShow; + + // Check the window.name. + await SpecialPowers.spawn(browser, [], () => { + is(content.name, "Test", "The window.name is correct."); + }); + + BrowserTestUtils.removeTab(tab); + } +}); diff --git a/dom/tests/browser/browser_bug1709346.js b/dom/tests/browser/browser_bug1709346.js new file mode 100644 index 0000000000..bcfe456196 --- /dev/null +++ b/dom/tests/browser/browser_bug1709346.js @@ -0,0 +1,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/. */ + +add_task(async function remove_subframe_in_cross_site_frame() { + await BrowserTestUtils.withNewTab( + "http://mochi.test:8888/browser/dom/tests/browser/file_empty_cross_site_frame.html", + async browser => { + await TestUtils.waitForCondition( + () => !XULBrowserWindow.isBusy, + "browser is not busy after the tab finishes loading" + ); + + // Spawn into the cross-site subframe, and begin loading a slow network + // connection. We'll cancel the load before this navigation completes. + await SpecialPowers.spawn( + browser.browsingContext.children[0], + [], + async () => { + let frame = content.document.createElement("iframe"); + frame.src = "load_forever.sjs"; + content.document.body.appendChild(frame); + + frame.addEventListener("load", function () { + ok(false, "load should not finish before the frame is removed"); + }); + } + ); + + is( + XULBrowserWindow.isBusy, + true, + "browser should be busy after the load starts" + ); + + // Remove the outer iframe, ending the load within this frame's subframe + // early. + await SpecialPowers.spawn(browser, [], async () => { + content.document.querySelector("iframe").remove(); + }); + + await TestUtils.waitForCondition( + () => !XULBrowserWindow.isBusy, + "Browser should no longer be busy after the frame is removed" + ); + } + ); +}); diff --git a/dom/tests/browser/browser_bug396843.js b/dom/tests/browser/browser_bug396843.js new file mode 100644 index 0000000000..e51f9c705b --- /dev/null +++ b/dom/tests/browser/browser_bug396843.js @@ -0,0 +1,342 @@ +/** Test for Bug 396843 **/ + +function testInDocument(doc, documentID) { + var allNodes = []; + var XMLNodes = []; + + // HTML + function HTML_TAG(name) { + allNodes.push(doc.createElementNS("http://www.w3.org/1999/xhtml", name)); + } + + /* List copy/pasted from nsHTMLTagList.h */ + HTML_TAG("a", "Anchor"); + HTML_TAG("abbr", "Span"); + HTML_TAG("acronym", "Span"); + HTML_TAG("address", "Span"); + HTML_TAG("applet", "Unknown"); + HTML_TAG("area", "Area"); + HTML_TAG("b", "Span"); + HTML_TAG("base", "Shared"); + HTML_TAG("basefont", "Span"); + HTML_TAG("bdi", ""); + HTML_TAG("bdo", "Span"); + HTML_TAG("bgsound", "Span"); + HTML_TAG("big", "Span"); + HTML_TAG("blockquote", "Shared"); + HTML_TAG("body", "Body"); + HTML_TAG("br", "BR"); + HTML_TAG("button", "Button"); + HTML_TAG("canvas", "Canvas"); + HTML_TAG("caption", "TableCaption"); + HTML_TAG("center", "Span"); + HTML_TAG("cite", "Span"); + HTML_TAG("code", "Span"); + HTML_TAG("col", "TableCol"); + HTML_TAG("colgroup", "TableCol"); + HTML_TAG("dd", "Span"); + HTML_TAG("del", "Mod"); + HTML_TAG("dfn", "Span"); + HTML_TAG("dir", "Shared"); + HTML_TAG("div", "Div"); + HTML_TAG("dl", "SharedList"); + HTML_TAG("dt", "Span"); + HTML_TAG("em", "Span"); + HTML_TAG("embed", "Embed"); + HTML_TAG("fieldset", "FieldSet"); + HTML_TAG("font", "Font"); + HTML_TAG("form", "Form"); + HTML_TAG("frame", "Frame"); + HTML_TAG("frameset", "FrameSet"); + HTML_TAG("h1", "Heading"); + HTML_TAG("h2", "Heading"); + HTML_TAG("h3", "Heading"); + HTML_TAG("h4", "Heading"); + HTML_TAG("h5", "Heading"); + HTML_TAG("h6", "Heading"); + HTML_TAG("head", "Head"); + HTML_TAG("hr", "HR"); + HTML_TAG("html", "Html"); + HTML_TAG("i", "Span"); + HTML_TAG("iframe", "IFrame"); + HTML_TAG("image", ""); + HTML_TAG("img", "Image"); + HTML_TAG("input", "Input"); + HTML_TAG("ins", "Mod"); + HTML_TAG("isindex", "Unknown"); + HTML_TAG("kbd", "Span"); + HTML_TAG("keygen", "Span"); + HTML_TAG("label", "Label"); + HTML_TAG("legend", "Legend"); + HTML_TAG("li", "LI"); + HTML_TAG("link", "Link"); + HTML_TAG("listing", "Span"); + HTML_TAG("map", "Map"); + HTML_TAG("marquee", "Div"); + HTML_TAG("menu", "Shared"); + HTML_TAG("meta", "Meta"); + HTML_TAG("multicol", "Unknown"); + HTML_TAG("nobr", "Span"); + HTML_TAG("noembed", "Div"); + HTML_TAG("noframes", "Div"); + HTML_TAG("noscript", "Div"); + HTML_TAG("object", "Object"); + HTML_TAG("ol", "SharedList"); + HTML_TAG("optgroup", "OptGroup"); + HTML_TAG("option", "Option"); + HTML_TAG("p", "Paragraph"); + HTML_TAG("param", "Shared"); + HTML_TAG("plaintext", "Span"); + HTML_TAG("pre", "Pre"); + HTML_TAG("q", "Shared"); + HTML_TAG("s", "Span"); + HTML_TAG("samp", "Span"); + HTML_TAG("script", "Script"); + HTML_TAG("select", "Select"); + HTML_TAG("small", "Span"); + HTML_TAG("spacer", "Unknown"); + HTML_TAG("span", "Span"); + HTML_TAG("strike", "Span"); + HTML_TAG("strong", "Span"); + HTML_TAG("style", "Style"); + HTML_TAG("sub", "Span"); + HTML_TAG("sup", "Span"); + HTML_TAG("table", "Table"); + HTML_TAG("tbody", "TableSection"); + HTML_TAG("td", "TableCell"); + HTML_TAG("textarea", "TextArea"); + HTML_TAG("tfoot", "TableSection"); + HTML_TAG("th", "TableCell"); + HTML_TAG("thead", "TableSection"); + HTML_TAG("template", "Template"); + HTML_TAG("title", "Title"); + HTML_TAG("tr", "TableRow"); + HTML_TAG("tt", "Span"); + HTML_TAG("u", "Span"); + HTML_TAG("ul", "SharedList"); + HTML_TAG("var", "Span"); + HTML_TAG("wbr", "Shared"); + HTML_TAG("xmp", "Span"); + + function SVG_TAG(name) { + allNodes.push(doc.createElementNS("http://www.w3.org/2000/svg", name)); + } + + // List sorta stolen from SVG element factory. + SVG_TAG("a"); + SVG_TAG("polyline"); + SVG_TAG("polygon"); + SVG_TAG("circle"); + SVG_TAG("ellipse"); + SVG_TAG("line"); + SVG_TAG("rect"); + SVG_TAG("svg"); + SVG_TAG("g"); + SVG_TAG("foreignObject"); + SVG_TAG("path"); + SVG_TAG("text"); + SVG_TAG("tspan"); + SVG_TAG("image"); + SVG_TAG("style"); + SVG_TAG("linearGradient"); + SVG_TAG("metadata"); + SVG_TAG("radialGradient"); + SVG_TAG("stop"); + SVG_TAG("defs"); + SVG_TAG("desc"); + SVG_TAG("script"); + SVG_TAG("use"); + SVG_TAG("symbol"); + SVG_TAG("marker"); + SVG_TAG("title"); + SVG_TAG("clipPath"); + SVG_TAG("textPath"); + SVG_TAG("filter"); + SVG_TAG("feBlend"); + SVG_TAG("feColorMatrix"); + SVG_TAG("feComponentTransfer"); + SVG_TAG("feComposite"); + SVG_TAG("feFuncR"); + SVG_TAG("feFuncG"); + SVG_TAG("feFuncB"); + SVG_TAG("feFuncA"); + SVG_TAG("feGaussianBlur"); + SVG_TAG("feMerge"); + SVG_TAG("feMergeNode"); + SVG_TAG("feMorphology"); + SVG_TAG("feOffset"); + SVG_TAG("feFlood"); + SVG_TAG("feTile"); + SVG_TAG("feTurbulence"); + SVG_TAG("feConvolveMatrix"); + SVG_TAG("feDistantLight"); + SVG_TAG("fePointLight"); + SVG_TAG("feSpotLight"); + SVG_TAG("feDiffuseLighting"); + SVG_TAG("feSpecularLighting"); + SVG_TAG("feDisplacementMap"); + SVG_TAG("feImage"); + SVG_TAG("pattern"); + SVG_TAG("mask"); + SVG_TAG("svgSwitch"); + + // Toss in some other namespaced stuff too, for good measure + // XUL stuff might not be creatable in content documents + try { + allNodes.push( + doc.createElementNS( + "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", + "window" + ) + ); + } catch (e) {} + allNodes.push( + doc.createElementNS("http://www.w3.org/1998/Math/MathML", "math") + ); + allNodes.push( + doc.createElementNS("http://www.w3.org/2001/xml-events", "testname") + ); + allNodes.push(doc.createElementNS("bogus.namespace", "testname")); + + var XMLDoc = doc.implementation.createDocument("", "", null); + + // And non-elements + allNodes.push(doc.createTextNode("some text")); + allNodes.push(doc.createComment("some text")); + allNodes.push(doc.createDocumentFragment()); + XMLNodes.push(XMLDoc.createCDATASection("some text")); + XMLNodes.push(XMLDoc.createProcessingInstruction("PI", "data")); + + function runTestUnwrapped() { + if (!("wrappedJSObject" in doc)) { + return; + } + Assert.strictEqual( + doc.wrappedJSObject.nodePrincipal, + undefined, + "Must not have document principal for " + documentID + ); + Assert.strictEqual( + doc.wrappedJSObject.baseURIObject, + undefined, + "Must not have document base URI for " + documentID + ); + Assert.strictEqual( + doc.wrappedJSObject.documentURIObject, + undefined, + "Must not have document URI for " + documentID + ); + + for (var i = 0; i < allNodes.length; ++i) { + Assert.strictEqual( + allNodes[i].wrappedJSObject.nodePrincipal, + undefined, + "Unexpected principal appears for " + + allNodes[i].nodeName + + " in " + + documentID + ); + Assert.strictEqual( + allNodes[i].wrappedJSObject.baseURIObject, + undefined, + "Unexpected base URI appears for " + + allNodes[i].nodeName + + " in " + + documentID + ); + } + } + + function runTestProps() { + isnot( + doc.nodePrincipal, + null, + "Must have document principal in " + documentID + ); + is( + doc.nodePrincipal instanceof Ci.nsIPrincipal, + true, + "document principal must be a principal in " + documentID + ); + isnot( + doc.baseURIObject, + null, + "Must have document base URI in" + documentID + ); + is( + doc.baseURIObject instanceof Ci.nsIURI, + true, + "document base URI must be a URI in " + documentID + ); + isnot(doc.documentURIObject, null, "Must have document URI " + documentID); + is( + doc.documentURIObject instanceof Ci.nsIURI, + true, + "document URI must be a URI in " + documentID + ); + is( + doc.documentURIObject.spec, + doc.documentURI, + "document URI must be the right URI in " + documentID + ); + + for (var i = 0; i < allNodes.length; ++i) { + is( + allNodes[i].nodePrincipal, + doc.nodePrincipal, + "Unexpected principal for " + allNodes[i].nodeName + " in " + documentID + ); + is( + allNodes[i].baseURIObject, + doc.baseURIObject, + "Unexpected base URI for " + allNodes[i].nodeName + " in " + documentID + ); + } + + for (i = 0; i < XMLNodes.length; ++i) { + is( + XMLNodes[i].nodePrincipal, + doc.nodePrincipal, + "Unexpected principal for " + XMLNodes[i].nodeName + " in " + documentID + ); + is( + XMLNodes[i].baseURIObject.spec, + "about:blank", + "Unexpected base URI for " + XMLNodes[i].nodeName + " in " + documentID + ); + } + } + + runTestUnwrapped(); + runTestProps(); + runTestUnwrapped(); +} + +add_task(async function test1() { + testInDocument(document, "browser window"); +}); + +async function newTabTest(location) { + await BrowserTestUtils.withNewTab( + { gBrowser, url: location }, + async function (browser) { + await SpecialPowers.spawn( + browser, + [{ location, testInDocument_: testInDocument.toSource() }], + async function ({ location, testInDocument_ }) { + // eslint-disable-next-line no-eval + let testInDocument = eval(`(() => (${testInDocument_}))()`); + testInDocument(content.document, location); + } + ); + } + ); +} + +add_task(async function test2() { + await newTabTest("about:blank"); +}); + +add_task(async function test3() { + await newTabTest("about:config"); +}); diff --git a/dom/tests/browser/browser_bytecode_cache_asm_js.js b/dom/tests/browser/browser_bytecode_cache_asm_js.js new file mode 100644 index 0000000000..74dcdf3b72 --- /dev/null +++ b/dom/tests/browser/browser_bytecode_cache_asm_js.js @@ -0,0 +1,31 @@ +"use strict"; + +const PAGE_URL = + "http://example.com/browser/dom/tests/browser/page_bytecode_cache_asm_js.html"; + +add_task(async function () { + // Eagerly generate bytecode cache. + await SpecialPowers.pushPrefEnv({ + set: [ + ["dom.script_loader.bytecode_cache.enabled", true], + ["dom.script_loader.bytecode_cache.strategy", -1], + ], + }); + + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: PAGE_URL, + waitForLoad: true, + }, + async browser => { + let result = await SpecialPowers.spawn(browser, [], () => { + return content.document.getElementById("result").textContent; + }); + // No error shoud be caught by content. + is(result, "ok"); + } + ); + + await SpecialPowers.popPrefEnv(); +}); diff --git a/dom/tests/browser/browser_cancel_keydown_keypress_event.js b/dom/tests/browser/browser_cancel_keydown_keypress_event.js new file mode 100644 index 0000000000..de08aa17e9 --- /dev/null +++ b/dom/tests/browser/browser_cancel_keydown_keypress_event.js @@ -0,0 +1,41 @@ +const URL = + "https://example.com/browser/dom/tests/browser/prevent_return_key.html"; + +const { PromptTestUtils } = ChromeUtils.importESModule( + "resource://testing-common/PromptTestUtils.sys.mjs" +); + +// Wait for alert dialog and dismiss it immediately. +function awaitAndCloseAlertDialog(browser) { + return PromptTestUtils.handleNextPrompt( + browser, + { modalType: Services.prompt.MODAL_TYPE_CONTENT, promptType: "alert" }, + { buttonNumClick: 0 } + ); +} + +add_task(async function () { + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, URL); + let browser = tab.linkedBrowser; + + // Focus and enter random text on input. + await SpecialPowers.spawn(browser, [], async function () { + let input = content.document.getElementById("input"); + input.focus(); + input.value = "abcd"; + }); + + // Send return key (cross process) to submit the form implicitly. + let dialogShown = awaitAndCloseAlertDialog(browser); + EventUtils.synthesizeKey("KEY_Enter"); + await dialogShown; + + // Check that the form should not have been submitted. + await SpecialPowers.spawn(browser, [], async function () { + let result = content.document.getElementById("result").innerHTML; + info("submit result: " + result); + is(result, "not submitted", "form should not have submitted"); + }); + + gBrowser.removeCurrentTab(); +}); diff --git a/dom/tests/browser/browser_data_document_crossOriginIsolated.js b/dom/tests/browser/browser_data_document_crossOriginIsolated.js new file mode 100644 index 0000000000..6edfc922e6 --- /dev/null +++ b/dom/tests/browser/browser_data_document_crossOriginIsolated.js @@ -0,0 +1,68 @@ +"use strict"; + +const DIRPATH = getRootDirectory(gTestPath).replace( + "chrome://mochitests/content/", + "" +); +const PATH = DIRPATH + "file_coop_coep.html"; + +const ORIGIN = "https://test1.example.com"; +const URL = `${ORIGIN}/${PATH}`; + +add_task(async function () { + await BrowserTestUtils.withNewTab(URL, async function (browser) { + BrowserTestUtils.startLoadingURIString(browser, URL); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn(browser, [ORIGIN], async origin => { + is( + content.window.origin, + origin, + `Opened a tab and navigated to ${origin}` + ); + + ok( + content.window.crossOriginIsolated, + `Should have been cross-origin-isolated env` + ); + + let hostIds = []; + function createShadowDOMAndTriggerSlotChange(host) { + var shadow = host.attachShadow({ mode: "closed" }); + + let promise = new Promise(resolve => { + shadow.addEventListener("slotchange", function () { + hostIds.push(host.id); + resolve(); + }); + }); + + shadow.innerHTML = ""; + + host.appendChild(host.ownerDocument.createElement("span")); + + return promise; + } + + let host1 = content.document.getElementById("host1"); + + let dataDoc = content.document.implementation.createHTMLDocument(); + dataDoc.body.innerHTML = "
"; + let host2 = dataDoc.body.firstChild; + + let host3 = content.document.getElementById("host3"); + + let promises = []; + promises.push(createShadowDOMAndTriggerSlotChange(host1)); + promises.push(createShadowDOMAndTriggerSlotChange(host2)); + promises.push(createShadowDOMAndTriggerSlotChange(host3)); + + await Promise.all(promises); + + is(hostIds.length, 3, `Got 3 slot change events`); + is(hostIds[0], "host1", `The first one was host1`); + is(hostIds[1], "host2", `The second one was host2`); + is(hostIds[2], "host3", `The third one was host3`); + }); + }); +}); diff --git a/dom/tests/browser/browser_focus_steal_from_chrome.js b/dom/tests/browser/browser_focus_steal_from_chrome.js new file mode 100644 index 0000000000..12ee374d82 --- /dev/null +++ b/dom/tests/browser/browser_focus_steal_from_chrome.js @@ -0,0 +1,214 @@ +add_task(async function () { + requestLongerTimeout(2); + + let testingList = [ + { + uri: "data:text/html,", + tagName: "INPUT", + methodName: "focus", + }, + { + uri: "data:text/html,", + tagName: "INPUT", + methodName: "select", + }, + { + uri: "data:text/html,anchor", + tagName: "A", + methodName: "focus", + }, + { + uri: "data:text/html,", + tagName: "BUTTON", + methodName: "focus", + }, + { + uri: "data:text/html,", + tagName: "SELECT", + methodName: "focus", + }, + { + uri: "data:text/html,", + tagName: "TEXTAREA", + methodName: "focus", + }, + { + uri: "data:text/html,", + tagName: "TEXTAREA", + methodName: "select", + }, + { + uri: "data:text/html,", + tagName: "INPUT", + methodName: "focus of label element", + }, + { + uri: "data:text/html,
legend
", + tagName: "INPUT", + methodName: "focus of legend element", + }, + { + uri: + 'data:text/html,' + + "", + tagName: "INPUT", + methodName: "click event on the label element", + }, + ]; + + await BrowserTestUtils.withNewTab("about:blank", async function (bg) { + await BrowserTestUtils.withNewTab("about:blank", async function (fg) { + for (let test of testingList) { + // Focus the foreground tab's content + fg.focus(); + + // Load the URIs. + BrowserTestUtils.startLoadingURIString(bg, test.uri); + await BrowserTestUtils.browserLoaded(bg); + BrowserTestUtils.startLoadingURIString(fg, test.uri); + await BrowserTestUtils.browserLoaded(fg); + + ok(true, "Test1: Both of the tabs are loaded"); + + // Confirm that the contents should be able to steal focus from content. + await SpecialPowers.spawn(fg, [test], test => { + return new Promise(res => { + function f() { + let e = content.document.activeElement; + if (e.tagName != test.tagName) { + // eslint-disable-next-line mozilla/no-arbitrary-setTimeout + content.setTimeout(f, 10); + } else { + is( + Services.focus.focusedElement, + e, + "the foreground tab's " + + test.tagName + + " element isn't focused by the " + + test.methodName + + " (Test1: content can steal focus)" + ); + res(); + } + } + f(); + }); + }); + + await SpecialPowers.spawn(bg, [test], test => { + return new Promise(res => { + function f() { + let e = content.document.activeElement; + if (e.tagName != test.tagName) { + // eslint-disable-next-line mozilla/no-arbitrary-setTimeout + content.setTimeout(f, 10); + } else { + isnot( + Services.focus.focusedElement, + e, + "the background tab's " + + test.tagName + + " element is focused by the " + + test.methodName + + " (Test1: content can steal focus)" + ); + res(); + } + } + f(); + }); + }); + + if (fg.isRemoteBrowser) { + is( + Services.focus.focusedElement, + fg, + "Focus should be on the content in the parent process" + ); + } + + // Focus chrome + gURLBar.focus(); + let originalFocus = Services.focus.focusedElement; + + // Load about:blank just to make sure that everything works nicely + BrowserTestUtils.startLoadingURIString(bg, "about:blank"); + await BrowserTestUtils.browserLoaded(bg); + BrowserTestUtils.startLoadingURIString(fg, "about:blank"); + await BrowserTestUtils.browserLoaded(fg); + + // Load the URIs. + BrowserTestUtils.startLoadingURIString(bg, test.uri); + await BrowserTestUtils.browserLoaded(bg); + BrowserTestUtils.startLoadingURIString(fg, test.uri); + await BrowserTestUtils.browserLoaded(fg); + + ok(true, "Test2: Both of the tabs are loaded"); + + // Confirm that the contents should be able to steal focus from content. + await SpecialPowers.spawn(fg, [test], test => { + return new Promise(res => { + function f() { + let e = content.document.activeElement; + if (e.tagName != test.tagName) { + // eslint-disable-next-line mozilla/no-arbitrary-setTimeout + content.setTimeout(f, 10); + } else { + isnot( + Services.focus.focusedElement, + e, + "the foreground tab's " + + test.tagName + + " element is focused by the " + + test.methodName + + " (Test2: content can NOT steal focus)" + ); + res(); + } + } + f(); + }); + }); + + await SpecialPowers.spawn(bg, [test], test => { + return new Promise(res => { + function f() { + let e = content.document.activeElement; + if (e.tagName != test.tagName) { + // eslint-disable-next-line mozilla/no-arbitrary-setTimeout + content.setTimeout(f, 10); + } else { + isnot( + Services.focus.focusedElement, + e, + "the background tab's " + + test.tagName + + " element is focused by the " + + test.methodName + + " (Test2: content can NOT steal focus)" + ); + res(); + } + } + f(); + }); + }); + + is( + Services.focus.focusedElement, + originalFocus, + "The parent process's focus has shifted " + + "(methodName = " + + test.methodName + + ")" + + " (Test2: content can NOT steal focus)" + ); + } + }); + }); +}); diff --git a/dom/tests/browser/browser_focus_steal_from_chrome_during_mousedown.js b/dom/tests/browser/browser_focus_steal_from_chrome_during_mousedown.js new file mode 100644 index 0000000000..2930e0facd --- /dev/null +++ b/dom/tests/browser/browser_focus_steal_from_chrome_during_mousedown.js @@ -0,0 +1,82 @@ +add_task(async function test() { + const kTestURI = + "data:text/html," + + '" + + '' + + '' + + ''; + + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, kTestURI); + + let fm = Services.focus; + + for (var button = 0; button < 3; button++) { + // Set focus to a chrome element before synthesizing a mouse down event. + gURLBar.focus(); + + is( + fm.focusedElement, + gURLBar.inputField, + "Failed to move focus to search bar: button=" + button + ); + + // We intentionally turn off this a11y check, because the following click + // is sent on an arbitrary web content that is not expected to be tested + // by itself with the browser mochitests, therefore this rule check shall + // be ignored by a11y-checks suite. + AccessibilityUtils.setEnv({ mustHaveAccessibleRule: false }); + // Synthesize mouse down event on browser object over the button, such that + // the event propagates through both processes. + EventUtils.synthesizeMouse(tab.linkedBrowser, 20, 20, { button }); + AccessibilityUtils.resetEnv(); + + isnot( + fm.focusedElement, + gURLBar.inputField, + "Failed to move focus away from search bar: button=" + button + ); + + await SpecialPowers.spawn( + tab.linkedBrowser, + [button], + async function (button) { + let fm = Services.focus; + + let attempts = 10; + await new Promise(resolve => { + function check() { + if ( + attempts > 0 && + content.document.activeElement.id != "willBeFocused" + ) { + attempts--; + content.window.setTimeout(check, 100); + return; + } + + Assert.equal( + content.document.activeElement.id, + "willBeFocused", + "The input element isn't active element: button=" + button + ); + Assert.equal( + fm.focusedElement, + content.document.activeElement, + "The active element isn't focused element in App level: button=" + + button + ); + resolve(); + } + check(); + }); + } + ); + } + + gBrowser.removeTab(tab); +}); diff --git a/dom/tests/browser/browser_form_associated_custom_elements_validity.js b/dom/tests/browser/browser_form_associated_custom_elements_validity.js new file mode 100644 index 0000000000..3765405735 --- /dev/null +++ b/dom/tests/browser/browser_form_associated_custom_elements_validity.js @@ -0,0 +1,111 @@ +/** + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +"use strict"; + +add_task(async function report_validity() { + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: `data:text/html,`, + }, + async function (aBrowser) { + let promisePopupShown = BrowserTestUtils.waitForEvent( + window, + "popupshown" + ); + + let message = "valueMissing message"; + await SpecialPowers.spawn(aBrowser, [message], function (aMessage) { + class MyControl extends content.HTMLElement { + static get formAssociated() { + return true; + } + constructor() { + super(); + let shadow = this.attachShadow({ mode: "open" }); + let input = content.document.createElement("input"); + shadow.appendChild(input); + + let internals = this.attachInternals(); + internals.setValidity({ valueMissing: true }, aMessage, input); + internals.reportValidity(); + } + } + content.customElements.define("my-control", MyControl); + + let myControl = content.document.querySelector("my-control"); + content.customElements.upgrade(myControl); + }); + await promisePopupShown; + + let invalidFormPopup = + window.document.getElementById("invalid-form-popup"); + is(invalidFormPopup.state, "open", "invalid-form-popup should be opened"); + is(invalidFormPopup.firstChild.textContent, message, "check message"); + + let promisePopupHidden = BrowserTestUtils.waitForEvent( + invalidFormPopup, + "popuphidden" + ); + invalidFormPopup.hidePopup(); + await promisePopupHidden; + } + ); +}); + +add_task(async function form_report_validity() { + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: `data:text/html,
`, + }, + async function (aBrowser) { + let promisePopupShown = BrowserTestUtils.waitForEvent( + window, + "popupshown" + ); + + let message = "valueMissing message"; + await SpecialPowers.spawn(aBrowser, [message], function (aMessage) { + class MyControl extends content.HTMLElement { + static get formAssociated() { + return true; + } + constructor() { + super(); + let shadow = this.attachShadow({ mode: "open" }); + let input = content.document.createElement("input"); + shadow.appendChild(input); + + let internals = this.attachInternals(); + internals.setValidity({ valueMissing: true }, aMessage, input); + } + } + content.customElements.define("my-control", MyControl); + + let myControl = content.document.querySelector("my-control"); + content.customElements.upgrade(myControl); + + let form = content.document.querySelector("form"); + is(form.length, "1", "check form.length"); + form.reportValidity(); + }); + await promisePopupShown; + + let invalidFormPopup = + window.document.getElementById("invalid-form-popup"); + is(invalidFormPopup.state, "open", "invalid-form-popup should be opened"); + is(invalidFormPopup.firstChild.textContent, message, "check message"); + + let promisePopupHidden = BrowserTestUtils.waitForEvent( + invalidFormPopup, + "popuphidden" + ); + invalidFormPopup.hidePopup(); + await promisePopupHidden; + } + ); +}); diff --git a/dom/tests/browser/browser_frame_elements.html b/dom/tests/browser/browser_frame_elements.html new file mode 100644 index 0000000000..4843173f57 --- /dev/null +++ b/dom/tests/browser/browser_frame_elements.html @@ -0,0 +1,15 @@ + + + + Frame Element Tests + + +

Frame Element Tests

+ + + + + + + + diff --git a/dom/tests/browser/browser_frame_elements.js b/dom/tests/browser/browser_frame_elements.js new file mode 100644 index 0000000000..13f79edbfd --- /dev/null +++ b/dom/tests/browser/browser_frame_elements.js @@ -0,0 +1,74 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* vim: set ts=2 et sw=2 tw=80: */ +/* 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/. */ + +const TEST_URI = + "http://example.com/browser/dom/tests/browser/browser_frame_elements.html"; + +add_task(async function test() { + await BrowserTestUtils.withNewTab( + { gBrowser, url: TEST_URI }, + async function (browser) { + // Confirm its embedder is the browser: + is( + browser.browsingContext.embedderElement, + browser, + "Embedder element for main window is xul:browser" + ); + + await SpecialPowers.spawn(browser, [], startTests); + } + ); +}); + +function startTests() { + info("Frame tests started"); + + info("Checking top window"); + let gWindow = content; + Assert.equal(gWindow.top, gWindow, "gWindow is top"); + Assert.equal(gWindow.parent, gWindow, "gWindow is parent"); + + info("Checking about:blank iframe"); + let iframeBlank = gWindow.document.querySelector("#iframe-blank"); + Assert.ok(iframeBlank, "Iframe exists on page"); + Assert.equal( + iframeBlank.browsingContext.embedderElement, + iframeBlank, + "Embedder element for iframe window is iframe" + ); + Assert.equal(iframeBlank.contentWindow.top, gWindow, "gWindow is top"); + Assert.equal(iframeBlank.contentWindow.parent, gWindow, "gWindow is parent"); + + info("Checking iframe with data url src"); + let iframeDataUrl = gWindow.document.querySelector("#iframe-data-url"); + Assert.ok(iframeDataUrl, "Iframe exists on page"); + Assert.equal( + iframeDataUrl.browsingContext.embedderElement, + iframeDataUrl, + "Embedder element for iframe window is iframe" + ); + Assert.equal(iframeDataUrl.contentWindow.top, gWindow, "gWindow is top"); + Assert.equal( + iframeDataUrl.contentWindow.parent, + gWindow, + "gWindow is parent" + ); + + info("Checking object with data url data attribute"); + let objectDataUrl = gWindow.document.querySelector("#object-data-url"); + Assert.ok(objectDataUrl, "Object exists on page"); + Assert.equal( + objectDataUrl.browsingContext.embedderElement, + objectDataUrl, + "Embedder element for object window is the object" + ); + Assert.equal(objectDataUrl.contentWindow.top, gWindow, "gWindow is top"); + Assert.equal( + objectDataUrl.contentWindow.parent, + gWindow, + "gWindow is parent" + ); +} diff --git a/dom/tests/browser/browser_hasActivePeerConnections.js b/dom/tests/browser/browser_hasActivePeerConnections.js new file mode 100644 index 0000000000..91d51efbfc --- /dev/null +++ b/dom/tests/browser/browser_hasActivePeerConnections.js @@ -0,0 +1,134 @@ +const TEST_URI1 = + "http://mochi.test:8888/browser/dom/tests/browser/" + + "create_webrtc_peer_connection.html"; + +const TEST_URI2 = + "https://example.com/browser/dom/tests/browser/" + + "create_webrtc_peer_connection.html"; + +add_task(async () => { + await BrowserTestUtils.withNewTab(TEST_URI1, async browser => { + const windowGlobal = browser.browsingContext.currentWindowGlobal; + Assert.ok(windowGlobal); + + Assert.strictEqual( + windowGlobal.hasActivePeerConnections(), + false, + "No active connections at the beginning" + ); + + await SpecialPowers.spawn(browser, [], async () => { + content.postMessage("push-peer-connection", "*"); + return new Promise(resolve => + content.addEventListener("message", function onMessage(event) { + if (event.data == "ack") { + content.removeEventListener(event.type, onMessage); + resolve(); + } + }) + ); + }); + + Assert.strictEqual( + windowGlobal.hasActivePeerConnections(), + true, + "One connection in the top window" + ); + + await SpecialPowers.spawn(browser, [], async () => { + content.postMessage("pop-peer-connection", "*"); + return new Promise(resolve => + content.addEventListener("message", function onMessage(event) { + if (event.data == "ack") { + content.removeEventListener(event.type, onMessage); + resolve(); + } + }) + ); + }); + + Assert.strictEqual( + windowGlobal.hasActivePeerConnections(), + false, + "All connections have been closed" + ); + + await SpecialPowers.spawn( + browser, + [TEST_URI1, TEST_URI2], + async (TEST_URI1, TEST_URI2) => { + // Create a promise that is fulfilled when the "ack" message is received + // |targetCount| times. + const createWaitForAckPromise = (eventTarget, targetCount) => { + let counter = 0; + return new Promise(resolve => { + eventTarget.addEventListener("message", function onMsg(event) { + if (event.data == "ack") { + ++counter; + if (counter == targetCount) { + eventTarget.removeEventListener(event.type, onMsg); + resolve(); + } + } + }); + }); + }; + + const addFrame = (id, url) => { + const iframe = content.document.createElement("iframe"); + iframe.id = id; + iframe.src = url; + content.document.body.appendChild(iframe); + return iframe; + }; + + // Create two iframes hosting a same-origin page and a cross-origin page + const iframe1 = addFrame("iframe-same-origin", TEST_URI1); + const iframe2 = addFrame("iframe-cross-origin", TEST_URI2); + await ContentTaskUtils.waitForEvent(iframe1, "load"); + await ContentTaskUtils.waitForEvent(iframe2, "load"); + + // Make sure the counter is not messed up after successive push/pop + // messages + const kLoopCount = 100; + for (let i = 0; i < kLoopCount; ++i) { + content.postMessage("push-peer-connection", "*"); + iframe1.contentWindow.postMessage("push-peer-connection", "*"); + iframe2.contentWindow.postMessage("push-peer-connection", "*"); + iframe1.contentWindow.postMessage("pop-peer-connection", "*"); + iframe2.contentWindow.postMessage("pop-peer-connection", "*"); + content.postMessage("pop-peer-connection", "*"); + } + iframe2.contentWindow.postMessage("push-peer-connection", "*"); + + return createWaitForAckPromise(content, kLoopCount * 6 + 1); + } + ); + + Assert.strictEqual( + windowGlobal.hasActivePeerConnections(), + true, + "#iframe-cross-origin still has an active connection" + ); + + await SpecialPowers.spawn(browser, [], async () => { + content.document + .getElementById("iframe-cross-origin") + .contentWindow.postMessage("pop-peer-connection", "*"); + return new Promise(resolve => + content.addEventListener("message", function onMessage(event) { + if (event.data == "ack") { + content.removeEventListener(event.type, onMessage); + resolve(); + } + }) + ); + }); + + Assert.strictEqual( + windowGlobal.hasActivePeerConnections(), + false, + "All connections have been closed" + ); + }); +}); diff --git a/dom/tests/browser/browser_hasbeforeunload.js b/dom/tests/browser/browser_hasbeforeunload.js new file mode 100644 index 0000000000..de86a1ea7a --- /dev/null +++ b/dom/tests/browser/browser_hasbeforeunload.js @@ -0,0 +1,875 @@ +"use strict"; + +const PAGE_URL = + "http://example.com/browser/dom/tests/browser/beforeunload_test_page.html"; + +/** + * Adds 1 or more inert beforeunload event listeners in this browser. + * By default, will target the top-level content window, but callers + * can specify the index of a subframe to target. See prepareSubframes + * for an idea of how the subframes are structured. + * + * @param {} browser + * The browser to add the beforeunload event listener in. + * @param {int} howMany + * How many beforeunload event listeners to add. Note that these + * beforeunload event listeners are inert and will not actually + * prevent the host window from navigating. + * @param {optional int} frameDepth + * The depth of the frame to add the event listener to. Defaults + * to 0, which is the top-level content window. + * @return {Promise} + */ +function addBeforeUnloadListeners(browser, howMany = 1, frameDepth = 0) { + return controlFrameAt(browser, frameDepth, { + name: "AddBeforeUnload", + howMany, + }); +} + +/** + * Adds 1 or more inert beforeunload event listeners in this browser on + * a particular subframe. By default, this will target the first subframe + * under the top-level content window, but callers can specify the index + * of a subframe to target. See prepareSubframes for an idea of how the + * subframes are structured. + * + * Note that this adds the beforeunload event listener on the "outer" window, + * by doing: + * + * iframe.addEventListener("beforeunload", ...); + * + * @param {} browser + * The browser to add the beforeunload event listener in. + * @param {int} howMany + * How many beforeunload event listeners to add. Note that these + * beforeunload event listeners are inert and will not actually + * prevent the host window from navigating. + * @param {optional int} frameDepth + * The depth of the frame to add the event listener to. Defaults + * to 1, which is the first subframe inside the top-level content + * window. Setting this to 0 will throw. + * @return {Promise} + */ +function addOuterBeforeUnloadListeners(browser, howMany = 1, frameDepth = 1) { + if (frameDepth == 0) { + throw new Error( + "When adding a beforeunload listener on an outer " + + "window, the frame you're targeting needs to be at " + + "depth > 0." + ); + } + + return controlFrameAt(browser, frameDepth, { + name: "AddOuterBeforeUnload", + howMany, + }); +} + +/** + * Removes 1 or more inert beforeunload event listeners in this browser. + * This assumes that addBeforeUnloadListeners has been called previously + * for the target frame. + * + * By default, will target the top-level content window, but callers + * can specify the index of a subframe to target. See prepareSubframes + * for an idea of how the subframes are structured. + * + * @param {} browser + * The browser to remove the beforeunload event listener from. + * @param {int} howMany + * How many beforeunload event listeners to remove. + * @param {optional int} frameDepth + * The depth of the frame to remove the event listener from. Defaults + * to 0, which is the top-level content window. + * @return {Promise} + */ +function removeBeforeUnloadListeners(browser, howMany = 1, frameDepth = 0) { + return controlFrameAt(browser, frameDepth, { + name: "RemoveBeforeUnload", + howMany, + }); +} + +/** + * Removes 1 or more inert beforeunload event listeners in this browser on + * a particular subframe. By default, this will target the first subframe + * under the top-level content window, but callers can specify the index + * of a subframe to target. See prepareSubframes for an idea of how the + * subframes are structured. + * + * Note that this removes the beforeunload event listener on the "outer" window, + * by doing: + * + * iframe.removeEventListener("beforeunload", ...); + * + * @param {} browser + * The browser to remove the beforeunload event listener from. + * @param {int} howMany + * How many beforeunload event listeners to remove. + * @param {optional int} frameDepth + * The depth of the frame to remove the event listener from. Defaults + * to 1, which is the first subframe inside the top-level content + * window. Setting this to 0 will throw. + * @return {Promise} + */ +function removeOuterBeforeUnloadListeners( + browser, + howMany = 1, + frameDepth = 1 +) { + if (frameDepth == 0) { + throw new Error( + "When removing a beforeunload listener from an outer " + + "window, the frame you're targeting needs to be at " + + "depth > 0." + ); + } + + return controlFrameAt(browser, frameDepth, { + name: "RemoveOuterBeforeUnload", + howMany, + }); +} + +/** + * Navigates a content window to a particular URL and waits for it to + * finish loading that URL. + * + * By default, will target the top-level content window, but callers + * can specify the index of a subframe to target. See prepareSubframes + * for an idea of how the subframes are structured. + * + * @param {} browser + * The browser that will have the navigation occur within it. + * @param {string} url + * The URL to send the content window to. + * @param {optional int} frameDepth + * The depth of the frame to navigate. Defaults to 0, which is + * the top-level content window. + * @return {Promise} + */ +function navigateSubframe(browser, url, frameDepth = 0) { + let navigatePromise = controlFrameAt(browser, frameDepth, { + name: "Navigate", + url, + }); + let subframeLoad = BrowserTestUtils.browserLoaded(browser, true); + return Promise.all([navigatePromise, subframeLoad]); +} + +/** + * Removes the '; + +function checkWarningState(aWarningElement, aExpectedState, aMsg) { + ["hidden", "ontop", "onscreen"].forEach(state => { + is( + aWarningElement.hasAttribute(state), + state == aExpectedState, + `${aMsg} - check ${state} attribute.` + ); + }); +} + +async function waitForWarningState(aWarningElement, aExpectedState) { + await BrowserTestUtils.waitForAttribute(aExpectedState, aWarningElement, ""); + checkWarningState( + aWarningElement, + aExpectedState, + `Wait for ${aExpectedState} state` + ); +} + +// Make sure the pointerlock warning is shown and exited with the escape key +add_task(async function show_pointerlock_warning_escape() { + let urls = [TEST_URL, FRAME_TEST_URL]; + for (let url of urls) { + info("Pointerlock warning test for " + url); + + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, url); + + let warning = document.getElementById("pointerlock-warning"); + let warningShownPromise = waitForWarningState(warning, "onscreen"); + + let expectedWarningText; + + let bc = tab.linkedBrowser.browsingContext; + if (bc.children.length) { + // use the subframe if it exists + bc = bc.children[0]; + expectedWarningText = "example.org"; + } else { + expectedWarningText = "This document"; + } + expectedWarningText += + " has control of your pointer. Press Esc to take back control."; + + await BrowserTestUtils.synthesizeMouse("body", 4, 4, {}, bc); + + await warningShownPromise; + + ok(true, "Pointerlock warning shown"); + + let warningHiddenPromise = waitForWarningState(warning, "hidden"); + + await BrowserTestUtils.waitForCondition( + () => warning.innerText == expectedWarningText, + "Warning text" + ); + + EventUtils.synthesizeKey("KEY_Escape"); + await warningHiddenPromise; + + ok(true, "Pointerlock warning hidden"); + + // Pointerlock should be released after escape is pressed. + await SpecialPowers.spawn(tab.linkedBrowser, [], async function () { + Assert.equal(content.document.pointerLockElement, null); + }); + + await BrowserTestUtils.removeTab(tab); + } +}); + +/* +// XXX Bug 1580961 - this part of the test is disabled. +// +// Make sure the pointerlock warning is shown, but this time escape is not pressed until after the +// notification is closed via the timeout. +add_task(async function show_pointerlock_warning_timeout() { + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URL); + + let warning = document.getElementById("pointerlock-warning"); + let warningShownPromise = BrowserTestUtils.waitForAttribute( + "onscreen", + warning, + "true" + ); + let warningHiddenPromise = BrowserTestUtils.waitForAttribute( + "hidden", + warning, + "true" + ); + await BrowserTestUtils.synthesizeMouse("body", 4, 4, {}, tab.linkedBrowser); + + await warningShownPromise; + ok(true, "Pointerlock warning shown"); + await warningHiddenPromise; + + // The warning closes after a few seconds, but this does not exit pointerlock mode. + await SpecialPowers.spawn(tab.linkedBrowser, [], async function() { + Assert.equal(content.document.pointerLockElement, content.document.body); + }); + + EventUtils.synthesizeKey("KEY_Escape"); + + ok(true, "Pointerlock warning hidden"); + + // Pointerlock should now be released. + await SpecialPowers.spawn(tab.linkedBrowser, [], async function() { + Assert.equal(content.document.pointerLockElement, null); + }); + + await BrowserTestUtils.removeTab(tab); +}); +*/ diff --git a/dom/tests/browser/browser_sessionStorage_navigation.js b/dom/tests/browser/browser_sessionStorage_navigation.js new file mode 100644 index 0000000000..8598969dc8 --- /dev/null +++ b/dom/tests/browser/browser_sessionStorage_navigation.js @@ -0,0 +1,271 @@ +"use strict"; + +const DIRPATH = getRootDirectory(gTestPath).replace( + "chrome://mochitests/content/", + "" +); +const PATH = DIRPATH + "file_empty.html"; + +const ORIGIN1 = "https://example.com"; +const ORIGIN2 = "https://example.org"; +const URL1 = `${ORIGIN1}/${PATH}`; +const URL2 = `${ORIGIN2}/${PATH}`; +const URL1_WITH_COOP_COEP = `${ORIGIN1}/${DIRPATH}file_coop_coep.html`; + +add_task(async function () { + await BrowserTestUtils.withNewTab(URL1, async function (browser) { + const key = "key"; + const value = "value"; + + info( + `Verifying sessionStorage is preserved after navigating to a ` + + `cross-origin site and then navigating back` + ); + + await SpecialPowers.pushPrefEnv({ + set: [ + [ + "privacy.partition.always_partition_third_party_non_cookie_storage", + false, + ], + ], + }); + + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN1, key, value], + async (ORIGIN, key, value) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + null, + `SessionStorage for ${key} in ${content.window.origin} is null ` + + `since it's the first visit` + ); + + content.window.sessionStorage.setItem(key, value); + + let value2 = content.window.sessionStorage.getItem(key); + is( + value2, + value, + `SessionStorage for ${key} in ${content.window.origin} is set ` + + `correctly` + ); + } + ); + + BrowserTestUtils.startLoadingURIString(browser, URL2); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN2, key, value], + async (ORIGIN, key, value) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + null, + `SessionStorage for ${key} in ${content.window.origin} is null ` + + `since it's the first visit` + ); + } + ); + + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN1, key, value], + async (ORIGIN, key, value) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + value, + `SessionStorage for ${key} in ${content.window.origin} is preserved` + ); + } + ); + + info(`Verifying sessionStorage is preserved for ${URL1} after navigating`); + + BrowserTestUtils.startLoadingURIString(browser, URL2); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN2, ORIGIN1, URL1, key, value], + async (ORIGIN, iframeORIGIN, iframeURL, key, value) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + + let iframe = content.document.createElement("iframe"); + iframe.src = iframeURL; + content.document.body.appendChild(iframe); + await ContentTaskUtils.waitForEvent(iframe, "load"); + + await content.SpecialPowers.spawn( + iframe, + [iframeORIGIN, key, value], + async function (ORIGIN, key, value) { + is( + content.window.origin, + ORIGIN, + `Navigate to ${ORIGIN} as expected` + ); + + // Bug 1746646: Make mochitests work with TCP enabled (cookieBehavior = 5) + // Acquire storage access permission here so that the iframe has + // first-party access to the sessionStorage. Without this, it is + // isolated and this test will always fail + SpecialPowers.wrap(content.document).notifyUserGestureActivation(); + await SpecialPowers.addPermission( + "storageAccessAPI", + true, + content.window.location.href + ); + await SpecialPowers.wrap(content.document).requestStorageAccess(); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + value, + `SessionStorage for ${key} in ${content.window.origin} is ` + + `preserved` + ); + } + ); + } + ); + + info(`Verifying SSCache is loaded to the content process only once`); + + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN1, URL1, key, value], + async (ORIGIN, iframeURL, key, value) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + + let iframe = content.document.createElement("iframe"); + iframe.src = iframeURL; + content.document.body.appendChild(iframe); + await ContentTaskUtils.waitForEvent(iframe, "load"); + + await content.SpecialPowers.spawn( + iframe, + [ORIGIN, key, value], + async function (ORIGIN, key, value) { + is( + content.window.origin, + ORIGIN, + `Load an iframe to ${ORIGIN} as expected` + ); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + value, + `SessionStorage for ${key} in ${content.window.origin} is ` + + `preserved.` + ); + + // When we are here, it means we didn't hit the assertion for + // ensuring a SSCache can only be loaded on the content process + // once. + } + ); + } + ); + + info( + `Verifying the sessionStorage for a tab shares between ` + + `cross-origin-isolated and non cross-origin-isolated environments` + ); + const anotherKey = `anotherKey`; + const anotherValue = `anotherValue;`; + + BrowserTestUtils.startLoadingURIString(browser, URL1_WITH_COOP_COEP); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN1, key, value, anotherKey, anotherValue], + async (ORIGIN, key, value, anotherKey, anotherValue) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + ok( + content.window.crossOriginIsolated, + `The window is cross-origin-isolated.` + ); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + value, + `SessionStorage for ${key} in ${content.window.origin} was ` + + `propagated to COOP+COEP process correctly.` + ); + + let value2 = content.window.sessionStorage.getItem(anotherKey); + is( + value2, + null, + `SessionStorage for ${anotherKey} in ${content.window.origin} ` + + `hasn't been set yet.` + ); + + content.window.sessionStorage.setItem(anotherKey, anotherValue); + + let value3 = content.window.sessionStorage.getItem(anotherKey); + is( + value3, + anotherValue, + `SessionStorage for ${anotherKey} in ${content.window.origin} ` + + `was set as expected.` + ); + } + ); + + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser); + + await SpecialPowers.spawn( + browser, + [ORIGIN1, key, value, anotherKey, anotherValue], + async (ORIGIN, key, value, anotherKey, anotherValue) => { + is(content.window.origin, ORIGIN, `Navigate to ${ORIGIN} as expected`); + ok( + !content.window.crossOriginIsolated, + `The window is not cross-origin-isolated.` + ); + + let value1 = content.window.sessionStorage.getItem(key); + is( + value1, + value, + `SessionStorage for ${key} in ${content.window.origin} is ` + + `preserved.` + ); + + let value2 = content.window.sessionStorage.getItem(anotherKey); + is( + value2, + anotherValue, + `SessionStorage for ${anotherKey} in ${content.window.origin} was ` + + `propagated to non-COOP+COEP process correctly.` + ); + } + ); + }); +}); diff --git a/dom/tests/browser/browser_test_focus_after_modal_state.js b/dom/tests/browser/browser_test_focus_after_modal_state.js new file mode 100644 index 0000000000..2193d8fdc4 --- /dev/null +++ b/dom/tests/browser/browser_test_focus_after_modal_state.js @@ -0,0 +1,71 @@ +const TEST_URL = + "https://example.com/browser/dom/tests/browser/focus_after_prompt.html"; + +const { PromptTestUtils } = ChromeUtils.importESModule( + "resource://testing-common/PromptTestUtils.sys.mjs" +); + +function awaitAndClosePrompt(browser) { + return PromptTestUtils.handleNextPrompt( + browser, + { modalType: Services.prompt.MODAL_TYPE_CONTENT, promptType: "prompt" }, + { buttonNumClick: 0 } + ); +} + +add_task(async function () { + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, TEST_URL); + let browser = tab.linkedBrowser; + + // Focus on editable iframe. + await BrowserTestUtils.synthesizeMouseAtCenter("#edit", {}, browser); + await SpecialPowers.spawn(browser, [], async function () { + is( + content.document.activeElement, + content.document.getElementById("edit"), + "Focus should be on iframe element" + ); + }); + + let focusBlurPromise = SpecialPowers.spawn(browser, [], async function () { + let focusOccurred = false; + let blurOccurred = false; + + return new Promise(resolve => { + let doc = content.document.getElementById("edit").contentDocument; + doc.addEventListener("focus", function (event) { + focusOccurred = true; + if (blurOccurred) { + resolve(true); + } + }); + + doc.addEventListener("blur", function (event) { + blurOccurred = true; + if (focusOccurred) { + resolve(false); + } + }); + }); + }); + + // Click on div that triggers a prompt, and then check that focus is back on + // the editable iframe. + let dialogShown = awaitAndClosePrompt(browser); + await SpecialPowers.spawn(browser, [], async function () { + let div = content.document.getElementById("clickMeDiv"); + div.click(); + }); + await dialogShown; + let blurCameFirst = await focusBlurPromise; + await SpecialPowers.spawn(browser, [], async function () { + is( + content.document.activeElement, + content.document.getElementById("edit"), + "Focus should be back on iframe element" + ); + }); + ok(blurCameFirst, "Should receive blur and then focus event"); + + BrowserTestUtils.removeTab(tab); +}); diff --git a/dom/tests/browser/browser_test_new_window_from_content.js b/dom/tests/browser/browser_test_new_window_from_content.js new file mode 100644 index 0000000000..5496f4a43a --- /dev/null +++ b/dom/tests/browser/browser_test_new_window_from_content.js @@ -0,0 +1,221 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +/* + We have three ways for content to open new windows: + 1) window.open (with the default features) + 2) window.open (with non-default features) + 3) target="_blank" in tags + + We also have two prefs that modify our window opening behaviours: + + 1) browser.link.open_newwindow + + This has a numeric value that allows us to set our window-opening behaviours from + content in three ways: + 1) Open links that would normally open a new window in the current tab + 2) Open links that would normally open a new window in a new window + 3) Open links that would normally open a new window in a new tab (default) + + 2) browser.link.open_newwindow.restriction + + This has a numeric value that allows us to fine tune the browser.link.open_newwindow + pref so that it can discriminate between different techniques for opening windows. + + 0) All things that open windows should behave according to browser.link.open_newwindow. + 1) No things that open windows should behave according to browser.link.open_newwindow + (essentially rendering browser.link.open_newwindow inert). + 2) Most things that open windows should behave according to browser.link.open_newwindow, + _except_ for window.open calls with the "feature" parameter. This will open in a new + window regardless of what browser.link.open_newwindow is set at. (default) + + This file attempts to test each window opening technique against all possible settings for + each preference. +*/ + +const kContentDoc = + "https://www.example.com/browser/dom/tests/browser/test_new_window_from_content_child.html"; +const kNewWindowPrefKey = "browser.link.open_newwindow"; +const kNewWindowRestrictionPrefKey = "browser.link.open_newwindow.restriction"; +const kSameTab = "same tab"; +const kNewWin = "new window"; +const kNewTab = "new tab"; + +SpecialPowers.pushPrefEnv({ + set: [["dom.require_user_interaction_for_beforeunload", false]], +}); + +requestLongerTimeout(3); + +// The following "matrices" represent the result of content attempting to +// open a window with window.open with the default feature set. The key of +// the kWinOpenDefault object represents the value of browser.link.open_newwindow. +// The value for each key is an array that represents the result (either opening +// the link in the same tab, a new window, or a new tab), where the index of each +// result maps to the browser.link.open_newwindow.restriction pref. I've tried +// to illustrate this more clearly in the kWinOpenDefault object. +const kWinOpenDefault = { + // open_newwindow.restriction + // 0 1 2 + // open_newwindow + 1: [kSameTab, kNewWin, kSameTab], + 2: [kNewWin, kNewWin, kNewWin], + 3: [kNewTab, kNewWin, kNewTab], +}; + +const kWinOpenNonDefault = { + 1: [kSameTab, kNewWin, kNewWin], + 2: [kNewWin, kNewWin, kNewWin], + 3: [kNewTab, kNewWin, kNewWin], +}; + +const kTargetBlank = { + 1: [kSameTab, kSameTab, kSameTab], + 2: [kNewWin, kNewWin, kNewWin], + 3: [kNewTab, kNewTab, kNewTab], +}; + +// We'll be changing these preferences a lot, so we'll stash their original +// values and make sure we restore them at the end of the test. +var originalNewWindowPref = Services.prefs.getIntPref(kNewWindowPrefKey); +var originalNewWindowRestrictionPref = Services.prefs.getIntPref( + kNewWindowRestrictionPrefKey +); + +registerCleanupFunction(function () { + Services.prefs.setIntPref(kNewWindowPrefKey, originalNewWindowPref); + Services.prefs.setIntPref( + kNewWindowRestrictionPrefKey, + originalNewWindowRestrictionPref + ); +}); + +/** + * For some expectation when a link is clicked, creates and + * returns a Promise that resolves when that expectation is + * fulfilled. For example, aExpectation might be kSameTab, which + * will cause this function to return a Promise that resolves when + * the current tab attempts to browse to about:blank. + * + * This function also takes care of cleaning up once the result has + * occurred - for example, if a new window was opened, this function + * closes it before resolving. + * + * @param aBrowser the with the test document + * @param aExpectation one of kSameTab, kNewWin, or kNewTab. + * @return a Promise that resolves when the expectation is fulfilled, + * and cleaned up after. + */ +function prepareForResult(aBrowser, aExpectation) { + let expectedSpec = kContentDoc.replace(/[^\/]*$/, "dummy.html"); + switch (aExpectation) { + case kSameTab: + return (async function () { + await BrowserTestUtils.browserLoaded(aBrowser); + is(aBrowser.currentURI.spec, expectedSpec, "Should be at dummy.html"); + // Now put the browser back where it came from + BrowserTestUtils.startLoadingURIString(aBrowser, kContentDoc); + await BrowserTestUtils.browserLoaded(aBrowser); + })(); + case kNewWin: + return (async function () { + let newWin = await BrowserTestUtils.waitForNewWindow({ + url: expectedSpec, + }); + let newBrowser = newWin.gBrowser.selectedBrowser; + is(newBrowser.currentURI.spec, expectedSpec, "Should be at dummy.html"); + await BrowserTestUtils.closeWindow(newWin); + })(); + case kNewTab: + return (async function () { + let newTab = await BrowserTestUtils.waitForNewTab(gBrowser); + is( + newTab.linkedBrowser.currentURI.spec, + expectedSpec, + "Should be at dummy.html" + ); + BrowserTestUtils.removeTab(newTab); + })(); + default: + ok( + false, + "prepareForResult can't handle an expectation of " + aExpectation + ); + return Promise.resolve(); + } +} + +/** + * Ensure that clicks on a link with ID aLinkID cause us to + * perform as specified in the supplied aMatrix (kWinOpenDefault, + * for example). + * + * @param aLinkSelector a selector for the link within the testing page to click. + * @param aMatrix a testing matrix for the + * browser.link.open_newwindow and browser.link.open_newwindow.restriction + * prefs to test against. See kWinOpenDefault for an example. + */ +function testLinkWithMatrix(aLinkSelector, aMatrix) { + return BrowserTestUtils.withNewTab( + { + gBrowser, + url: kContentDoc, + }, + async function (browser) { + // This nested for-loop is unravelling the matrix const + // we set up, and gives us three things through each tick + // of the inner loop: + // 1) newWindowPref: a browser.link.open_newwindow pref to try + // 2) newWindowRestPref: a browser.link.open_newwindow.restriction pref to try + // 3) expectation: what we expect the click outcome on this link to be, + // which will either be kSameTab, kNewWin or kNewTab. + for (let newWindowPref in aMatrix) { + let expectations = aMatrix[newWindowPref]; + for (let i = 0; i < expectations.length; ++i) { + let newWindowRestPref = i; + let expectation = expectations[i]; + + Services.prefs.setIntPref( + "browser.link.open_newwindow", + newWindowPref + ); + Services.prefs.setIntPref( + "browser.link.open_newwindow.restriction", + newWindowRestPref + ); + info("Clicking on " + aLinkSelector); + info( + "Testing with browser.link.open_newwindow = " + + newWindowPref + + " and " + + "browser.link.open_newwindow.restriction = " + + newWindowRestPref + ); + info("Expecting: " + expectation); + let resultPromise = prepareForResult(browser, expectation); + BrowserTestUtils.synthesizeMouseAtCenter(aLinkSelector, {}, browser); + await resultPromise; + info("Got expectation: " + expectation); + } + } + } + ); +} + +add_task(async function test_window_open_with_defaults() { + await testLinkWithMatrix("#winOpenDefault", kWinOpenDefault); +}); + +add_task(async function test_window_open_with_non_defaults() { + await testLinkWithMatrix("#winOpenNonDefault", kWinOpenNonDefault); +}); + +add_task(async function test_window_open_dialog() { + await testLinkWithMatrix("#winOpenDialog", kWinOpenNonDefault); +}); + +add_task(async function test_target__blank() { + await testLinkWithMatrix("#targetBlank", kTargetBlank); +}); diff --git a/dom/tests/browser/browser_test_toolbars_visibility.js b/dom/tests/browser/browser_test_toolbars_visibility.js new file mode 100644 index 0000000000..f313f1549f --- /dev/null +++ b/dom/tests/browser/browser_test_toolbars_visibility.js @@ -0,0 +1,323 @@ +// Tests that toolbars have proper visibility when opening a new window +// in either content or chrome context. + +const ROOT = "http://www.example.com/browser/dom/tests/browser/"; +const CONTENT_PAGE = ROOT + "test_new_window_from_content_child.html"; +const TARGET_PAGE = ROOT + "dummy.html"; + +/** + * This function retrieves the visibility state of the toolbars of a + * window within the content context. + * + * @param aBrowser () + * The browser to query for toolbar visibility states + * @returns Promise + * A promise that resolves when the toolbar state is retrieved + * within the content context, which value is an object that holds + * the visibility state of the toolbars + */ +function getToolbarsFromBrowserContent(aBrowser) { + return SpecialPowers.spawn(aBrowser, [], async function () { + // This is still chrome context. + // Inject a script that runs on content context, and gather the result. + + let script = content.document.createElement("script"); + script.textContent = ` +let bars = [ + "toolbar", + "menubar", + "personalbar", + "statusbar", + "scrollbars", + "locationbar", +]; + +for (let bar of bars) { + let node = document.createElement("span"); + node.id = bar; + node.textContent = window[bar].visible; + document.body.appendChild(node); +} +`; + content.document.body.appendChild(script); + + let result = {}; + + let bars = [ + "toolbar", + "menubar", + "personalbar", + "statusbar", + "scrollbars", + "locationbar", + ]; + + for (let bar of bars) { + let node = content.document.getElementById(bar); + let value = node.textContent; + if (value !== "true" && value !== "false") { + throw new Error("bar visibility isn't set"); + } + result[bar] = value === "true"; + node.remove(); + } + + return result; + }); +} + +/** + * This function retrieves the visibility state of the toolbars of a + * window within the chrome context. + * + * @param win + * the chrome privileged window + * @returns object + * an object that holds the visibility state of the toolbars + */ +function getToolbarsFromWindowChrome(win) { + return { + toolbar: win.toolbar.visible, + menubar: win.menubar.visible, + personalbar: win.personalbar.visible, + statusbar: win.statusbar.visible, + scrollbars: win.scrollbars.visible, + locationbar: win.locationbar.visible, + }; +} + +/** + * Tests toolbar visibility when opening a window with default parameters. + * + * @param toolbars + * the visibility state of the toolbar elements + */ +function testDefaultToolbars(toolbars) { + ok( + toolbars.locationbar, + "locationbar should be visible on default window.open()" + ); + ok(toolbars.menubar, "menubar be visible on default window.open()"); + ok( + toolbars.personalbar, + "personalbar should be visible on default window.open()" + ); + ok( + toolbars.statusbar, + "statusbar should be visible on default window.open()" + ); + ok( + toolbars.scrollbars, + "scrollbars should be visible on default window.open()" + ); + ok(toolbars.toolbar, "toolbar should be visible on default window.open()"); +} + +/** + * Tests toolbar visibility when opening a popup window on the content context, + * and reading the value from context context. + * + * @param toolbars + * the visibility state of the toolbar elements + */ +function testNonDefaultContentToolbarsFromContent(toolbars) { + // Accessing BarProp.visible from content context should return false for + // popup, regardless of the each feature value in window.open parameter. + ok(!toolbars.locationbar, "locationbar.visible should be false for popup"); + ok(!toolbars.menubar, "menubar.visible should be false for popup"); + ok(!toolbars.personalbar, "personalbar.visible should be false for popup"); + ok(!toolbars.statusbar, "statusbar.visible should be false for popup"); + ok(!toolbars.scrollbars, "scrollbars.visible should be false for popup"); + ok(!toolbars.toolbar, "toolbar.visible should be false for popup"); +} + +/** + * Tests toolbar visibility when opening a popup window on the content context, + * and reading the value from chrome context. + * + * @param toolbars + * the visibility state of the toolbar elements + */ +function testNonDefaultContentToolbarsFromChrome(toolbars) { + // Accessing BarProp.visible from chrome context should return the + // actual visibility. + + // Locationbar should always be visible on content context + ok( + toolbars.locationbar, + "locationbar should be visible even with location=no" + ); + ok(!toolbars.menubar, "menubar shouldn't be visible when menubar=no"); + ok( + !toolbars.personalbar, + "personalbar shouldn't be visible when personalbar=no" + ); + // statusbar will report visible=true even when it's hidden because of bug#55820 + todo(!toolbars.statusbar, "statusbar shouldn't be visible when status=no"); + ok( + toolbars.scrollbars, + "scrollbars should be visible even with scrollbars=no" + ); + ok(!toolbars.toolbar, "toolbar shouldn't be visible when toolbar=no"); +} + +/** + * Tests toolbar visibility when opening a window with non default parameters + * on the chrome context. + * + * @param toolbars + * the visibility state of the toolbar elements + */ +function testNonDefaultChromeToolbars(toolbars) { + // None of the toolbars should be visible if hidden with chrome privileges + ok( + !toolbars.locationbar, + "locationbar should not be visible with location=no" + ); + ok(!toolbars.menubar, "menubar should not be visible with menubar=no"); + ok( + !toolbars.personalbar, + "personalbar should not be visible with personalbar=no" + ); + ok(!toolbars.statusbar, "statusbar should not be visible with status=no"); + ok( + toolbars.scrollbars, + "scrollbars should be visible even with scrollbars=no" + ); + ok(!toolbars.toolbar, "toolbar should not be visible with toolbar=no"); +} + +/** + * Ensure that toolbars of a window opened in the content context have the + * correct visibility. + * + * A window opened with default parameters should have all toolbars visible. + * + * A window opened with "location=no, personalbar=no, toolbar=no, scrollbars=no, + * menubar=no, status=no", should only have location visible. + */ +add_task(async function () { + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: CONTENT_PAGE, + }, + async function (browser) { + // First, call the default window.open() which will open a new tab + let newTabPromise = BrowserTestUtils.waitForNewTab(gBrowser); + await BrowserTestUtils.synthesizeMouseAtCenter( + "#winOpenDefault", + {}, + browser + ); + let tab = await newTabPromise; + + // Check that all toolbars are visible + let toolbars = await getToolbarsFromBrowserContent( + gBrowser.selectedBrowser + ); + testDefaultToolbars(toolbars); + + // Cleanup + BrowserTestUtils.removeTab(tab); + + // Now let's open a window with toolbars hidden + let winPromise = BrowserTestUtils.waitForNewWindow({ url: TARGET_PAGE }); + await BrowserTestUtils.synthesizeMouseAtCenter( + "#winOpenNonDefault", + {}, + browser + ); + let popupWindow = await winPromise; + + let popupBrowser = popupWindow.gBrowser.selectedBrowser; + + // Test toolbars visibility value from content. + let popupToolbars = await getToolbarsFromBrowserContent(popupBrowser); + testNonDefaultContentToolbarsFromContent(popupToolbars); + + // Test toolbars visibility value from chrome. + let chromeToolbars = getToolbarsFromWindowChrome(popupWindow); + testNonDefaultContentToolbarsFromChrome(chromeToolbars); + + // Close the new window + await BrowserTestUtils.closeWindow(popupWindow); + } + ); +}); + +/** + * Ensure that toolbars of a window opened to about:blank in the content context + * have the correct visibility. + * + * A window opened with "location=no, personalbar=no, toolbar=no, scrollbars=no, + * menubar=no, status=no", should only have location visible. + */ +add_task(async function () { + await BrowserTestUtils.withNewTab( + { + gBrowser, + url: CONTENT_PAGE, + }, + async function (browser) { + // Open a blank window with toolbars hidden + let winPromise = BrowserTestUtils.waitForNewWindow(); + await BrowserTestUtils.synthesizeMouseAtCenter( + "#winOpenNoURLNonDefault", + {}, + browser + ); + let popupWindow = await winPromise; + + // No need to wait for this window to load, since it's loading about:blank + let popupBrowser = popupWindow.gBrowser.selectedBrowser; + let popupToolbars = await getToolbarsFromBrowserContent(popupBrowser); + testNonDefaultContentToolbarsFromContent(popupToolbars); + + let chromeToolbars = getToolbarsFromWindowChrome(popupWindow); + testNonDefaultContentToolbarsFromChrome(chromeToolbars); + + // Close the new window + await BrowserTestUtils.closeWindow(popupWindow); + } + ); +}); + +/** + * Ensure that toolbars of a window opened in the chrome context have the + * correct visibility. + * + * A window opened with default parameters should have all toolbars visible. + * + * A window opened with "location=no, personalbar=no, toolbar=no, scrollbars=no, + * menubar=no, status=no", should not have any toolbar visible. + */ +add_task(async function () { + // First open a default window from this chrome context + let defaultWindowPromise = BrowserTestUtils.waitForNewWindow({ + url: TARGET_PAGE, + }); + window.open(TARGET_PAGE, "_blank", "noopener"); + let defaultWindow = await defaultWindowPromise; + + // Check that all toolbars are visible + let toolbars = getToolbarsFromWindowChrome(defaultWindow); + testDefaultToolbars(toolbars); + + // Now lets open a window with toolbars hidden from this chrome context + let features = + "location=no, personalbar=no, toolbar=no, scrollbars=no, menubar=no, status=no, noopener"; + let popupWindowPromise = BrowserTestUtils.waitForNewWindow({ + url: TARGET_PAGE, + }); + window.open(TARGET_PAGE, "_blank", features); + let popupWindow = await popupWindowPromise; + + // Test none of the tooolbars are visible + let hiddenToolbars = getToolbarsFromWindowChrome(popupWindow); + testNonDefaultChromeToolbars(hiddenToolbars); + + // Cleanup + await BrowserTestUtils.closeWindow(defaultWindow); + await BrowserTestUtils.closeWindow(popupWindow); +}); diff --git a/dom/tests/browser/browser_unlinkable_about_page_can_load_module_scripts.js b/dom/tests/browser/browser_unlinkable_about_page_can_load_module_scripts.js new file mode 100644 index 0000000000..50bf9f34ab --- /dev/null +++ b/dom/tests/browser/browser_unlinkable_about_page_can_load_module_scripts.js @@ -0,0 +1,84 @@ +/* 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 kTestPage = getRootDirectory(gTestPath) + "file_load_module_script.html"; + +const kDefaultFlags = + Ci.nsIAboutModule.ALLOW_SCRIPT | + Ci.nsIAboutModule.URI_MUST_LOAD_IN_CHILD | + Ci.nsIAboutModule.URI_CAN_LOAD_IN_PRIVILEGEDABOUT_PROCESS | + Ci.nsIAboutModule.URI_SAFE_FOR_UNTRUSTED_CONTENT; + +const kAboutPagesRegistered = Promise.all([ + BrowserTestUtils.registerAboutPage( + registerCleanupFunction, + "test-linkable-page", + kTestPage, + kDefaultFlags | Ci.nsIAboutModule.MAKE_LINKABLE + ), + BrowserTestUtils.registerAboutPage( + registerCleanupFunction, + "test-unlinkable-page", + kTestPage, + kDefaultFlags + ), +]); + +add_task(async function () { + await kAboutPagesRegistered; + + let consoleListener = { + observe() { + errorCount++; + if (shouldHaveJSError) { + ok(true, "JS error is expected and received"); + } else { + ok(false, "Unexpected JS error was received"); + } + }, + }; + Services.console.registerListener(consoleListener); + registerCleanupFunction(() => + Services.console.unregisterListener(consoleListener) + ); + + let shouldHaveJSError = true; + let errorCount = 0; + await BrowserTestUtils.withNewTab( + { gBrowser, url: "about:test-linkable-page" }, + async browser => { + await SpecialPowers.spawn(browser, [], () => { + isnot( + content.document.body.textContent, + "scriptLoaded", + "The page content shouldn't be changed on the linkable page" + ); + }); + } + ); + Assert.greater( + errorCount, + 0, + "Should have an error when loading test-linkable-page, got " + errorCount + ); + + shouldHaveJSError = false; + errorCount = 0; + await BrowserTestUtils.withNewTab( + { gBrowser, url: "about:test-unlinkable-page" }, + async browser => { + await SpecialPowers.spawn(browser, [], () => { + is( + content.document.body.textContent, + "scriptLoaded", + "The page content should be changed on the unlinkable page" + ); + }); + } + ); + is(errorCount, 0, "Should have no errors when loading test-unlinkable-page"); +}); diff --git a/dom/tests/browser/browser_wakelock.js b/dom/tests/browser/browser_wakelock.js new file mode 100644 index 0000000000..5cef231d07 --- /dev/null +++ b/dom/tests/browser/browser_wakelock.js @@ -0,0 +1,40 @@ +/** + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ + */ + +"use strict"; + +add_task(async () => { + info("creating test window"); + let win = await BrowserTestUtils.openNewBrowserWindow(); + + const pm = Cc["@mozilla.org/power/powermanagerservice;1"].getService( + Ci.nsIPowerManagerService + ); + + is( + pm.getWakeLockState("screen"), + "unlocked", + "Wakelock should be unlocked state" + ); + + info("aquiring wakelock"); + const wakelock = pm.newWakeLock("screen", win); + isnot( + pm.getWakeLockState("screen"), + "unlocked", + "Wakelock shouldn't be unlocked state" + ); + + info("releasing wakelock"); + wakelock.unlock(); + is( + pm.getWakeLockState("screen"), + "unlocked", + "Wakelock should be unlocked state" + ); + + info("closing test window"); + await BrowserTestUtils.closeWindow(win); +}); diff --git a/dom/tests/browser/browser_windowProxy_transplant.js b/dom/tests/browser/browser_windowProxy_transplant.js new file mode 100644 index 0000000000..6b9e316968 --- /dev/null +++ b/dom/tests/browser/browser_windowProxy_transplant.js @@ -0,0 +1,219 @@ +"use strict"; + +const DIRPATH = getRootDirectory(gTestPath).replace( + "chrome://mochitests/content/", + "" +); +const PATH = DIRPATH + "file_postMessage_parent.html"; + +const URL1 = `http://mochi.test:8888/${PATH}`; +const URL2 = `http://example.com/${PATH}`; +const URL3 = `http://example.org/${PATH}`; + +// A bunch of boilerplate which needs to be dealt with. +add_task(async function () { + // Turn on BC preservation and frameloader rebuilding to ensure that the + // BrowsingContext is preserved. + await SpecialPowers.pushPrefEnv({ + set: [["fission.preserve_browsing_contexts", true]], + }); + + // Open a window with fission force-enabled in it. + let win = await BrowserTestUtils.openNewBrowserWindow({ + fission: true, + remote: true, + }); + try { + // Get the tab & browser to perform the test in. + let tab = win.gBrowser.selectedTab; + let browser = tab.linkedBrowser; + + // Start loading the original URI, then wait until it is loaded. + BrowserTestUtils.startLoadingURIString(browser, URL1); + await BrowserTestUtils.browserLoaded(browser, false, URL1); + + info("Chrome script has loaded initial URI."); + await SpecialPowers.spawn( + browser, + [{ URL1, URL2, URL3 }], + async ({ URL1, URL2, URL3 }) => { + let iframe = content.document.createElement("iframe"); + content.document.body.appendChild(iframe); + + info("Chrome script created iframe"); + + // Here and below, we have to store references to things in the + // iframes on the content window, because all chrome references + // to content will be turned into dead wrappers when the iframes + // are closed. + content.win0 = iframe.contentWindow; + content.bc0 = iframe.browsingContext; + + ok( + !Cu.isDeadWrapper(content.win0), + "win0 shouldn't be a dead wrapper before navigation" + ); + + // Helper for waiting for a load. + function waitLoad() { + return new Promise(resolve => { + iframe.addEventListener( + "load", + event => { + info("Got an iframe load event!"); + resolve(); + }, + { once: true } + ); + }); + } + + function askLoad(url) { + info("Chrome script asking for load of " + url); + iframe.contentWindow.postMessage( + { + action: "navigate", + location: url, + }, + "*" + ); + info("Chrome script done calling PostMessage"); + } + + // Check that BC and WindowProxy are preserved across navigations. + iframe.contentWindow.location = URL1; + await waitLoad(); + + content.win1 = iframe.contentWindow; + let chromeWin1 = iframe.contentWindow; + let chromeWin1x = Cu.waiveXrays(iframe.contentWindow); + content.win1x = Cu.waiveXrays(iframe.contentWindow); + + Assert.notEqual( + chromeWin1, + chromeWin1x, + "waiving xrays creates a new thing?" + ); + + content.bc1 = iframe.browsingContext; + + is( + content.bc0, + content.bc1, + "same to same-origin BrowsingContext match" + ); + is(content.win0, content.win1, "same to same-origin WindowProxy match"); + + ok( + !Cu.isDeadWrapper(content.win1), + "win1 shouldn't be a dead wrapper before navigation" + ); + ok( + !Cu.isDeadWrapper(chromeWin1), + "chromeWin1 shouldn't be a dead wrapper before navigation" + ); + + askLoad(URL2); + await waitLoad(); + + content.win2 = iframe.contentWindow; + content.bc2 = iframe.browsingContext; + + // When chrome accesses a remote window proxy in content, the result + // should be a remote outer window proxy in the chrome compartment, not an + // Xray wrapper around the content remote window proxy. The former will + // throw a security error, because @@toPrimitive can't be called cross + // process, while the latter will result in an opaque wrapper, because + // XPConnect doesn't know what to do when trying to create an Xray wrapper + // around a remote outer window proxy. See bug 1556845. + Assert.throws( + () => { + dump("content.win1 " + content.win1 + "\n"); + }, + /SecurityError: Permission denied to access property Symbol.toPrimitive on cross-origin object/, + "Should get a remote outer window proxy when accessing old window proxy" + ); + Assert.throws( + () => { + dump("content.win2 " + content.win2 + "\n"); + }, + /SecurityError: Permission denied to access property Symbol.toPrimitive on cross-origin object/, + "Should get a remote outer window proxy when accessing new window proxy" + ); + + // If we fail to transplant existing non-remote outer window proxies, then + // after we navigate the iframe existing chrome references to the window will + // become dead wrappers. Also check content.win1 for thoroughness, though + // we don't nuke content-content references. + ok( + !Cu.isDeadWrapper(content.win1), + "win1 shouldn't be a dead wrapper after navigation" + ); + ok( + !Cu.isDeadWrapper(chromeWin1), + "chromeWin1 shouldn't be a dead wrapper after navigation" + ); + ok( + Cu.isDeadWrapper(chromeWin1x), + "chromeWin1x should be a dead wrapper after navigation" + ); + ok( + Cu.isDeadWrapper(content.win1x), + "content.win1x should be a dead wrapper after navigation" + ); + + is( + content.bc1, + content.bc2, + "same to cross-origin navigation BrowsingContext match" + ); + is( + content.win1, + content.win2, + "same to cross-origin navigation WindowProxy match" + ); + + ok( + !Cu.isDeadWrapper(content.win1), + "win1 shouldn't be a dead wrapper after navigation" + ); + + askLoad(URL3); + await waitLoad(); + + content.win3 = iframe.contentWindow; + content.bc3 = iframe.browsingContext; + + is( + content.bc2, + content.bc3, + "cross to cross-origin navigation BrowsingContext match" + ); + is( + content.win2, + content.win3, + "cross to cross-origin navigation WindowProxy match" + ); + + askLoad(URL1); + await waitLoad(); + + content.win4 = iframe.contentWindow; + content.bc4 = iframe.browsingContext; + + is( + content.bc3, + content.bc4, + "cross to same-origin navigation BrowsingContext match" + ); + is( + content.win3, + content.win4, + "cross to same-origin navigation WindowProxy match" + ); + } + ); + } finally { + await BrowserTestUtils.closeWindow(win); + } +}); diff --git a/dom/tests/browser/browser_xhr_sandbox.js b/dom/tests/browser/browser_xhr_sandbox.js new file mode 100644 index 0000000000..cca69b916b --- /dev/null +++ b/dom/tests/browser/browser_xhr_sandbox.js @@ -0,0 +1,62 @@ +// This code is evaluated in a sandbox courtesy of toSource(); +var sandboxCode = + function () { + let req = new XMLHttpRequest(); + req.open("GET", "http://mochi.test:8888/browser/dom/tests/browser/", true); + req.onreadystatechange = function () { + if (req.readyState === 4) { + // If we get past the problem above, we end up with a req.status of zero + // (ie, blocked due to CORS) even though we are fetching from the same + // origin as the window itself. + let result; + if (req.status != 200) { + result = "ERROR: got request status of " + req.status; + } else if (!req.responseText.length) { + result = "ERROR: got zero byte response text"; + } else { + result = "ok"; + } + postMessage({ result }, "*"); + } + }; + req.send(null); + }.toSource() + "();"; + +add_task(async function test() { + await SpecialPowers.pushPrefEnv({ + set: [["security.allow_unsafe_parent_loads", true]], + }); + + let newWin = await BrowserTestUtils.openNewBrowserWindow(); + + let frame = newWin.document.createXULElement("iframe"); + frame.setAttribute("type", "content"); + frame.setAttribute( + "src", + "http://mochi.test:8888/browser/dom/tests/browser/browser_xhr_sandbox.js" + ); + + newWin.document.documentElement.appendChild(frame); + await BrowserTestUtils.waitForEvent(frame, "load", true); + + let contentWindow = frame.contentWindow; + let sandbox = new Cu.Sandbox(contentWindow); + + // inject some functions from the window into the sandbox. + // postMessage so the async code in the sandbox can report a result. + sandbox.importFunction( + contentWindow.postMessage.bind(contentWindow), + "postMessage" + ); + sandbox.importFunction(contentWindow.XMLHttpRequest, "XMLHttpRequest"); + Cu.evalInSandbox(sandboxCode, sandbox, "1.8"); + + let sandboxReply = await BrowserTestUtils.waitForEvent( + contentWindow, + "message", + true + ); + is(sandboxReply.data.result, "ok", "check the sandbox code was felipe"); + + await BrowserTestUtils.closeWindow(newWin); +}); diff --git a/dom/tests/browser/create_webrtc_peer_connection.html b/dom/tests/browser/create_webrtc_peer_connection.html new file mode 100644 index 0000000000..ee993d4892 --- /dev/null +++ b/dom/tests/browser/create_webrtc_peer_connection.html @@ -0,0 +1,28 @@ + + + + + + +
+ diff --git a/dom/tests/browser/dummy.html b/dom/tests/browser/dummy.html new file mode 100644 index 0000000000..6ec72c2160 --- /dev/null +++ b/dom/tests/browser/dummy.html @@ -0,0 +1,13 @@ + + + +Dummy test page + + + +

Dummy test page

+ + + diff --git a/dom/tests/browser/dummy.png b/dom/tests/browser/dummy.png new file mode 100644 index 0000000000..a1089af09b Binary files /dev/null and b/dom/tests/browser/dummy.png differ diff --git a/dom/tests/browser/file_bug1685807.html b/dom/tests/browser/file_bug1685807.html new file mode 100644 index 0000000000..9e35fa1730 --- /dev/null +++ b/dom/tests/browser/file_bug1685807.html @@ -0,0 +1,12 @@ + + + + + + + diff --git a/dom/tests/browser/file_coop_coep.html b/dom/tests/browser/file_coop_coep.html new file mode 100644 index 0000000000..f77ef9d5f2 --- /dev/null +++ b/dom/tests/browser/file_coop_coep.html @@ -0,0 +1,6 @@ + + +
+
+ + diff --git a/dom/tests/browser/file_coop_coep.html^headers^ b/dom/tests/browser/file_coop_coep.html^headers^ new file mode 100644 index 0000000000..63b60e490f --- /dev/null +++ b/dom/tests/browser/file_coop_coep.html^headers^ @@ -0,0 +1,2 @@ +Cross-Origin-Opener-Policy: same-origin +Cross-Origin-Embedder-Policy: require-corp diff --git a/dom/tests/browser/file_empty.html b/dom/tests/browser/file_empty.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/browser/file_empty_cross_site_frame.html b/dom/tests/browser/file_empty_cross_site_frame.html new file mode 100644 index 0000000000..fb134786f6 --- /dev/null +++ b/dom/tests/browser/file_empty_cross_site_frame.html @@ -0,0 +1,2 @@ + + diff --git a/dom/tests/browser/file_load_module_script.html b/dom/tests/browser/file_load_module_script.html new file mode 100644 index 0000000000..a3f0d0991a --- /dev/null +++ b/dom/tests/browser/file_load_module_script.html @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/dom/tests/browser/file_module_loaded.mjs b/dom/tests/browser/file_module_loaded.mjs new file mode 100644 index 0000000000..9d5946cc1f --- /dev/null +++ b/dom/tests/browser/file_module_loaded.mjs @@ -0,0 +1,9 @@ +// Left in this test to ensure it does not cause any issues. +// eslint-disable-next-line strict +"use strict"; + +import setBodyText from "chrome://mochitests/content/browser/dom/tests/browser/file_module_loaded2.mjs"; + +document.addEventListener("DOMContentLoaded", () => { + setBodyText(); +}); diff --git a/dom/tests/browser/file_module_loaded2.mjs b/dom/tests/browser/file_module_loaded2.mjs new file mode 100644 index 0000000000..28b26cd16e --- /dev/null +++ b/dom/tests/browser/file_module_loaded2.mjs @@ -0,0 +1,3 @@ +export default function setBodyText() { + document.body.textContent = "scriptLoaded"; +} diff --git a/dom/tests/browser/file_postMessage_parent.html b/dom/tests/browser/file_postMessage_parent.html new file mode 100644 index 0000000000..f9aa63a8c7 --- /dev/null +++ b/dom/tests/browser/file_postMessage_parent.html @@ -0,0 +1,48 @@ + + diff --git a/dom/tests/browser/focus_after_prompt.html b/dom/tests/browser/focus_after_prompt.html new file mode 100644 index 0000000000..db60d19189 --- /dev/null +++ b/dom/tests/browser/focus_after_prompt.html @@ -0,0 +1,18 @@ + + + + + Cursor should not be lost after prompt + + + + +
Click me!
+ + + diff --git a/dom/tests/browser/geo_leak_test.html b/dom/tests/browser/geo_leak_test.html new file mode 100644 index 0000000000..fb3fabac40 --- /dev/null +++ b/dom/tests/browser/geo_leak_test.html @@ -0,0 +1,17 @@ + + + +Geolocation incomplete position leak test + + + + + diff --git a/dom/tests/browser/helper_localStorage.js b/dom/tests/browser/helper_localStorage.js new file mode 100644 index 0000000000..2d131df1ab --- /dev/null +++ b/dom/tests/browser/helper_localStorage.js @@ -0,0 +1,302 @@ +/* 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/. */ + +// Simple tab wrapper abstracting our messaging mechanism; +class KnownTab { + constructor(name, tab) { + this.name = name; + this.tab = tab; + } + + cleanup() { + this.tab = null; + } +} + +// Simple data structure class to help us track opened tabs and their pids. +class KnownTabs { + constructor() { + this.byPid = new Map(); + this.byName = new Map(); + } + + cleanup() { + for (let key of this.byPid.keys()) { + this.byPid[key] = null; + } + this.byPid = null; + this.byName = null; + } +} + +/** + * Open our helper page in a tab in its own content process, asserting that it + * really is in its own process. We initially load and wait for about:blank to + * load, and only then loadURI to our actual page. This is to ensure that + * LocalStorageManager has had an opportunity to be created and populate + * mOriginsHavingData. + * + * (nsGlobalWindow will reliably create LocalStorageManager as a side-effect of + * the unconditional call to nsGlobalWindow::PreloadLocalStorage. This will + * reliably create the StorageDBChild instance, and its corresponding + * StorageDBParent will send the set of origins when it is constructed.) + */ +async function openTestTab( + helperPageUrl, + name, + knownTabs, + shouldLoadInNewProcess +) { + let realUrl = helperPageUrl + "?" + encodeURIComponent(name); + // Load and wait for about:blank. + let tab = await BrowserTestUtils.openNewForegroundTab({ + gBrowser, + opening: "about:blank", + forceNewProcess: true, + }); + ok(!knownTabs.byName.has(name), "tab needs its own name: " + name); + + let knownTab = new KnownTab(name, tab); + knownTabs.byName.set(name, knownTab); + + // Now trigger the actual load of our page. + BrowserTestUtils.startLoadingURIString(tab.linkedBrowser, realUrl); + await BrowserTestUtils.browserLoaded(tab.linkedBrowser); + + let pid = tab.linkedBrowser.frameLoader.remoteTab.osPid; + if (shouldLoadInNewProcess) { + ok( + !knownTabs.byPid.has(pid), + "tab should be loaded in new process, pid: " + pid + ); + } else { + ok( + knownTabs.byPid.has(pid), + "tab should be loaded in the same process, new pid: " + pid + ); + } + + if (knownTabs.byPid.has(pid)) { + knownTabs.byPid.get(pid).set(name, knownTab); + } else { + let pidMap = new Map(); + pidMap.set(name, knownTab); + knownTabs.byPid.set(pid, pidMap); + } + + return knownTab; +} + +/** + * Close all the tabs we opened. + */ +async function cleanupTabs(knownTabs) { + for (let knownTab of knownTabs.byName.values()) { + BrowserTestUtils.removeTab(knownTab.tab); + knownTab.cleanup(); + } + knownTabs.cleanup(); +} + +/** + * Wait for a LocalStorage flush to occur. This notification can occur as a + * result of any of: + * - The normal, hardcoded 5-second flush timer. + * - InsertDBOp seeing a preload op for an origin with outstanding changes. + * - Us generating a "domstorage-test-flush-force" observer notification. + */ +function waitForLocalStorageFlush() { + if (Services.domStorageManager.nextGenLocalStorageEnabled) { + return new Promise(resolve => executeSoon(resolve)); + } + + return new Promise(function (resolve) { + let observer = { + observe() { + SpecialPowers.removeObserver(observer, "domstorage-test-flushed"); + resolve(); + }, + }; + SpecialPowers.addObserver(observer, "domstorage-test-flushed"); + }); +} + +/** + * Trigger and wait for a flush. This is only necessary for forcing + * mOriginsHavingData to be updated. Normal operations exposed to content know + * to automatically flush when necessary for correctness. + * + * The notification we're waiting for to verify flushing is fundamentally + * ambiguous (see waitForLocalStorageFlush), so we actually trigger the flush + * twice and wait twice. In the event there was a race, there will be 3 flush + * notifications, but correctness is guaranteed after the second notification. + */ +function triggerAndWaitForLocalStorageFlush() { + if (Services.domStorageManager.nextGenLocalStorageEnabled) { + return new Promise(resolve => executeSoon(resolve)); + } + + SpecialPowers.notifyObservers(null, "domstorage-test-flush-force"); + // This first wait is ambiguous... + return waitForLocalStorageFlush().then(function () { + // So issue a second flush and wait for that. + SpecialPowers.notifyObservers(null, "domstorage-test-flush-force"); + return waitForLocalStorageFlush(); + }); +} + +/** + * Clear the origin's storage so that "OriginsHavingData" will return false for + * our origin. Note that this is only the case for AsyncClear() which is + * explicitly issued against a cache, or AsyncClearAll() which we can trigger + * by wiping all storage. However, the more targeted domain clearings that + * we can trigger via observer, AsyncClearMatchingOrigin and + * AsyncClearMatchingOriginAttributes will not clear the hashtable entry for + * the origin. + * + * So we explicitly access the cache here in the parent for the origin and issue + * an explicit clear. Clearing all storage might be a little easier but seems + * like asking for intermittent failures. + */ +function clearOriginStorageEnsuringNoPreload(origin) { + let principal = + Services.scriptSecurityManager.createContentPrincipalFromOrigin(origin); + + if (Services.domStorageManager.nextGenLocalStorageEnabled) { + let request = Services.qms.clearStoragesForPrincipal( + principal, + "default", + "ls" + ); + let promise = new Promise(resolve => { + request.callback = () => { + resolve(); + }; + }); + return promise; + } + + // We want to use createStorage to force the cache to be created so we can + // issue the clear. It's possible for getStorage to return false but for the + // origin preload hash to still have our origin in it. + let storage = Services.domStorageManager.createStorage( + null, + principal, + principal, + "" + ); + storage.clear(); + + // We also need to trigger a flush os that mOriginsHavingData gets updated. + // The inherent flush race is fine here because + return triggerAndWaitForLocalStorageFlush(); +} + +async function verifyTabPreload(knownTab, expectStorageExists, origin) { + let storageExists = await SpecialPowers.spawn( + knownTab.tab.linkedBrowser, + [origin], + function (origin) { + let principal = + Services.scriptSecurityManager.createContentPrincipalFromOrigin(origin); + if (Services.domStorageManager.nextGenLocalStorageEnabled) { + return Services.domStorageManager.isPreloaded(principal); + } + return !!Services.domStorageManager.getStorage( + null, + principal, + principal + ); + } + ); + is(storageExists, expectStorageExists, "Storage existence === preload"); +} + +/** + * Instruct the given tab to execute the given series of mutations. For + * simplicity, the mutations representation matches the expected events rep. + */ +async function mutateTabStorage(knownTab, mutations, sentinelValue) { + await SpecialPowers.spawn( + knownTab.tab.linkedBrowser, + [{ mutations, sentinelValue }], + function (args) { + return content.wrappedJSObject.mutateStorage(Cu.cloneInto(args, content)); + } + ); +} + +/** + * Instruct the given tab to add a "storage" event listener and record all + * received events. verifyTabStorageEvents is the corresponding method to + * check and assert the recorded events. + */ +async function recordTabStorageEvents(knownTab, sentinelValue) { + await SpecialPowers.spawn( + knownTab.tab.linkedBrowser, + [sentinelValue], + function (sentinelValue) { + return content.wrappedJSObject.listenForStorageEvents(sentinelValue); + } + ); +} + +/** + * Retrieve the current localStorage contents perceived by the tab and assert + * that they match the provided expected state. + * + * If maybeSentinel is non-null, it's assumed to be a string that identifies the + * value we should be waiting for the sentinel key to take on. This is + * necessary because we cannot make any assumptions about when state will be + * propagated to the given process. See the comments in + * page_localstorage_e10s.js for more context. In general, a sentinel value is + * required for correctness unless the process in question is the one where the + * writes were performed or verifyTabStorageEvents was used. + */ +async function verifyTabStorageState(knownTab, expectedState, maybeSentinel) { + let actualState = await SpecialPowers.spawn( + knownTab.tab.linkedBrowser, + [maybeSentinel], + function (maybeSentinel) { + return content.wrappedJSObject.getStorageState(maybeSentinel); + } + ); + + for (let [expectedKey, expectedValue] of Object.entries(expectedState)) { + ok(actualState.hasOwnProperty(expectedKey), "key present: " + expectedKey); + is(actualState[expectedKey], expectedValue, "value correct"); + } + for (let actualKey of Object.keys(actualState)) { + if (!expectedState.hasOwnProperty(actualKey)) { + ok(false, "actual state has key it shouldn't have: " + actualKey); + } + } +} + +/** + * Retrieve and clear the storage events recorded by the tab and assert that + * they match the provided expected events. For simplicity, the expected events + * representation is the same as that used by mutateTabStorage. + * + * Note that by convention for test readability we are passed a 3rd argument of + * the sentinel value, but we don't actually care what it is. + */ +async function verifyTabStorageEvents(knownTab, expectedEvents) { + let actualEvents = await SpecialPowers.spawn( + knownTab.tab.linkedBrowser, + [], + function () { + return content.wrappedJSObject.returnAndClearStorageEvents(); + } + ); + + is(actualEvents.length, expectedEvents.length, "right number of events"); + for (let i = 0; i < actualEvents.length; i++) { + let [actualKey, actualNewValue, actualOldValue] = actualEvents[i]; + let [expectedKey, expectedNewValue, expectedOldValue] = expectedEvents[i]; + is(actualKey, expectedKey, "keys match"); + is(actualNewValue, expectedNewValue, "new values match"); + is(actualOldValue, expectedOldValue, "old values match"); + } +} diff --git a/dom/tests/browser/image.html b/dom/tests/browser/image.html new file mode 100644 index 0000000000..843ebfd1b5 --- /dev/null +++ b/dom/tests/browser/image.html @@ -0,0 +1,2 @@ + + diff --git a/dom/tests/browser/load_forever.sjs b/dom/tests/browser/load_forever.sjs new file mode 100644 index 0000000000..8f9fdd18a8 --- /dev/null +++ b/dom/tests/browser/load_forever.sjs @@ -0,0 +1,15 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +let gResponses = []; + +function handleRequest(request, response) { + response.seizePower(); + response.write("HTTP/1.1 200 OK\r\n"); + response.write("Content-Type: text/plain; charset=utf-8\r\n"); + response.write("Cache-Control: no-cache, must-revalidate\r\n"); + response.write("\r\n"); + + // Keep the response alive indefinitely. + gResponses.push(response); +} diff --git a/dom/tests/browser/mimeme.sjs b/dom/tests/browser/mimeme.sjs new file mode 100644 index 0000000000..c3c7122979 --- /dev/null +++ b/dom/tests/browser/mimeme.sjs @@ -0,0 +1,32 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Small red image. +const IMG_BYTES = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); + +function handleRequest(request, response) { + let mimeType = request.queryString.match(/type=([a-z]*)/)[1]; + switch (mimeType) { + case "css": + response.setHeader("Content-Type", "text/css"); + response.write("#hi {color: red}"); + break; + case "js": + response.setHeader("Content-Type", "application/javascript"); + response.write("var foo;"); + break; + case "png": + response.setHeader("Content-Type", "image/png"); + response.write(IMG_BYTES); + break; + case "html": + response.setHeader("Content-Type", "text/html"); + response.write("I am a subframe"); + break; + } +} diff --git a/dom/tests/browser/page_bytecode_cache_asm_js.html b/dom/tests/browser/page_bytecode_cache_asm_js.html new file mode 100644 index 0000000000..018099cc6d --- /dev/null +++ b/dom/tests/browser/page_bytecode_cache_asm_js.html @@ -0,0 +1,10 @@ + + + + asm.js test + + +

asm.js test

+ ok + + diff --git a/dom/tests/browser/page_bytecode_cache_asm_js.js b/dom/tests/browser/page_bytecode_cache_asm_js.js new file mode 100644 index 0000000000..03f8a6c0b8 --- /dev/null +++ b/dom/tests/browser/page_bytecode_cache_asm_js.js @@ -0,0 +1,30 @@ +window.onerror = function (e) { + document.getElementById("result").textContent = e; +}; + +function f() { + "use asm"; + function test() { + return 10; + } + return test; +} + +var dummy = [ + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", + "dummy text to exceed the minimal source length for bytecode cache", +]; diff --git a/dom/tests/browser/page_localStorage.js b/dom/tests/browser/page_localStorage.js new file mode 100644 index 0000000000..4fecf10bcf --- /dev/null +++ b/dom/tests/browser/page_localStorage.js @@ -0,0 +1,127 @@ +/** + * Helper page used by browser_localStorage_xxx.js. + * + * We expose methods to be invoked by SpecialPowers.spawn() calls. + * SpecialPowers.spawn() uses the message manager and is PContent-based. When + * LocalStorage was PContent-managed, ordering was inherently ensured so we + * could assume each page had already received all relevant events. Now some + * explicit type of coordination is required. + * + * This gets complicated because: + * - LocalStorage is an ugly API that gives us almost unlimited implementation + * flexibility in the face of multiple processes. It's also an API that sites + * may misuse which may encourage us to leverage that flexibility in the + * future to improve performance at the expense of propagation latency, and + * possibly involving content-observable coalescing of events. + * - The Quantum DOM effort and its event labeling and separate task queues and + * green threading and current LocalStorage implementation mean that using + * other PBackground-based APIs such as BroadcastChannel may not provide + * reliable ordering guarantees. Specifically, it's hard to guarantee that + * a BroadcastChannel postMessage() issued after a series of LocalStorage + * writes won't be received by the target window before the writes are + * perceived. At least not without constraining the implementations of both + * APIs. + * - Some of our tests explicitly want to verify LocalStorage behavior without + * having a "storage" listener, so we can't add a storage listener if the test + * didn't already want one. + * + * We use 2 approaches for coordination: + * 1. If we're already listening for events, we listen for the sentinel value to + * be written. This is efficient and appropriate in this case. + * 2. If we're not listening for events, we use setTimeout(0) to poll the + * localStorage key and value until it changes to our expected value. + * setTimeout(0) eventually clamps to setTimeout(4), so in the event we are + * experiencing delays, we have reasonable, non-CPU-consuming back-off in + * place that leaves the CPU free to time out and fail our test if something + * broke. This is ugly but makes us less brittle. + * + * Both of these involve mutateStorage writing the sentinel value at the end of + * the batch. All of our result-returning methods accordingly filter out the + * sentinel key/value pair. + **/ + +var pageName = document.location.search.substring(1); +window.addEventListener("load", () => { + document.getElementById("pageNameH").textContent = pageName; +}); + +// Key that conveys the end of a write batch. Filtered out from state and +// events. +const SENTINEL_KEY = "WRITE_BATCH_SENTINEL"; + +var storageEventsPromise = null; +function listenForStorageEvents(sentinelValue) { + const recordedEvents = []; + storageEventsPromise = new Promise(function (resolve, reject) { + window.addEventListener("storage", function thisHandler(event) { + if (event.key === SENTINEL_KEY) { + // There should be no way for this to have the wrong value, but reject + // if it is wrong. + if (event.newValue === sentinelValue) { + window.removeEventListener("storage", thisHandler); + resolve(recordedEvents); + } else { + reject(event.newValue); + } + } else { + recordedEvents.push([event.key, event.newValue, event.oldValue]); + } + }); + }); +} + +function mutateStorage({ mutations, sentinelValue }) { + mutations.forEach(function ([key, value]) { + if (key !== null) { + if (value === null) { + localStorage.removeItem(key); + } else { + localStorage.setItem(key, value); + } + } else { + localStorage.clear(); + } + }); + localStorage.setItem(SENTINEL_KEY, sentinelValue); +} + +// Returns a promise that is resolve when the sentinel key has taken on the +// sentinel value. Oddly structured to make sure promises don't let us +// accidentally side-step the timeout clamping logic. +function waitForSentinelValue(sentinelValue) { + return new Promise(function (resolve) { + function checkFunc() { + if (localStorage.getItem(SENTINEL_KEY) === sentinelValue) { + resolve(); + } else { + // I believe linters will only yell at us if we use a non-zero constant. + // Other forms of back-off were considered, including attempting to + // issue a round-trip through PBackground, but that still potentially + // runs afoul of labeling while also making us dependent on unrelated + // APIs. + setTimeout(checkFunc, 0); + } + } + checkFunc(); + }); +} + +async function getStorageState(maybeSentinel) { + if (maybeSentinel) { + await waitForSentinelValue(maybeSentinel); + } + + let numKeys = localStorage.length; + let state = {}; + for (var iKey = 0; iKey < numKeys; iKey++) { + let key = localStorage.key(iKey); + if (key !== SENTINEL_KEY) { + state[key] = localStorage.getItem(key); + } + } + return state; +} + +function returnAndClearStorageEvents() { + return storageEventsPromise; +} diff --git a/dom/tests/browser/page_localstorage.html b/dom/tests/browser/page_localstorage.html new file mode 100644 index 0000000000..aacb0ef6ac --- /dev/null +++ b/dom/tests/browser/page_localstorage.html @@ -0,0 +1,8 @@ + + + + + + +

+ diff --git a/dom/tests/browser/page_localstorage_coop+coep.html b/dom/tests/browser/page_localstorage_coop+coep.html new file mode 100644 index 0000000000..aacb0ef6ac --- /dev/null +++ b/dom/tests/browser/page_localstorage_coop+coep.html @@ -0,0 +1,8 @@ + + + + + + +

+ diff --git a/dom/tests/browser/page_localstorage_coop+coep.html^headers^ b/dom/tests/browser/page_localstorage_coop+coep.html^headers^ new file mode 100644 index 0000000000..63b60e490f --- /dev/null +++ b/dom/tests/browser/page_localstorage_coop+coep.html^headers^ @@ -0,0 +1,2 @@ +Cross-Origin-Opener-Policy: same-origin +Cross-Origin-Embedder-Policy: require-corp diff --git a/dom/tests/browser/page_localstorage_snapshotting.html b/dom/tests/browser/page_localstorage_snapshotting.html new file mode 100644 index 0000000000..b64f4b8cab --- /dev/null +++ b/dom/tests/browser/page_localstorage_snapshotting.html @@ -0,0 +1,68 @@ + + + + + + +

+ diff --git a/dom/tests/browser/page_privatestorageevent.html b/dom/tests/browser/page_privatestorageevent.html new file mode 100644 index 0000000000..90c2184aee --- /dev/null +++ b/dom/tests/browser/page_privatestorageevent.html @@ -0,0 +1,5 @@ + + +la la la la + + diff --git a/dom/tests/browser/position.html b/dom/tests/browser/position.html new file mode 100644 index 0000000000..d5b665d8e5 --- /dev/null +++ b/dom/tests/browser/position.html @@ -0,0 +1,29 @@ + + + + + + +

location...

+ + diff --git a/dom/tests/browser/prevent_return_key.html b/dom/tests/browser/prevent_return_key.html new file mode 100644 index 0000000000..4ec846f2e0 --- /dev/null +++ b/dom/tests/browser/prevent_return_key.html @@ -0,0 +1,34 @@ + + + + + Prevent return key should not submit form + + + + +
+ + +
+

not submitted

+ + diff --git a/dom/tests/browser/set-samesite-cookies-and-redirect.sjs b/dom/tests/browser/set-samesite-cookies-and-redirect.sjs new file mode 100644 index 0000000000..940b1ee845 --- /dev/null +++ b/dom/tests/browser/set-samesite-cookies-and-redirect.sjs @@ -0,0 +1,43 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +function handleRequest(request, response) { + // Set cookies and redirect for .org: + if (request.host.endsWith(".org")) { + response.setHeader("Set-Cookie", "normalCookie=true; path=/;", true); + response.setHeader( + "Set-Cookie", + "laxHeader=true; path=/; SameSite=Lax", + true + ); + response.setHeader( + "Set-Cookie", + "strictHeader=true; path=/; SameSite=Strict", + true + ); + response.write(` + + + + + + + `); + } else { + let baseURI = + "https://example.org/" + + request.path.replace(/[a-z-]*\.sjs/, "mimeme.sjs?type="); + response.write(` + + + + + `); + } +} diff --git a/dom/tests/browser/test-console-api.html b/dom/tests/browser/test-console-api.html new file mode 100644 index 0000000000..e8da7c311e --- /dev/null +++ b/dom/tests/browser/test-console-api.html @@ -0,0 +1,78 @@ + + + + + Console API test page + + + +

Console API Test Page

+ + + + + + + + + + + + diff --git a/dom/tests/browser/test_bug1004814.html b/dom/tests/browser/test_bug1004814.html new file mode 100644 index 0000000000..9f97e0487a --- /dev/null +++ b/dom/tests/browser/test_bug1004814.html @@ -0,0 +1,8 @@ + + + + Console API test bug 1004814 + + + + diff --git a/dom/tests/browser/test_mixed_content_image.html b/dom/tests/browser/test_mixed_content_image.html new file mode 100644 index 0000000000..c8b7661f42 --- /dev/null +++ b/dom/tests/browser/test_mixed_content_image.html @@ -0,0 +1 @@ + diff --git a/dom/tests/browser/test_new_window_from_content_child.html b/dom/tests/browser/test_new_window_from_content_child.html new file mode 100644 index 0000000000..9e3f7016d9 --- /dev/null +++ b/dom/tests/browser/test_new_window_from_content_child.html @@ -0,0 +1,25 @@ + + + + Test popup window opening behaviour + + +

Open a new window via window.open with default features.

+

Open a new window via window.open with non-default features.

+

Open a new window via window.open with dialog=1.

+

Open a blank new window via window.open with non-default features.

+

Open a new window via target="_blank".

+ + + + diff --git a/dom/tests/browser/test_noopener_source.html b/dom/tests/browser/test_noopener_source.html new file mode 100644 index 0000000000..fbf28be260 --- /dev/null +++ b/dom/tests/browser/test_noopener_source.html @@ -0,0 +1,15 @@ +1 +2 +3 + +4 +5 +6 + +7 +8 +9 + +10 +11 +12 diff --git a/dom/tests/browser/test_noopener_target.html b/dom/tests/browser/test_noopener_target.html new file mode 100644 index 0000000000..f437fc7ba5 --- /dev/null +++ b/dom/tests/browser/test_noopener_target.html @@ -0,0 +1,9 @@ + +

name

+
+ + diff --git a/dom/tests/browser/worker_bug1004814.js b/dom/tests/browser/worker_bug1004814.js new file mode 100644 index 0000000000..4fb54da692 --- /dev/null +++ b/dom/tests/browser/worker_bug1004814.js @@ -0,0 +1,6 @@ +onmessage = function (evt) { + console.time("bug1004814"); + setTimeout(function () { + console.timeEnd("bug1004814"); + }, 200); +}; diff --git a/dom/tests/mochitest/ajax/jquery/ChangeLog.txt b/dom/tests/mochitest/ajax/jquery/ChangeLog.txt new file mode 100644 index 0000000000..6d834c1967 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/ChangeLog.txt @@ -0,0 +1,98 @@ +== jQuery ChangeLog == + +== 1.2.2 == + +* show is now element aware (uses default display type instead of just forcing block) +* New special events api: jQuery.events.special +* ready is now a real event and can be bound, unbound and triggered. +* mouseenter and mouseleave now work on all supported browsers +* The hover helper method now uses the mouseenter and mouseleave events +* New offset test suite test/offset.html (requires your pop-up blocker to be disabled) +* Refactored the width and height methods (fixes lots of bugs) +* Fixed event memory leaks in IE (html, remove, empty also no longer leak memory) +* Fixed window/document width/height values +* Fixed event.pageX and event.pageY in IE + +== 1.2 == + +=== 1.1.3 === +* Always create an ActiveXObject when it is available instead of the XMLHttpRequest, even in IE7 +* Removed XMLHttpRequest shadowing, may break code that relies on existence of that function for browser checking +* ... + +=== 1.1.2 === + +* Event handlers (like element.onclick) are now removed when no more functions are bound to the event. +* Fixed DOM Manipulations for form elements. +* Fixed jQuery.isFunction to return false on nodes. +* Fixed jQuery.className.has, escaping regex characters in className (for metadata) +* Fixed an issue in IE where an event on a cloned element is fired during a .clone() inside of an event handler. +* Fixed IE ID selectors selecting by the name attribute. +* Change: Events are now internally stored in elem.$events rather than elem.events (due to a nasty bug relating to DOM 0 expandos). +* .attr('href') is now consistent in all browsers. +* @href is now consistent in all browsers. +* Fixed the slideDown flickering bug. +* Having a \r endline in $("...") caused a never-ending loop. +* Fixed IE6 AJAX memory leak +* Fixed bug in pushStack, reporting an element at [0] in a jQuery object with length 0 + +=== 1.1.1 === + +* Setting the numerical value of a css property failed, for example: .css("opacity",0.5) (also occurred with zIndex, fontWeight) +* Calling $(..., jqobj) with a context of a jQuery object failed. +* Accessing a property on an element that doesn't exist caused an error, for example: $("#foobar").attr("id") +* Calling .load() without a callback caused an error. +* You couldn't cancel an event that was triggered using .trigger() or .click() (for example). +* .add()ing a single DOM element to a jQuery object was broken. +* Passing in undefined values to a $.post() caused weird errors to occur. +* Accessing child nodes within an xml document didn't work properly. +* jQuery.isFunction() was unable to reliably determine a function, in a cross-browser way. +* Triggering a .click() failed in IE. +* Triggered click handlers were executed twice in most browsers. +* A newline passed into $(...) caused Firefox to go into a never-ending loop. +* Calling $.post() without any data caused an error. +* Calling a descendant selector after a child selector caused strange results, for example: $("ul > li ul") +* Triggered events did not occur if an event handler was not bound for that event. + +== 1.1 == + +* Massive speed-ups (4x-10x) in the selector engine. +* You can now unbind event handlers from within themselves +* Added new .one( "type", fn ) method +* text(String) now escapes HTML +* Added attr(String,Function) to calculate the value +* Performming .click(), .blur(), .focus(), .submit() will actually trigger the browsers default action for those events. +* Added global settings for AJAX (in addition to timeout), use $.ajaxSetup() to modify them +* Implemented a better error handling for ajax requests. Exceptions caused by dropping connections are now handled, too. +* Improved event fixing (Opera provides event.srcElement, must ignore it if target is available; only create pageX if clientX is available) +* Fixed nth-child selectors to start on the right number +* jQuery is no longer destructive. Doing var a = $("a"); a.find("span"); does not change the original "a" variable. +* Fixed synchronous requests +* Fixed ID with context selectors (eg. div #id doesn't ignore "div" anymore) +* Fixed docs for html(): Now mentions that is not available for XML documents +* Improved AJAX docs (eg. more examples for $.ajax) +* Documented filter(Function), a very powerful approach for custom filtering +* Improved docs for FX module, merging method descriptions and marking optional arguments +* Improved docs for append, prepend, before and after, merging the three pairs into one +* Improved show/hide animations to show only hidden and hide only visible elements +* Removed .oneEvent() and .unEvent() helper methods. +* Removed all CSS helper methods. +* Removed most attribute helper methods. +* Removed the (undocumented) .find( "selector", fn ) for all destructive methods. +* $.get, $.getIfModified, $.post, $.getScript and $.getJSON now all pass through the XMLHttpRequest as returned by $.ajax + +== 1.0.4 == + +* Tons of bug fixes +* Extensions to $.ajax: $.ajax accepts additonal options: beforeSend, async and processData; returns XMLHttpRequest to allow manual aborting of requests, see docs for details +* AJAX module: the public $.ajax API is now used internally (for $.get/$.post etc.); loading scripts works now much more reliable on all browers except Safari +* New global ajax handler: ajaxSend - called before an ajax request is sent +* Extensions to global ajax handlers: ajaxSend, ajaxSuccess, ajaxError and ajaxComplete get XMLHttpRequest and settings passed as arguments +* Extensions to event handling: pageX and pageY are available x-browser (IE does not provide native pageX/Y) +* Improved docs: $(String) method has now two seperate descriptions, one for selecting elements, one for creating (html on-the-fly) +* FX module: Most inline stlyes added by animations are now removed when the animation is complete, eg. height style when animating height (exception: display styles) +* Added note to attr(String, Object) about issues with setting the name property on input elements +* Seperated internal stuff from get() into set() +* Merged the two API examples for each() into one more precise example +* Improved docs for $.browser and added docs for $.boxModel +* Docs for the jQuery constructor $() were improved: There is now $(String expression[, Object context]) and $(String html) diff --git a/dom/tests/mochitest/ajax/jquery/GPL-LICENSE.txt b/dom/tests/mochitest/ajax/jquery/GPL-LICENSE.txt new file mode 100644 index 0000000000..11dddd00ef --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/GPL-LICENSE.txt @@ -0,0 +1,278 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. diff --git a/dom/tests/mochitest/ajax/jquery/MIT-LICENSE.txt b/dom/tests/mochitest/ajax/jquery/MIT-LICENSE.txt new file mode 100644 index 0000000000..d4215f0e42 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/MIT-LICENSE.txt @@ -0,0 +1,20 @@ +Copyright (c) 2008 John Resig, http://jquery.com/ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/dom/tests/mochitest/ajax/jquery/dist/jquery.js b/dom/tests/mochitest/ajax/jquery/dist/jquery.js new file mode 100644 index 0000000000..a28e7cd65c --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/dist/jquery.js @@ -0,0 +1,3549 @@ +(function(){ +/* + * jQuery 1.2.6 - New Wave Javascript + * + * Copyright (c) 2008 John Resig (jquery.com) + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + * + * $Date: 2008-05-24 11:09:21 -0700 (Sat, 24 May 2008) $ + * $Rev: 5683 $ + */ + +// Map over jQuery in case of overwrite +var _jQuery = window.jQuery, +// Map over the $ in case of overwrite + _$ = window.$; + +var jQuery = window.jQuery = window.$ = function( selector, context ) { + // The jQuery object is actually just the init constructor 'enhanced' + return new jQuery.fn.init( selector, context ); +}; + +// A simple way to check for HTML strings or ID strings +// (both of which we optimize for) +var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/, + +// Is it a simple selector + isSimple = /^.[^:#\[\.]*$/, + +// Will speed up references to undefined, and allows munging its name. + undefined; + +jQuery.fn = jQuery.prototype = { + init: function( selector, context ) { + // Make sure that a selection was provided + selector = selector || document; + + // Handle $(DOMElement) + if ( selector.nodeType ) { + this[0] = selector; + this.length = 1; + return this; + } + // Handle HTML strings + if ( typeof selector == "string" ) { + // Are we dealing with HTML string or an ID? + var match = quickExpr.exec( selector ); + + // Verify a match, and that no context was specified for #id + if ( match && (match[1] || !context) ) { + + // HANDLE: $(html) -> $(array) + if ( match[1] ) + selector = jQuery.clean( [ match[1] ], context ); + + // HANDLE: $("#id") + else { + var elem = document.getElementById( match[3] ); + + // Make sure an element was located + if ( elem ){ + // Handle the case where IE and Opera return items + // by name instead of ID + if ( elem.id != match[3] ) + return jQuery().find( selector ); + + // Otherwise, we inject the element directly into the jQuery object + return jQuery( elem ); + } + selector = []; + } + + // HANDLE: $(expr, [context]) + // (which is just equivalent to: $(content).find(expr) + } else + return jQuery( context ).find( selector ); + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( jQuery.isFunction( selector ) ) + return jQuery( document )[ jQuery.fn.ready ? "ready" : "load" ]( selector ); + + return this.setArray(jQuery.makeArray(selector)); + }, + + // The current version of jQuery being used + jquery: "1.2.6", + + // The number of elements contained in the matched element set + size: function() { + return this.length; + }, + + // The number of elements contained in the matched element set + length: 0, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + return num == undefined ? + + // Return a 'clean' array + jQuery.makeArray( this ) : + + // Return just the object + this[ num ]; + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + // Build a new jQuery matched element set + var ret = jQuery( elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + // Return the newly-formed element set + return ret; + }, + + // Force the current matched set of elements to become + // the specified array of elements (destroying the stack in the process) + // You should use pushStack() in order to do this, but maintain the stack + setArray: function( elems ) { + // Resetting the length to 0, then using the native Array push + // is a super-fast way to populate an object with array-like properties + this.length = 0; + Array.prototype.push.apply( this, elems ); + + return this; + }, + + // Execute a callback for every element in the matched set. + // (You can seed the arguments with an array of args, but this is + // only used internally.) + each: function( callback, args ) { + return jQuery.each( this, callback, args ); + }, + + // Determine the position of an element within + // the matched set of elements + index: function( elem ) { + var ret = -1; + + // Locate the position of the desired element + return jQuery.inArray( + // If it receives a jQuery object, the first element is used + elem && elem.jquery ? elem[0] : elem + , this ); + }, + + attr: function( name, value, type ) { + var options = name; + + // Look for the case where we're accessing a style value + if ( name.constructor == String ) + if ( value === undefined ) + return this[0] && jQuery[ type || "attr" ]( this[0], name ); + + else { + options = {}; + options[ name ] = value; + } + + // Check to see if we're setting style values + return this.each(function(i){ + // Set all the styles + for ( name in options ) + jQuery.attr( + type ? + this.style : + this, + name, jQuery.prop( this, options[ name ], type, i, name ) + ); + }); + }, + + css: function( key, value ) { + // ignore negative width and height values + if ( (key == 'width' || key == 'height') && parseFloat(value) < 0 ) + value = undefined; + return this.attr( key, value, "curCSS" ); + }, + + text: function( text ) { + if ( typeof text != "object" && text != null ) + return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) ); + + var ret = ""; + + jQuery.each( text || this, function(){ + jQuery.each( this.childNodes, function(){ + if ( this.nodeType != 8 ) + ret += this.nodeType != 1 ? + this.nodeValue : + jQuery.fn.text( [ this ] ); + }); + }); + + return ret; + }, + + wrapAll: function( html ) { + if ( this[0] ) + // The elements to wrap the target around + jQuery( html, this[0].ownerDocument ) + .clone() + .insertBefore( this[0] ) + .map(function(){ + var elem = this; + + while ( elem.firstChild ) + elem = elem.firstChild; + + return elem; + }) + .append(this); + + return this; + }, + + wrapInner: function( html ) { + return this.each(function(){ + jQuery( this ).contents().wrapAll( html ); + }); + }, + + wrap: function( html ) { + return this.each(function(){ + jQuery( this ).wrapAll( html ); + }); + }, + + append: function() { + return this.domManip(arguments, true, false, function(elem){ + if (this.nodeType == 1) + this.appendChild( elem ); + }); + }, + + prepend: function() { + return this.domManip(arguments, true, true, function(elem){ + if (this.nodeType == 1) + this.insertBefore( elem, this.firstChild ); + }); + }, + + before: function() { + return this.domManip(arguments, false, false, function(elem){ + this.parentNode.insertBefore( elem, this ); + }); + }, + + after: function() { + return this.domManip(arguments, false, true, function(elem){ + this.parentNode.insertBefore( elem, this.nextSibling ); + }); + }, + + end: function() { + return this.prevObject || jQuery( [] ); + }, + + find: function( selector ) { + var elems = jQuery.map(this, function(elem){ + return jQuery.find( selector, elem ); + }); + + return this.pushStack( /[^+>] [^+>]/.test( selector ) || selector.indexOf("..") > -1 ? + jQuery.unique( elems ) : + elems ); + }, + + clone: function( events ) { + // Do the clone + var ret = this.map(function(){ + if ( jQuery.browser.msie && !jQuery.isXMLDoc(this) ) { + // IE copies events bound via attachEvent when + // using cloneNode. Calling detachEvent on the + // clone will also remove the events from the orignal + // In order to get around this, we use innerHTML. + // Unfortunately, this means some modifications to + // attributes in IE that are actually only stored + // as properties will not be copied (such as the + // the name attribute on an input). + var clone = this.cloneNode(true), + container = document.createElement("div"); + container.appendChild(clone); + return jQuery.clean([container.innerHTML])[0]; + } else + return this.cloneNode(true); + }); + + // Need to set the expando to null on the cloned set if it exists + // removeData doesn't work here, IE removes it from the original as well + // this is primarily for IE but the data expando shouldn't be copied over in any browser + var clone = ret.find("*").andSelf().each(function(){ + if ( this[ expando ] != undefined ) + this[ expando ] = null; + }); + + // Copy the events from the original to the clone + if ( events === true ) + this.find("*").andSelf().each(function(i){ + if (this.nodeType == 3) + return; + var events = jQuery.data( this, "events" ); + + for ( var type in events ) + for ( var handler in events[ type ] ) + jQuery.event.add( clone[ i ], type, events[ type ][ handler ], events[ type ][ handler ].data ); + }); + + // Return the cloned set + return ret; + }, + + filter: function( selector ) { + return this.pushStack( + jQuery.isFunction( selector ) && + jQuery.grep(this, function(elem, i){ + return selector.call( elem, i ); + }) || + + jQuery.multiFilter( selector, this ) ); + }, + + not: function( selector ) { + if ( selector.constructor == String ) + // test special case where just one selector is passed in + if ( isSimple.test( selector ) ) + return this.pushStack( jQuery.multiFilter( selector, this, true ) ); + else + selector = jQuery.multiFilter( selector, this ); + + var isArrayLike = selector.length && selector[selector.length - 1] !== undefined && !selector.nodeType; + return this.filter(function() { + return isArrayLike ? jQuery.inArray( this, selector ) < 0 : this != selector; + }); + }, + + add: function( selector ) { + return this.pushStack( jQuery.unique( jQuery.merge( + this.get(), + typeof selector == 'string' ? + jQuery( selector ) : + jQuery.makeArray( selector ) + ))); + }, + + is: function( selector ) { + return !!selector && jQuery.multiFilter( selector, this ).length > 0; + }, + + hasClass: function( selector ) { + return this.is( "." + selector ); + }, + + val: function( value ) { + if ( value == undefined ) { + + if ( this.length ) { + var elem = this[0]; + + // We need to handle select boxes special + if ( jQuery.nodeName( elem, "select" ) ) { + var index = elem.selectedIndex, + values = [], + options = elem.options, + one = elem.type == "select-one"; + + // Nothing was selected + if ( index < 0 ) + return null; + + // Loop through all the selected options + for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) { + var option = options[ i ]; + + if ( option.selected ) { + // Get the specifc value for the option + value = jQuery.browser.msie && !option.attributes.value.specified ? option.text : option.value; + + // We don't need an array for one selects + if ( one ) + return value; + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + + // Everything else, we just grab the value + } else + return (this[0].value || "").replace(/\r/g, ""); + + } + + return undefined; + } + + if( value.constructor == Number ) + value += ''; + + return this.each(function(){ + if ( this.nodeType != 1 ) + return; + + if ( value.constructor == Array && /radio|checkbox/.test( this.type ) ) + this.checked = (jQuery.inArray(this.value, value) >= 0 || + jQuery.inArray(this.name, value) >= 0); + + else if ( jQuery.nodeName( this, "select" ) ) { + var values = jQuery.makeArray(value); + + jQuery( "option", this ).each(function(){ + this.selected = (jQuery.inArray( this.value, values ) >= 0 || + jQuery.inArray( this.text, values ) >= 0); + }); + + if ( !values.length ) + this.selectedIndex = -1; + + } else + this.value = value; + }); + }, + + html: function( value ) { + return value == undefined ? + (this[0] ? + this[0].innerHTML : + null) : + this.empty().append( value ); + }, + + replaceWith: function( value ) { + return this.after( value ).remove(); + }, + + eq: function( i ) { + return this.slice( i, i + 1 ); + }, + + slice: function() { + return this.pushStack( Array.prototype.slice.apply( this, arguments ) ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map(this, function(elem, i){ + return callback.call( elem, i, elem ); + })); + }, + + andSelf: function() { + return this.add( this.prevObject ); + }, + + data: function( key, value ){ + var parts = key.split("."); + parts[1] = parts[1] ? "." + parts[1] : ""; + + if ( value === undefined ) { + var data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]); + + if ( data === undefined && this.length ) + data = jQuery.data( this[0], key ); + + return data === undefined && parts[1] ? + this.data( parts[0] ) : + data; + } else + return this.trigger("setData" + parts[1] + "!", [parts[0], value]).each(function(){ + jQuery.data( this, key, value ); + }); + }, + + removeData: function( key ){ + return this.each(function(){ + jQuery.removeData( this, key ); + }); + }, + + domManip: function( args, table, reverse, callback ) { + var clone = this.length > 1, elems; + + return this.each(function(){ + if ( !elems ) { + elems = jQuery.clean( args, this.ownerDocument ); + + if ( reverse ) + elems.reverse(); + } + + var obj = this; + + if ( table && jQuery.nodeName( this, "table" ) && jQuery.nodeName( elems[0], "tr" ) ) + obj = this.getElementsByTagName("tbody")[0] || this.appendChild( this.ownerDocument.createElement("tbody") ); + + var scripts = jQuery( [] ); + + jQuery.each(elems, function(){ + var elem = clone ? + jQuery( this ).clone( true )[0] : + this; + + // execute all scripts after the elements have been injected + if ( jQuery.nodeName( elem, "script" ) ) + scripts = scripts.add( elem ); + else { + // Remove any inner scripts for later evaluation + if ( elem.nodeType == 1 ) + scripts = scripts.add( jQuery( "script", elem ).remove() ); + + // Inject the elements into the document + callback.call( obj, elem ); + } + }); + + scripts.each( evalScript ); + }); + } +}; + +// Give the init function the jQuery prototype for later instantiation +jQuery.fn.init.prototype = jQuery.fn; + +function evalScript( i, elem ) { + if ( elem.src ) + jQuery.ajax({ + url: elem.src, + async: false, + dataType: "script" + }); + + else + jQuery.globalEval( elem.text || elem.textContent || elem.innerHTML || "" ); + + if ( elem.parentNode ) + elem.parentNode.removeChild( elem ); +} + +function now(){ + return +new Date; +} + +jQuery.extend = jQuery.fn.extend = function() { + // copy reference to target object + var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; + + // Handle a deep copy situation + if ( target.constructor == Boolean ) { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target != "object" && typeof target != "function" ) + target = {}; + + // extend jQuery itself if only one argument is passed + if ( length == i ) { + target = this; + --i; + } + + for ( ; i < length; i++ ) + // Only deal with non-null/undefined values + if ( (options = arguments[ i ]) != null ) + // Extend the base object + for ( var name in options ) { + var src = target[ name ], copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) + continue; + + // Recurse if we're merging object values + if ( deep && copy && typeof copy == "object" && !copy.nodeType ) + target[ name ] = jQuery.extend( deep, + // Never move original objects, clone them + src || ( copy.length != null ? [ ] : { } ) + , copy ); + + // Don't bring in undefined values + else if ( copy !== undefined ) + target[ name ] = copy; + + } + + // Return the modified object + return target; +}; + +var expando = "jQuery" + now(), uuid = 0, windowData = {}, + // exclude the following css properties to add px + exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i, + // cache defaultView + defaultView = document.defaultView || {}; + +jQuery.extend({ + noConflict: function( deep ) { + window.$ = _$; + + if ( deep ) + window.jQuery = _jQuery; + + return jQuery; + }, + + // See test/unit/core.js for details concerning this function. + isFunction: function( fn ) { + return !!fn && typeof fn != "string" && !fn.nodeName && + fn.constructor != Array && /^[\s[]?function/.test( fn + "" ); + }, + + // check if an element is in a (or is an) XML document + isXMLDoc: function( elem ) { + return elem.documentElement && !elem.body || + elem.tagName && elem.ownerDocument && !elem.ownerDocument.body; + }, + + // Evalulates a script in a global context + globalEval: function( data ) { + data = jQuery.trim( data ); + + if ( data ) { + // Inspired by code by Andrea Giammarchi + // http://webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html + var head = document.getElementsByTagName("head")[0] || document.documentElement, + script = document.createElement("script"); + + script.type = "text/javascript"; + if ( jQuery.browser.msie ) + script.text = data; + else + script.appendChild( document.createTextNode( data ) ); + + // Use insertBefore instead of appendChild to circumvent an IE6 bug. + // This arises when a base node is used (#2709). + head.insertBefore( script, head.firstChild ); + head.removeChild( script ); + } + }, + + nodeName: function( elem, name ) { + return elem.nodeName && elem.nodeName.toUpperCase() == name.toUpperCase(); + }, + + cache: {}, + + data: function( elem, name, data ) { + elem = elem == window ? + windowData : + elem; + + var id = elem[ expando ]; + + // Compute a unique ID for the element + if ( !id ) + id = elem[ expando ] = ++uuid; + + // Only generate the data cache if we're + // trying to access or manipulate it + if ( name && !jQuery.cache[ id ] ) + jQuery.cache[ id ] = {}; + + // Prevent overriding the named cache with undefined values + if ( data !== undefined ) + jQuery.cache[ id ][ name ] = data; + + // Return the named cache data, or the ID for the element + return name ? + jQuery.cache[ id ][ name ] : + id; + }, + + removeData: function( elem, name ) { + elem = elem == window ? + windowData : + elem; + + var id = elem[ expando ]; + + // If we want to remove a specific section of the element's data + if ( name ) { + if ( jQuery.cache[ id ] ) { + // Remove the section of cache data + delete jQuery.cache[ id ][ name ]; + + // If we've removed all the data, remove the element's cache + name = ""; + + for ( name in jQuery.cache[ id ] ) + break; + + if ( !name ) + jQuery.removeData( elem ); + } + + // Otherwise, we want to remove all of the element's data + } else { + // Clean up the element expando + try { + delete elem[ expando ]; + } catch(e){ + // IE has trouble directly removing the expando + // but it's ok with using removeAttribute + if ( elem.removeAttribute ) + elem.removeAttribute( expando ); + } + + // Completely remove the data cache + delete jQuery.cache[ id ]; + } + }, + + // args is for internal usage only + each: function( object, callback, args ) { + var name, i = 0, length = object.length; + + if ( args ) { + if ( length == undefined ) { + for ( name in object ) + if ( callback.apply( object[ name ], args ) === false ) + break; + } else + for ( ; i < length; ) + if ( callback.apply( object[ i++ ], args ) === false ) + break; + + // A special, fast, case for the most common use of each + } else { + if ( length == undefined ) { + for ( name in object ) + if ( callback.call( object[ name ], name, object[ name ] ) === false ) + break; + } else + for ( var value = object[0]; + i < length && callback.call( value, i, value ) !== false; value = object[++i] ){} + } + + return object; + }, + + prop: function( elem, value, type, i, name ) { + // Handle executable functions + if ( jQuery.isFunction( value ) ) + value = value.call( elem, i ); + + // Handle passing in a number to a CSS property + return value && value.constructor == Number && type == "curCSS" && !exclude.test( name ) ? + value + "px" : + value; + }, + + className: { + // internal only, use addClass("class") + add: function( elem, classNames ) { + jQuery.each((classNames || "").split(/\s+/), function(i, className){ + if ( elem.nodeType == 1 && !jQuery.className.has( elem.className, className ) ) + elem.className += (elem.className ? " " : "") + className; + }); + }, + + // internal only, use removeClass("class") + remove: function( elem, classNames ) { + if (elem.nodeType == 1) + elem.className = classNames != undefined ? + jQuery.grep(elem.className.split(/\s+/), function(className){ + return !jQuery.className.has( classNames, className ); + }).join(" ") : + ""; + }, + + // internal only, use hasClass("class") + has: function( elem, className ) { + return jQuery.inArray( className, (elem.className || elem).toString().split(/\s+/) ) > -1; + } + }, + + // A method for quickly swapping in/out CSS properties to get correct calculations + swap: function( elem, options, callback ) { + var old = {}; + // Remember the old values, and insert the new ones + for ( var name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + callback.call( elem ); + + // Revert the old values + for ( var name in options ) + elem.style[ name ] = old[ name ]; + }, + + css: function( elem, name, force ) { + if ( name == "width" || name == "height" ) { + var val, props = { position: "absolute", visibility: "hidden", display:"block" }, which = name == "width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ]; + + function getWH() { + val = name == "width" ? elem.offsetWidth : elem.offsetHeight; + var padding = 0, border = 0; + jQuery.each( which, function() { + padding += parseFloat(jQuery.curCSS( elem, "padding" + this, true)) || 0; + border += parseFloat(jQuery.curCSS( elem, "border" + this + "Width", true)) || 0; + }); + val -= Math.round(padding + border); + } + + if ( jQuery(elem).is(":visible") ) + getWH(); + else + jQuery.swap( elem, props, getWH ); + + return Math.max(0, val); + } + + return jQuery.curCSS( elem, name, force ); + }, + + curCSS: function( elem, name, force ) { + var ret, style = elem.style; + + // A helper method for determining if an element's values are broken + function color( elem ) { + if ( !jQuery.browser.safari ) + return false; + + // defaultView is cached + var ret = defaultView.getComputedStyle( elem, null ); + return !ret || ret.getPropertyValue("color") == ""; + } + + // We need to handle opacity special in IE + if ( name == "opacity" && jQuery.browser.msie ) { + ret = jQuery.attr( style, "opacity" ); + + return ret == "" ? + "1" : + ret; + } + // Opera sometimes will give the wrong display answer, this fixes it, see #2037 + if ( jQuery.browser.opera && name == "display" ) { + var save = style.outline; + style.outline = "0 solid black"; + style.outline = save; + } + + // Make sure we're using the right name for getting the float value + if ( name.match( /float/i ) ) + name = styleFloat; + + if ( !force && style && style[ name ] ) + ret = style[ name ]; + + else if ( defaultView.getComputedStyle ) { + + // Only "float" is needed here + if ( name.match( /float/i ) ) + name = "float"; + + name = name.replace( /([A-Z])/g, "-$1" ).toLowerCase(); + + var computedStyle = defaultView.getComputedStyle( elem, null ); + + if ( computedStyle && !color( elem ) ) + ret = computedStyle.getPropertyValue( name ); + + // If the element isn't reporting its values properly in Safari + // then some display: none elements are involved + else { + var swap = [], stack = [], a = elem, i = 0; + + // Locate all of the parent display: none elements + for ( ; a && color(a); a = a.parentNode ) + stack.unshift(a); + + // Go through and make them visible, but in reverse + // (It would be better if we knew the exact display type that they had) + for ( ; i < stack.length; i++ ) + if ( color( stack[ i ] ) ) { + swap[ i ] = stack[ i ].style.display; + stack[ i ].style.display = "block"; + } + + // Since we flip the display style, we have to handle that + // one special, otherwise get the value + ret = name == "display" && swap[ stack.length - 1 ] != null ? + "none" : + ( computedStyle && computedStyle.getPropertyValue( name ) ) || ""; + + // Finally, revert the display styles back + for ( i = 0; i < swap.length; i++ ) + if ( swap[ i ] != null ) + stack[ i ].style.display = swap[ i ]; + } + + // We should always get a number back from opacity + if ( name == "opacity" && ret == "" ) + ret = "1"; + + } else if ( elem.currentStyle ) { + var camelCase = name.replace(/\-(\w)/g, function(all, letter){ + return letter.toUpperCase(); + }); + + ret = elem.currentStyle[ name ] || elem.currentStyle[ camelCase ]; + + // From the awesome hack by Dean Edwards + // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 + + // If we're not dealing with a regular pixel number + // but a number that has a weird ending, we need to convert it to pixels + if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) { + // Remember the original values + var left = style.left, rsLeft = elem.runtimeStyle.left; + + // Put in the new values to get a computed value out + elem.runtimeStyle.left = elem.currentStyle.left; + style.left = ret || 0; + ret = style.pixelLeft + "px"; + + // Revert the changed values + style.left = left; + elem.runtimeStyle.left = rsLeft; + } + } + + return ret; + }, + + clean: function( elems, context ) { + var ret = []; + context = context || document; + // !context.createElement fails in IE with an error but returns typeof 'object' + if (typeof context.createElement == 'undefined') + context = context.ownerDocument || context[0] && context[0].ownerDocument || document; + + jQuery.each(elems, function(i, elem){ + if ( !elem ) + return; + + if ( elem.constructor == Number ) + elem += ''; + + // Convert html string into DOM nodes + if ( typeof elem == "string" ) { + // Fix "XHTML"-style tags in all browsers + elem = elem.replace(/(<(\w+)[^>]*?)\/>/g, function(all, front, tag){ + return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i) ? + all : + front + ">"; + }); + + // Trim whitespace, otherwise indexOf won't work as expected + var tags = jQuery.trim( elem ).toLowerCase(), div = context.createElement("div"); + + var wrap = + // option or optgroup + !tags.indexOf("", "" ] || + + !tags.indexOf("", "" ] || + + tags.match(/^<(thead|tbody|tfoot|colg|cap)/) && + [ 1, "", "
" ] || + + !tags.indexOf("", "" ] || + + // matched above + (!tags.indexOf("", "" ] || + + !tags.indexOf("", "" ] || + + // IE can't serialize and diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/absolute.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/absolute.html new file mode 100644 index 0000000000..3bbc8417dc --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/absolute.html @@ -0,0 +1,39 @@ + + + + + absolute + + + + + +
absolute-1 +
absolute-1-1 +
absolute-1-1-1
+
+
+
absolute-2
+
+

Click the white box to move the marker to it. Clicking the box also changes the position to absolute (if not already) and sets the position according to the position method.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/fixed.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/fixed.html new file mode 100644 index 0000000000..8d69aae94d --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/fixed.html @@ -0,0 +1,33 @@ + + + + + fixed + + + + + +
+
+
+
+

Click the white box to move the marker to it.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/relative.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/relative.html new file mode 100644 index 0000000000..89aae83e4a --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/relative.html @@ -0,0 +1,31 @@ + + + + + relative + + + + + +
+
+
+

Click the white box to move the marker to it. Clicking the box also changes the position to absolute (if not already) and sets the position according to the position method.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/scroll.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/scroll.html new file mode 100644 index 0000000000..494f640581 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/scroll.html @@ -0,0 +1,39 @@ + + + + + scroll + + + + + +
+
+
+
+
+
+
+

Click the white box to move the marker to it.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/static.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/static.html new file mode 100644 index 0000000000..10116af65b --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/static.html @@ -0,0 +1,31 @@ + + + + + static + + + + + +
+
+
+

Click the white box to move the marker to it. Clicking the box also changes the position to absolute (if not already) and sets the position according to the position method.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/offset/table.html b/dom/tests/mochitest/ajax/jquery/test/data/offset/table.html new file mode 100644 index 0000000000..5d15b903b6 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/offset/table.html @@ -0,0 +1,43 @@ + + + + + table + + + + + + + + + + + + + + + + + + + + +
th-1th-2th-3
td-1td-2td-3
+
+

Click the white box to move the marker to it.

+ + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/test.html b/dom/tests/mochitest/ajax/jquery/test/data/test.html new file mode 100644 index 0000000000..fc6dc38607 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/test.html @@ -0,0 +1,7 @@ +html text
+ + +blabla diff --git a/dom/tests/mochitest/ajax/jquery/test/data/test.js b/dom/tests/mochitest/ajax/jquery/test/data/test.js new file mode 100644 index 0000000000..f8bdd091e4 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/test.js @@ -0,0 +1,3 @@ +var foobar = "bar"; +$('#ap').html('bar'); +ok( true, "test.js executed"); diff --git a/dom/tests/mochitest/ajax/jquery/test/data/test2.html b/dom/tests/mochitest/ajax/jquery/test/data/test2.html new file mode 100644 index 0000000000..ebf610e438 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/test2.html @@ -0,0 +1,5 @@ + diff --git a/dom/tests/mochitest/ajax/jquery/test/data/test3.html b/dom/tests/mochitest/ajax/jquery/test/data/test3.html new file mode 100644 index 0000000000..909d41745c --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/test3.html @@ -0,0 +1,3 @@ +
This is a user
+
This is a user
+
This is a teacher
diff --git a/dom/tests/mochitest/ajax/jquery/test/data/testrunner.js b/dom/tests/mochitest/ajax/jquery/test/data/testrunner.js new file mode 100644 index 0000000000..24bf0a863a --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/testrunner.js @@ -0,0 +1,334 @@ +var _config = { + fixture: null, + Test: [], + stats: { + all: 0, + bad: 0 + }, + queue: [], + blocking: true, + timeout: null, + expected: null, + currentModule: null, + asyncTimeout: 2 // seconds for async timeout +}; + +_config.filters = location.search.length > 1 && //restrict modules/tests by get parameters + $.map( location.search.slice(1).split('&'), decodeURIComponent ); + +var isLocal = !!(window.location.protocol == 'file:'); + +$(function() { + $('#userAgent').html(navigator.userAgent); + runTest(); +}); + +function synchronize(callback) { + _config.queue[_config.queue.length] = callback; + if(!_config.blocking) { + process(); + } +} + +function process() { + while(_config.queue.length && !_config.blocking) { + var call = _config.queue[0]; + _config.queue = _config.queue.slice(1); + call(); + } +} + +function stop(allowFailure) { + _config.blocking = true; + var handler = allowFailure ? start : function() { + ok( false, "Test timed out" ); + start(); + }; + // Disabled, caused too many random errors + //_config.timeout = setTimeout(handler, _config.asyncTimeout * 1000); +} +function start() { + // A slight delay, to avoid any current callbacks + setTimeout(function(){ + if(_config.timeout) + clearTimeout(_config.timeout); + _config.blocking = false; + process(); + }, 13); +} + +function validTest( name ) { + var filters = _config.filters; + if( !filters ) + return true; + + var i = filters.length, + run = false; + while( i-- ){ + var filter = filters[i], + not = filter.charAt(0) == '!'; + if( not ) + filter = filter.slice(1); + if( name.indexOf(filter) != -1 ) + return !not; + if( not ) + run = true; + } + return run; +} + +function runTest() { + _config.blocking = false; + var time = new Date(); + _config.fixture = document.getElementById('main').innerHTML; + _config.ajaxSettings = $.ajaxSettings; + synchronize(function() { + time = new Date() - time; + $("
").html(['

Tests completed in ', + time, ' milliseconds.
', + _config.stats.bad, ' tests of ', _config.stats.all, ' failed.

'] + .join('')) + .appendTo("body"); + $("#banner").addClass(_config.stats.bad ? "fail" : "pass"); + if ( parent.runAJAXTest ) + parent.runAJAXTest(); + + }); +} + +function test(name, callback, nowait) { + if(_config.currentModule) + name = _config.currentModule + " module: " + name; + + if ( !validTest(name) ) + return; + + synchronize(function() { + _config.Test = []; + try { + callback(); + } catch(e) { + if( typeof console != "undefined" && console.error && console.warn ) { + console.error("Test " + name + " died, exception and test follows"); + console.error(e); + console.warn(callback.toString()); + } + _config.Test.push( [ false, "Died on test #" + (_config.Test.length+1) + ": " + e.message ] ); + } + }); + synchronize(function() { + reset(); + + // don't output pause tests + if(nowait) return; + + if(_config.expected && _config.expected != _config.Test.length) { + _config.Test.push( [ false, "Expected " + _config.expected + " assertions, but " + _config.Test.length + " were run" ] ); + } + _config.expected = null; + + var good = 0, bad = 0; + var ol = document.createElement("ol"); + ol.style.display = "none"; + var li = "", state = "pass"; + for ( var i = 0; i < _config.Test.length; i++ ) { + var li = document.createElement("li"); + li.className = _config.Test[i][0] ? "pass" : "fail"; + li.innerHTML = _config.Test[i][1]; + ol.appendChild( li ); + + _config.stats.all++; + if ( !_config.Test[i][0] ) { + state = "fail"; + bad++; + _config.stats.bad++; + } else good++; + + if ( parent.SimpleTest ){ + parent.SimpleTest.ok( _config.Test[i][0], `${name}: ${_config.Test[i][1]}` );} + } + + var li = document.createElement("li"); + li.className = state; + + var b = document.createElement("strong"); + b.innerHTML = name + " (" + bad + ", " + good + ", " + _config.Test.length + ")"; + b.onclick = function(){ + var n = this.nextSibling; + if ( jQuery.css( n, "display" ) == "none" ) + n.style.display = "block"; + else + n.style.display = "none"; + }; + $(b).dblclick(function(event) { + var target = jQuery(event.target).filter("strong").clone(); + if ( target.length ) { + target.children().remove(); + location.href = location.href.match(/^(.+?)(\?.*)?$/)[1] + "?" + encodeURIComponent($.trim(target.text())); + } + }); + li.appendChild( b ); + li.appendChild( ol ); + + document.getElementById("tests").appendChild( li ); + }); +} + +// call on start of module test to prepend name to all tests +function module(moduleName) { + _config.currentModule = moduleName; +} + +/** + * Specify the number of expected assertions to gurantee that failed test (no assertions are run at all) don't slip through. + */ +function expect(asserts) { + _config.expected = asserts; +} + +/** + * Resets the test setup. Useful for tests that modify the DOM. + */ +function reset() { + $("#main").html( _config.fixture ); + $.event.global = {}; + $.ajaxSettings = $.extend({}, _config.ajaxSettings); +} + +/** + * Asserts true. + * @example ok( $("a").size() > 5, "There must be at least 5 anchors" ); + */ +function ok(a, msg) { + _config.Test.push( [ !!a, msg ] ); +} + +/** + * Asserts that two arrays are the same + */ +function isSet(a, b, msg) { + var ret = true; + if ( a && b && a.length != undefined && a.length == b.length ) { + for ( var i = 0; i < a.length; i++ ) + if ( a[i] != b[i] ) + ret = false; + } else + ret = false; + if ( !ret ) + _config.Test.push( [ ret, msg + " expected: " + serialArray(b) + " result: " + serialArray(a) ] ); + else + _config.Test.push( [ ret, msg ] ); +} + +/** + * Asserts that two objects are equivalent + */ +function isObj(a, b, msg) { + var ret = true; + + if ( a && b ) { + for ( var i in a ) + if ( a[i] != b[i] ) + ret = false; + + for ( i in b ) + if ( a[i] != b[i] ) + ret = false; + } else + ret = false; + + _config.Test.push( [ ret, msg ] ); +} + +function serialArray( a ) { + var r = []; + + if ( a && a.length ) + for ( var i = 0; i < a.length; i++ ) { + var str = a[i].nodeName; + if ( str ) { + str = str.toLowerCase(); + if ( a[i].id ) + str += "#" + a[i].id; + } else + str = a[i]; + r.push( str ); + } + + return "[ " + r.join(", ") + " ]"; +} + +/** + * Returns an array of elements with the given IDs, eg. + * @example q("main", "foo", "bar") + * @result [
, , ] + */ +function q() { + var r = []; + for ( var i = 0; i < arguments.length; i++ ) + r.push( document.getElementById( arguments[i] ) ); + return r; +} + +/** + * Asserts that a select matches the given IDs + * @example t("Check for something", "//[a]", ["foo", "baar"]); + * @result returns true if "//[a]" return two elements with the IDs 'foo' and 'baar' + */ +function t(a,b,c) { + var f = jQuery(b); + var s = ""; + for ( var i = 0; i < f.length; i++ ) + s += (s && ",") + '"' + f[i].id + '"'; + isSet(f, q.apply(q,c), a + " (" + b + ")"); +} + +/** + * Add random number to url to stop IE from caching + * + * @example url("data/test.html") + * @result "data/test.html?10538358428943" + * + * @example url("data/test.php?foo=bar") + * @result "data/test.php?foo=bar&10538358345554" + */ +function url(value) { + return value + (/\?/.test(value) ? "&" : "?") + new Date().getTime() + "" + parseInt(Math.random()*100000); +} + +/** + * Checks that the first two arguments are equal, with an optional message. + * Prints out both expected and actual values on failure. + * + * Prefered to ok( expected == actual, message ) + * + * @example equals( "Expected 2 characters.", v.formatMessage("Expected {0} characters.", 2) ); + * + * @param Object actual + * @param Object expected + * @param String message (optional) + */ +function equals(actual, expected, message) { + var result = expected == actual; + message = message || (result ? "okay" : "failed"); + _config.Test.push( [ result, result ? message + ": " + expected : message + " expected: " + expected + " actual: " + actual ] ); +} + +/** + * Trigger an event on an element. + * + * @example triggerEvent( document.body, "click" ); + * + * @param DOMElement elem + * @param String type + */ +function triggerEvent( elem, type, event ) { + if ( jQuery.browser.mozilla || jQuery.browser.opera ) { + event = document.createEvent("MouseEvents"); + event.initMouseEvent(type, true, true, elem.ownerDocument.defaultView, + 0, 0, 0, 0, 0, false, false, false, false, 0, null); + elem.dispatchEvent( event ); + } else if ( jQuery.browser.msie ) { + elem.fireEvent("on"+type); + } +} \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/testsuite.css b/dom/tests/mochitest/ajax/jquery/test/data/testsuite.css new file mode 100644 index 0000000000..4801becd65 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/testsuite.css @@ -0,0 +1,117 @@ +body, div, h1 { font-family: 'trebuchet ms', verdana, arial; margin: 0; padding: 0 } +body {font-size: 10pt; } +h1 { padding: 15px; font-size: large; background-color: #06b; color: white; } +h2 { padding: 10px; background-color: #eee; color: black; margin: 0; font-size: small; font-weight: normal } + +.pass { color: green; } +.fail { color: red; } +p.result { margin-left: 1em; } + +#banner { height: 2em; border-bottom: 1px solid white; } +h2.pass { background-color: green; } +h2.fail { background-color: red; } + +ol#tests > li > strong { cursor:pointer; } + +div#fx-tests h4 { + background: red; +} + +div#fx-tests h4.pass { + background: green; +} + +div#fx-tests div.box { + background: red url(data/cow.jpg) no-repeat; + overflow: hidden; + border: 2px solid #000; +} + +div#fx-tests div.overflow { + overflow: visible; +} + +div.inline { + display: inline; +} + +div.autoheight { + height: auto; +} + +div.autowidth { + width: auto; +} + +div.autoopacity { + opacity: auto; +} + +div.largewidth { + width: 100px; +} + +div.largeheight { + height: 100px; +} + +div.largeopacity { + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100); +} + +div.medwidth { + width: 50px; +} + +div.medheight { + height: 50px; +} + +div.medopacity { + opacity: 0.5; + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50); +} + +div.nowidth { + width: 0px; +} + +div.noheight { + height: 0px; +} + +div.noopacity { + opacity: 0; + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0); +} + +div.hidden { + display: none; +} + +div#fx-tests div.widewidth { + background-repeat: repeat-x; +} + +div#fx-tests div.wideheight { + background-repeat: repeat-y; +} + +div#fx-tests div.widewidth.wideheight { + background-repeat: repeat; +} + +div#fx-tests div.noback { + background-image: none; +} + +div.chain, div.chain div { width: 100px; height: 20px; position: relative; float: left; } +div.chain div { position: absolute; top: 0px; left: 0px; } + +div.chain.test { background: red; } +div.chain.test div { background: green; } + +div.chain.out { background: green; } +div.chain.out div { background: red; display: none; } + +div#show-tests * { display: none; } \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/jquery/test/data/with_fries.xml b/dom/tests/mochitest/ajax/jquery/test/data/with_fries.xml new file mode 100644 index 0000000000..88e0e49d57 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/data/with_fries.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + 1 + + + + + foo + + + + + + + diff --git a/dom/tests/mochitest/ajax/jquery/test/fix.html b/dom/tests/mochitest/ajax/jquery/test/fix.html new file mode 100644 index 0000000000..f4edab7919 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/fix.html @@ -0,0 +1,48 @@ + + + + + + + Tester + + + + + + + + +
+ Hi +
+ +
+
+ + + diff --git a/dom/tests/mochitest/ajax/jquery/test/index.html b/dom/tests/mochitest/ajax/jquery/test/index.html new file mode 100644 index 0000000000..8608f430b5 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/index.html @@ -0,0 +1,187 @@ + + + + + jQuery Test Suite + + + + + + + + + + + + + +

jQuery Test Suite

+ +

+ + +
+
+
+ + + + +
    + + diff --git a/dom/tests/mochitest/ajax/jquery/test/offset.html b/dom/tests/mochitest/ajax/jquery/test/offset.html new file mode 100644 index 0000000000..f802dea346 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/offset.html @@ -0,0 +1,27 @@ + + + + + jQuery Offset Test Suite + + + + + + + +

    jQuery Offset Test Suite

    + +

    + + +
    + + +
      + + diff --git a/dom/tests/mochitest/ajax/jquery/test/test.js b/dom/tests/mochitest/ajax/jquery/test/test.js new file mode 100644 index 0000000000..e76b795a2c --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/test.js @@ -0,0 +1,41 @@ +load( "build/js/writeFile.js", "build/js/parse.js" ); + +function addParams(name, params) { + if(params.length > 0) { + name += "("; + for ( var i = 0; i < params.length; i++) { + name += params[i].type + ", "; + } + return name.substring(0, name.length - 2) + ")"; + } else { + return name + "()"; + } +} +function addTestWrapper(name, test) { + return 'test("' + name + '", function() {\n' + test + '\n});'; +} + +var dir = arguments[1]; +var jq = parse( read(arguments[0]) ); + +var testFile = []; + +String.prototype.decode = function() { + return this.replace(/</g, "<").replace(/>/g, ">").replace(/&/g, "&"); +}; + +for ( var i = 0; i < jq.length; i++ ) { + if ( jq[i].tests.length > 0 ) { + var method = jq[i]; + var name = addParams(method.name, method.params); + for(var j = 0; j < method.tests.length; j++) { + if(j > 0) { + name += "x"; + } + testFile[testFile.length] = addTestWrapper(name, method.tests[j].decode()) + "\n"; + } + } +} + +var indexFile = readFile( "build/test/index.html" ); +writeFile( dir + "/index.html", indexFile.replace( /{TESTS}/g, testFile.join("\n") ) ); diff --git a/dom/tests/mochitest/ajax/jquery/test/unit/ajax.js b/dom/tests/mochitest/ajax/jquery/test/unit/ajax.js new file mode 100644 index 0000000000..b60d39e72f --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/unit/ajax.js @@ -0,0 +1,837 @@ +module("ajax"); + +// Safari 3 randomly crashes when running these tests, +// but only in the full suite - you can run just the Ajax +// tests and they'll pass +//if ( !jQuery.browser.safari ) { + +if ( !isLocal ) { + +test("$.ajax() - success callbacks", function() { + expect( 8 ); + + $.ajaxSetup({ timeout: 0 }); + + stop(); + + setTimeout(function(){ + $('#foo').ajaxStart(function(){ + ok( true, "ajaxStart" ); + }).ajaxStop(function(){ + ok( true, "ajaxStop" ); + start(); + }).ajaxSend(function(){ + ok( true, "ajaxSend" ); + }).ajaxComplete(function(){ + ok( true, "ajaxComplete" ); + }).ajaxError(function(){ + ok( false, "ajaxError" ); + }).ajaxSuccess(function(){ + ok( true, "ajaxSuccess" ); + }); + + $.ajax({ + url: url("data/name.html"), + beforeSend: function(){ ok(true, "beforeSend"); }, + success: function(){ ok(true, "success"); }, + error: function(){ ok(false, "error"); }, + complete: function(){ ok(true, "complete"); } + }); + }, 13); +}); + +/* mozilla: the ajaxSuccess part fails intermittently on MacOSX + +test("$.ajax() - error callbacks", function() { + expect( 7 ); + stop(); + + $('#foo').ajaxStart(function(){ + ok( true, "ajaxStart" ); + }).ajaxStop(function(){ + ok( true, "ajaxStop" ); + start(); + }).ajaxSend(function(){ + ok( true, "ajaxSend" ); + }).ajaxComplete(function(){ + ok( true, "ajaxComplete" ); + }).ajaxError(function(){ + ok( true, "ajaxError" ); + }).ajaxSuccess(function(){ + ok( false, "ajaxSuccess" ); + }) + ; + + $.ajaxSetup({ timeout: 500 }); + + $.ajax({ + url: url("data/name.php?wait=5"), + beforeSend: function(){ ok(true, "beforeSend"); }, + success: function(){ ok(false, "success"); }, + error: function(){ ok(true, "error"); }, + complete: function(){ ok(true, "complete"); } + }); +}); + +*/ + +test("$.ajax() - disabled globals", function() { + expect( 3 ); + stop(); + + $('#foo').ajaxStart(function(){ + ok( false, "ajaxStart" ); + }).ajaxStop(function(){ + ok( false, "ajaxStop" ); + }).ajaxSend(function(){ + ok( false, "ajaxSend" ); + }).ajaxComplete(function(){ + ok( false, "ajaxComplete" ); + }).ajaxError(function(){ + ok( false, "ajaxError" ); + }).ajaxSuccess(function(){ + ok( false, "ajaxSuccess" ); + }); + + $.ajax({ + global: false, + url: url("data/name.html"), + beforeSend: function(){ ok(true, "beforeSend"); }, + success: function(){ ok(true, "success"); }, + error: function(){ ok(false, "error"); }, + complete: function(){ + ok(true, "complete"); + setTimeout(function(){ start(); }, 13); + } + }); +}); + +test("$.ajax - xml: non-namespace elements inside namespaced elements", function() { + expect(3); + stop(); + $.ajax({ + url: url("data/with_fries.xml"), + dataType: "xml", + success: function(resp) { + equals( $("properties", resp).length, 1, 'properties in responseXML' ); + equals( $("jsconf", resp).length, 1, 'jsconf in responseXML' ); + equals( $("thing", resp).length, 2, 'things in responseXML' ); + start(); + } + }); +}); + +test("$.ajax - beforeSend", function() { + expect(1); + stop(); + + var check = false; + + $.ajaxSetup({ timeout: 0 }); + + $.ajax({ + url: url("data/name.html"), + beforeSend: function(xml) { + check = true; + }, + success: function(data) { + ok( check, "check beforeSend was executed" ); + start(); + } + }); +}); + +test("$.ajax - beforeSend, cancel request (#2688)", function() { + expect(2); + var request = $.ajax({ + url: url("data/name.html"), + beforeSend: function() { + ok( true, "beforeSend got called, canceling" ); + return false; + }, + success: function() { + ok( false, "request didn't get canceled" ); + }, + complete: function() { + ok( false, "request didn't get canceled" ); + }, + error: function() { + ok( false, "request didn't get canceled" ); + } + }); + ok( request === false, "canceled request must return false instead of XMLHttpRequest instance" ); +}); + +var foobar; + +test("$.ajax - dataType html", function() { + expect(5); + stop(); + + foobar = null; + testFoo = undefined; + + var verifyEvaluation = function() { + equals( testFoo, "foo", 'Check if script was evaluated for datatype html' ); + equals( foobar, "bar", 'Check if script src was evaluated for datatype html' ); + start(); + }; + + $.ajax({ + dataType: "html", + url: url("data/test.html"), + success: function(data) { + $("#ap").html(data); + ok( data.match(/^html text/), 'Check content for datatype html' ); + setTimeout(verifyEvaluation, 600); + } + }); +}); + +test("serialize()", function() { + expect(6); + + equals( $('#form').serialize(), + "action=Test&radio2=on&check=on&hidden=&foo%5Bbar%5D=&name=name&select1=&select2=3&select3=1&select3=2", + 'Check form serialization as query string'); + + equals( $('#form :input').serialize(), + "action=Test&radio2=on&check=on&hidden=&foo%5Bbar%5D=&name=name&select1=&select2=3&select3=1&select3=2", + 'Check input serialization as query string'); + + equals( $('#testForm').serialize(), + 'T3=%3F%0AZ&H1=x&H2=&PWD=&T1=&T2=YES&My+Name=me&S1=abc&S3=YES&S4=', + 'Check form serialization as query string'); + + equals( $('#testForm :input').serialize(), + 'T3=%3F%0AZ&H1=x&H2=&PWD=&T1=&T2=YES&My+Name=me&S1=abc&S3=YES&S4=', + 'Check input serialization as query string'); + + equals( $('#form, #testForm').serialize(), + "action=Test&radio2=on&check=on&hidden=&foo%5Bbar%5D=&name=name&select1=&select2=3&select3=1&select3=2&T3=%3F%0AZ&H1=x&H2=&PWD=&T1=&T2=YES&My+Name=me&S1=abc&S3=YES&S4=", + 'Multiple form serialization as query string'); + + equals( $('#form, #testForm :input').serialize(), + "action=Test&radio2=on&check=on&hidden=&foo%5Bbar%5D=&name=name&select1=&select2=3&select3=1&select3=2&T3=%3F%0AZ&H1=x&H2=&PWD=&T1=&T2=YES&My+Name=me&S1=abc&S3=YES&S4=", + 'Mixed form/input serialization as query string'); +}); + +test("$.param()", function() { + expect(4); + var params = {foo:"bar", baz:42, quux:"All your base are belong to us"}; + equals( $.param(params), "foo=bar&baz=42&quux=All+your+base+are+belong+to+us", "simple" ); + + params = {someName: [1, 2, 3], regularThing: "blah" }; + equals( $.param(params), "someName=1&someName=2&someName=3®ularThing=blah", "with array" ); + + params = {"foo[]":["baz", 42, "All your base are belong to us"]}; + equals( $.param(params), "foo%5B%5D=baz&foo%5B%5D=42&foo%5B%5D=All+your+base+are+belong+to+us", "more array" ); + + params = {"foo[bar]":"baz", "foo[beep]":42, "foo[quux]":"All your base are belong to us"}; + equals( $.param(params), "foo%5Bbar%5D=baz&foo%5Bbeep%5D=42&foo%5Bquux%5D=All+your+base+are+belong+to+us", "even more arrays" ); +}); + +test("synchronous request", function() { + expect(1); + ok( /^{ "data"/.test( $.ajax({url: url("data/json_obj.js"), async: false}).responseText ), "check returned text" ); +}); + +test("synchronous request with callbacks", function() { + expect(2); + var result; + $.ajax({url: url("data/json_obj.js"), async: false, success: function(data) { ok(true, "success callback executed"); result = data; } }); + ok( /^{ "data"/.test( result ), "check returned text" ); +}); + +test("pass-through request object", function() { + expect(8); + stop(true); + + var target = "data/name.html"; + var successCount = 0; + var errorCount = 0; + var errorEx = ""; + var success = function() { + successCount++; + }; + $("#foo").ajaxError(function (e, xml, s, ex) { + errorCount++; + errorEx += ": " + xml.status; + }); + $("#foo").one('ajaxStop', function () { + equals(successCount, 5, "Check all ajax calls successful"); + equals(errorCount, 0, "Check no ajax errors (status" + errorEx + ")"); + $("#foo").unbind('ajaxError'); + start(); + }); + + ok( $.get(url(target), success), "get" ); + ok( $.post(url(target), success), "post" ); + ok( $.getScript(url("data/test.js"), success), "script" ); + ok( $.getJSON(url("data/json_obj.js"), success), "json" ); + ok( $.ajax({url: url(target), success: success}), "generic" ); +}); + +/* mozilla: php not currently supported in mochitest (08/08/2008) +test("ajax cache", function () { + expect(18); + stop(); + + var count = 0; + + $("#firstp").bind("ajaxSuccess", function (e, xml, s) { + var re = /_=(.*?)(&|$)/g; + var oldOne = null; + for (var i = 0; i < 6; i++) { + var ret = re.exec(s.url); + if (!ret) { + break; + } + oldOne = ret[1]; + } + equals(i, 1, "Test to make sure only one 'no-cache' parameter is there"); + ok(oldOne != "tobereplaced555", "Test to be sure parameter (if it was there) was replaced"); + if(++count == 6) + start(); + }); + + ok( $.ajax({url: "data/text.php", cache:false}), "test with no parameters" ); + ok( $.ajax({url: "data/text.php?pizza=true", cache:false}), "test with 1 parameter" ); + ok( $.ajax({url: "data/text.php?_=tobereplaced555", cache:false}), "test with _= parameter" ); + ok( $.ajax({url: "data/text.php?pizza=true&_=tobereplaced555", cache:false}), "test with 1 parameter plus _= one" ); + ok( $.ajax({url: "data/text.php?_=tobereplaced555&tv=false", cache:false}), "test with 1 parameter plus _= one before it" ); + ok( $.ajax({url: "data/text.php?name=David&_=tobereplaced555&washere=true", cache:false}), "test with 2 parameters surrounding _= one" ); +}); +*/ + +test("global ajaxSettings", function() { + expect(2); + + var tmp = jQuery.extend({}, jQuery.ajaxSettings); + var orig = { url: "data/with_fries.xml" }; + var t; + + $.ajaxSetup({ data: {foo: 'bar', bar: 'BAR'} }); + + t = jQuery.extend({}, orig); + t.data = {}; + $.ajax(t); + ok( t.url.indexOf('foo') > -1 && t.url.indexOf('bar') > -1, "Check extending {}" ); + + t = jQuery.extend({}, orig); + t.data = { zoo: 'a', ping: 'b' }; + $.ajax(t); + ok( t.url.indexOf('ping') > -1 && t.url.indexOf('zoo') > -1 && t.url.indexOf('foo') > -1 && t.url.indexOf('bar') > -1, "Check extending { zoo: 'a', ping: 'b' }" ); + + jQuery.ajaxSettings = tmp; +}); + +test("load(String)", function() { + expect(1); + stop(true); // check if load can be called with only url + $('#first').load("data/name.html", start); +}); + +test("load('url selector')", function() { + expect(1); + stop(true); // check if load can be called with only url + $('#first').load("data/test3.html div.user", function(){ + equals( $(this).children("div").length, 2, "Verify that specific elements were injected" ); + start(); + }); +}); + +test("load(String, Function) with ajaxSetup on dataType json, see #2046", function() { + expect(1); + stop(); + $.ajaxSetup({ dataType: "json" }); + $("#first").ajaxComplete(function (e, xml, s) { + equals( s.dataType, "html", "Verify the load() dataType was html" ); + $("#first").unbind("ajaxComplete"); + $.ajaxSetup({ dataType: "" }); + start(); + }); + $('#first').load("data/test3.html"); +}); + +test("load(String, Function) - simple: inject text into DOM", function() { + expect(2); + stop(); + $('#first').load(url("data/name.html"), function() { + ok( /^ERROR/.test($('#first').text()), 'Check if content was injected into the DOM' ); + start(); + }); +}); + +test("load(String, Function) - check scripts", function() { + expect(7); + stop(); + window.testFoo = undefined; + window.foobar = null; + var verifyEvaluation = function() { + equals( foobar, "bar", 'Check if script src was evaluated after load' ); + equals( $('#ap').html(), 'bar', 'Check if script evaluation has modified DOM'); + start(); + }; + $('#first').load(url('data/test.html'), function() { + ok( $('#first').html().match(/^html text/), 'Check content after loading html' ); + equals( $('#foo').html(), 'foo', 'Check if script evaluation has modified DOM'); + equals( testFoo, "foo", 'Check if script was evaluated after load' ); + setTimeout(verifyEvaluation, 600); + }); +}); + +test("load(String, Function) - check file with only a script tag", function() { + expect(3); + stop(); + testFoo = undefined; + $('#first').load(url('data/test2.html'), function() { + equals( $('#foo').html(), 'foo', 'Check if script evaluation has modified DOM'); + equals( testFoo, "foo", 'Check if script was evaluated after load' ); + start(); + }); +}); + +test("$.get(String, Hash, Function) - parse xml and use text() on nodes", function() { + expect(2); + stop(); + $.get(url('data/dashboard.xml'), function(xml) { + var content = []; + $('tab', xml).each(function() { + content.push($(this).text()); + }); + equals( content[0], 'blabla', 'Check first tab'); + equals( content[1], 'blublu', 'Check second tab'); + start(); + }); +}); + +test("$.getScript(String, Function) - with callback", function() { + expect(2); + stop(); + window.foobar = null; + $.getScript(url("data/test.js"), function() { + equals( foobar, "bar", 'Check if script was evaluated' ); + setTimeout(start, 100); + }); +}); + +test("$.getScript(String, Function) - no callback", function() { + expect(1); + stop(true); + $.getScript(url("data/test.js"), start); +}); + +/* mozilla: Tests using php scripts not currently supported (06/26/2008) + +test("$.ajax() - JSONP, Local", function() { + expect(7); + + var count = 0; + function plus(){ if ( ++count == 7 ) start(); } + + stop(); + + $.ajax({ + url: "data/jsonp.php", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (GET, no callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, no callback)" ); + plus(); + } + }); + + $.ajax({ + url: "data/jsonp.php?callback=?", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (GET, url callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, url callback)" ); + plus(); + } + }); + + $.ajax({ + url: "data/jsonp.php", + dataType: "jsonp", + data: "callback=?", + success: function(data){ + ok( data.data, "JSON results returned (GET, data callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, data callback)" ); + plus(); + } + }); + + $.ajax({ + url: "data/jsonp.php", + dataType: "jsonp", + jsonp: "callback", + success: function(data){ + ok( data.data, "JSON results returned (GET, data obj callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, data obj callback)" ); + plus(); + } + }); + + $.ajax({ + type: "POST", + url: "data/jsonp.php", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (POST, no callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, data obj callback)" ); + plus(); + } + }); + + $.ajax({ + type: "POST", + url: "data/jsonp.php", + data: "callback=?", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (POST, data callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (POST, data callback)" ); + plus(); + } + }); + + $.ajax({ + type: "POST", + url: "data/jsonp.php", + jsonp: "callback", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (POST, data obj callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (POST, data obj callback)" ); + plus(); + } + }); +}); + +test("$.ajax() - JSONP, Remote", function() { + expect(4); + + var count = 0; + function plus(){ if ( ++count == 4 ) start(); } + + var base = window.location.href.replace(/\?.*$/, ""); + + stop(); + + $.ajax({ + url: base + "data/jsonp.php", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (GET, no callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, no callback)" ); + plus(); + } + }); + + $.ajax({ + url: base + "data/jsonp.php?callback=?", + dataType: "jsonp", + success: function(data){ + ok( data.data, "JSON results returned (GET, url callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, url callback)" ); + plus(); + } + }); + + $.ajax({ + url: base + "data/jsonp.php", + dataType: "jsonp", + data: "callback=?", + success: function(data){ + ok( data.data, "JSON results returned (GET, data callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, data callback)" ); + plus(); + } + }); + + $.ajax({ + url: base + "data/jsonp.php", + dataType: "jsonp", + jsonp: "callback", + success: function(data){ + ok( data.data, "JSON results returned (GET, data obj callback)" ); + plus(); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, data obj callback)" ); + plus(); + } + }); +}); + +test("$.ajax() - script, Remote", function() { + expect(2); + + var base = window.location.href.replace(/\?.*$/, ""); + + stop(); + + window.foobar = null; + $.ajax({ + url: base + "data/test.js", + dataType: "script", + success: function(data){ + ok( foobar, "Script results returned (GET, no callback)" ); + start(); + } + }); +}); + +test("$.ajax() - script, Remote with POST", function() { + expect(3); + + var base = window.location.href.replace(/\?.*$/, ""); + + stop(); + + window.foobar = null; + $.ajax({ + url: base + "data/test.js", + type: "POST", + dataType: "script", + success: function(data, status){ + ok( foobar, "Script results returned (GET, no callback)" ); + equals( status, "success", "Script results returned (GET, no callback)" ); + start(); + } + }); +}); + +test("$.ajax() - script, Remote with scheme-less URL", function() { + expect(2); + + var base = window.location.href.replace(/\?.*$/, ""); + base = base.replace(/^.*?\/\//, "//"); + + stop(); + + window.foobar = null; + $.ajax({ + url: base + "data/test.js", + dataType: "script", + success: function(data){ + ok( foobar, "Script results returned (GET, no callback)" ); + start(); + } + }); +}); + +test("$.getJSON(String, Hash, Function) - JSON array", function() { + expect(4); + stop(); + $.getJSON(url("data/json.php"), {json: "array"}, function(json) { + equals( json[0].name, 'John', 'Check JSON: first, name' ); + equals( json[0].age, 21, 'Check JSON: first, age' ); + equals( json[1].name, 'Peter', 'Check JSON: second, name' ); + equals( json[1].age, 25, 'Check JSON: second, age' ); + start(); + }); +}); + +test("$.getJSON(String, Function) - JSON object", function() { + expect(2); + stop(); + $.getJSON(url("data/json.php"), function(json) { + equals( json.data.lang, 'en', 'Check JSON: lang' ); + equals( json.data.length, 25, 'Check JSON: length' ); + start(); + }); +}); + +test("$.getJSON(String, Function) - JSON object with absolute url to local content", function() { + expect(2); + + var base = window.location.href.replace(/\?.*$/, ""); + + stop(); + $.getJSON(url(base + "data/json.php"), function(json) { + equals( json.data.lang, 'en', 'Check JSON: lang' ); + equals( json.data.length, 25, 'Check JSON: length' ); + start(); + }); +}); + +test("$.post(String, Hash, Function) - simple with xml", function() { + expect(4); + stop(); + $.post(url("data/name.php"), {xml: "5-2"}, function(xml){ + $('math', xml).each(function() { + equals( $('calculation', this).text(), '5-2', 'Check for XML' ); + equals( $('result', this).text(), '3', 'Check for XML' ); + }); + }); + + $.post(url("data/name.php?xml=5-2"), {}, function(xml){ + $('math', xml).each(function() { + equals( $('calculation', this).text(), '5-2', 'Check for XML' ); + equals( $('result', this).text(), '3', 'Check for XML' ); + }); + start(); + }); +}); + +test("$.ajaxSetup({timeout: Number}) - with global timeout", function() { + stop(); + + var passed = 0; + + $.ajaxSetup({timeout: 1000}); + + var pass = function() { + passed++; + if ( passed == 2 ) { + ok( true, 'Check local and global callbacks after timeout' ); + $('#main').unbind("ajaxError"); + start(); + } + }; + + var fail = function(a,b,c) { + ok( false, 'Check for timeout failed ' + a + ' ' + b ); + start(); + }; + + $('#main').ajaxError(pass); + + $.ajax({ + type: "GET", + url: url("data/name.php?wait=5"), + error: pass, + success: fail + }); + + // reset timeout + $.ajaxSetup({timeout: 0}); +}); + +test("$.ajaxSetup({timeout: Number}) with localtimeout", function() { + stop(); + $.ajaxSetup({timeout: 50}); + + $.ajax({ + type: "GET", + timeout: 5000, + url: url("data/name.php?wait=1"), + error: function() { + ok( false, 'Check for local timeout failed' ); + start(); + }, + success: function() { + ok( true, 'Check for local timeout' ); + start(); + } + }); + + // reset timeout + $.ajaxSetup({timeout: 0}); +}); + +test("$.ajax - simple get", function() { + expect(1); + stop(); + $.ajax({ + type: "GET", + url: url("data/name.php?name=foo"), + success: function(msg){ + equals( msg, 'bar', 'Check for GET' ); + start(); + } + }); +}); + +test("$.ajax - simple post", function() { + expect(1); + stop(); + $.ajax({ + type: "POST", + url: url("data/name.php"), + data: "name=peter", + success: function(msg){ + equals( msg, 'pan', 'Check for POST' ); + start(); + } + }); +}); + +test("ajaxSetup()", function() { + expect(1); + stop(); + $.ajaxSetup({ + url: url("data/name.php?name=foo"), + success: function(msg){ + equals( msg, 'bar', 'Check for GET' ); + start(); + } + }); + $.ajax(); +}); + +test("custom timeout does not set error message when timeout occurs, see #970", function() { + stop(); + $.ajax({ + url: "data/name.php?wait=10", + timeout: 500, + error: function(request, status) { + ok( status != null, "status shouldn't be null in error handler" ); + equals( "timeout", status ); + start(); + } + }); +}); + +test("data option: evaluate function values (#2806)", function() { + stop(); + $.ajax({ + url: "data/echoQuery.php", + data: { + key: function() { + return "value"; + } + }, + success: function(result) { + equals( result, "key=value" ); + start(); + } + }) +}); +*/ +} + +//} diff --git a/dom/tests/mochitest/ajax/jquery/test/unit/core.js b/dom/tests/mochitest/ajax/jquery/test/unit/core.js new file mode 100644 index 0000000000..74a03192c0 --- /dev/null +++ b/dom/tests/mochitest/ajax/jquery/test/unit/core.js @@ -0,0 +1,1700 @@ +module("core"); + +test("Basic requirements", function() { + expect(7); + ok( Array.prototype.push, "Array.push()" ); + ok( Function.prototype.apply, "Function.apply()" ); + ok( document.getElementById, "getElementById" ); + ok( document.getElementsByTagName, "getElementsByTagName" ); + ok( RegExp, "RegExp" ); + ok( jQuery, "jQuery" ); + ok( $, "$()" ); +}); + +test("$()", function() { + expect(8); + + var main = $("#main"); + isSet( $("div p", main).get(), q("sndp", "en", "sap"), "Basic selector with jQuery object as context" ); + +/* + // disabled since this test was doing nothing. i tried to fix it but i'm not sure + // what the expected behavior should even be. FF returns "\n" for the text node + // make sure this is handled + var crlfContainer = $('

      \r\n

      '); + var x = crlfContainer.contents().get(0).nodeValue; + equals( x, what???, "Check for \\r and \\n in jQuery()" ); +*/ + + /* // Disabled until we add this functionality in + var pass = true; + try { + $("
      Testing
      ").appendTo(document.getElementById("iframe").contentDocument.body); + } catch(e){ + pass = false; + } + ok( pass, "$('<tag>') needs optional document parameter to ease cross-frame DOM wrangling, see #968" );*/ + + var code = $(""); + equals( code.length, 1, "Correct number of elements generated for code" ); + var img = $(""); + equals( img.length, 1, "Correct number of elements generated for img" ); + var div = $("

      "); + equals( div.length, 4, "Correct number of elements generated for div hr code b" ); + + // can actually yield more than one, when iframes are included, the window is an array as well + equals( $(window).length, 1, "Correct number of elements generated for window" ); + + equals( $(document).length, 1, "Correct number of elements generated for document" ); + + equals( $([1,2,3]).get(1), 2, "Test passing an array to the factory" ); + + equals( $(document.body).get(0), $('body').get(0), "Test passing an html node to the factory" ); +}); + +test("browser", function() { + expect(13); + var browsers = { + //Internet Explorer + "Mozilla/5.0 (Windows; U; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)": "6.0", + "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.1; .NET CLR 1.1.4322; InfoPath.1; .NET CLR 2.0.50727)": "7.0", + /** Failing #1876 + * "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.0.04506.30)": "7.0", + */ + //Browsers with Gecko engine + //Mozilla + "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915" : "1.7.12", + //Firefox + "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3": "1.8.1.3", + //Netscape + "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20070321 Netscape/8.1.3" : "1.7.5", + //Flock + "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.11) Gecko/20070321 Firefox/1.5.0.11 Flock/0.7.12" : "1.8.0.11", + //Opera browser + "Opera/9.20 (X11; Linux x86_64; U; en)": "9.20", + "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.20" : "9.20", + "Mozilla/5.0 (Windows NT 5.1; U; pl; rv:1.8.0) Gecko/20060728 Firefox/1.5.0 Opera 9.20": "9.20", + //WebKit engine + "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; sv-se) AppleWebKit/418.9 (KHTML, like Gecko) Safari/419.3": "418.9", + "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/418.8 (KHTML, like Gecko) Safari/419.3" : "418.8", + "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; sv-se) AppleWebKit/312.8 (KHTML, like Gecko) Safari/312.5": "312.8", + //Other user agent string + "Other browser's user agent 1.0":null + }; + for (var i in browsers) { + var v = i.toLowerCase().match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ); // RegEx from Core jQuery.browser.version check + version = v ? v[1] : null; + equals( version, browsers[i], "Checking UA string" ); + } +}); + +test("noConflict", function() { + expect(6); + + var old = jQuery; + var newjQuery = jQuery.noConflict(); + + equals( newjQuery, old, "noConflict returned the jQuery object" ); + equals( jQuery, old, "Make sure jQuery wasn't touched." ); + equals( $, "$", "Make sure $ was reverted." ); + + jQuery = $ = old; + + newjQuery = jQuery.noConflict(true); + + equals( newjQuery, old, "noConflict returned the jQuery object" ); + equals( jQuery, "jQuery", "Make sure jQuery was reverted." ); + equals( $, "$", "Make sure $ was reverted." ); + + jQuery = $ = old; +}); + +test("isFunction", function() { + expect(21); + + // Make sure that false values return false + ok( !jQuery.isFunction(), "No Value" ); + ok( !jQuery.isFunction( null ), "null Value" ); + ok( !jQuery.isFunction( undefined ), "undefined Value" ); + ok( !jQuery.isFunction( "" ), "Empty String Value" ); + ok( !jQuery.isFunction( 0 ), "0 Value" ); + + // Check built-ins + // Safari uses "(Internal Function)" + ok( jQuery.isFunction(String), "String Function("+String+")" ); + ok( jQuery.isFunction(Array), "Array Function("+Array+")" ); + ok( jQuery.isFunction(Object), "Object Function("+Object+")" ); + ok( jQuery.isFunction(Function), "Function Function("+Function+")" ); + + // When stringified, this could be misinterpreted + var mystr = "function"; + ok( !jQuery.isFunction(mystr), "Function String" ); + + // When stringified, this could be misinterpreted + var myarr = [ "function" ]; + ok( !jQuery.isFunction(myarr), "Function Array" ); + + // When stringified, this could be misinterpreted + var myfunction = { "function": "test" }; + ok( !jQuery.isFunction(myfunction), "Function Object" ); + + // Make sure normal functions still work + var fn = function(){}; + ok( jQuery.isFunction(fn), "Normal Function" ); + + var obj = document.createElement("object"); + + // Firefox says this is a function + ok( !jQuery.isFunction(obj), "Object Element" ); + + // IE says this is an object + ok( jQuery.isFunction(obj.getAttribute), "getAttribute Function" ); + + var nodes = document.body.childNodes; + + // Safari says this is a function + ok( !jQuery.isFunction(nodes), "childNodes Property" ); + + var first = document.body.firstChild; + + // Normal elements are reported ok everywhere + ok( !jQuery.isFunction(first), "A normal DOM Element" ); + + var input = document.createElement("input"); + input.type = "text"; + document.body.appendChild( input ); + + // IE says this is an object + ok( jQuery.isFunction(input.focus), "A default function property" ); + + document.body.removeChild( input ); + + var a = document.createElement("a"); + a.href = "some-function"; + document.body.appendChild( a ); + + // This serializes with the word 'function' in it + ok( !jQuery.isFunction(a), "Anchor Element" ); + + document.body.removeChild( a ); + + // Recursive function calls have lengths and array-like properties + function callme(callback){ + function fn(response){ + callback(response); + } + + ok( jQuery.isFunction(fn), "Recursive Function Call" ); + + fn({ some: "data" }); + }; + + callme(function(){ + callme(function(){}); + }); +}); + +var foo = false; + +test("$('html')", function() { + expect(6); + + reset(); + foo = false; + var s = $("")[0]; + ok( s, "Creating a script" ); + ok( !foo, "Make sure the script wasn't executed prematurely" ); + $("body").append(s); + ok( foo, "Executing a scripts contents in the right context" ); + + reset(); + ok( $("")[0], "Creating a link" ); + + reset(); + + var j = $("hi there "); + ok( j.length >= 2, "Check node,textnode,comment creation (some browsers delete comments)" ); + + ok( !$("")[0].selected, "Make sure that options are auto-selected #2050" ); +}); + +test("$('html', context)", function() { + expect(1); + + var $div = $("
      "); + var $span = $("", $div); + equals($span.length, 1, "Verify a span created with a div context works, #1763"); +}); + +if ( !isLocal ) { +test("$(selector, xml).text(str) - Loaded via XML document", function() { + expect(2); + stop(); + $.get('data/dashboard.xml', function(xml) { + // tests for #1419 where IE was a problem + equals( $("tab:first", xml).text(), "blabla", "Verify initial text correct" ); + $("tab:first", xml).text("newtext"); + equals( $("tab:first", xml).text(), "newtext", "Verify new text correct" ); + start(); + }); +}); +} + +test("length", function() { + expect(1); + equals( $("p").length, 6, "Get Number of Elements Found" ); +}); + +test("size()", function() { + expect(1); + equals( $("p").size(), 6, "Get Number of Elements Found" ); +}); + +test("get()", function() { + expect(1); + isSet( $("p").get(), q("firstp","ap","sndp","en","sap","first"), "Get All Elements" ); +}); + +test("get(Number)", function() { + expect(1); + equals( $("p").get(0), document.getElementById("firstp"), "Get A Single Element" ); +}); + +test("add(String|Element|Array|undefined)", function() { + expect(12); + isSet( $("#sndp").add("#en").add("#sap").get(), q("sndp", "en", "sap"), "Check elements from document" ); + isSet( $("#sndp").add( $("#en")[0] ).add( $("#sap") ).get(), q("sndp", "en", "sap"), "Check elements from document" ); + ok( $([]).add($("#form")[0].elements).length >= 13, "Check elements from array" ); + + // For the time being, we're discontinuing support for $(form.elements) since it's ambiguous in IE + // use $([]).add(form.elements) instead. + //equals( $([]).add($("#form")[0].elements).length, $($("#form")[0].elements).length, "Array in constructor must equals array in add()" ); + + var x = $([]).add($("

      xxx

      ")).add($("

      xxx

      ")); + equals( x[0].id, "x1", "Check on-the-fly element1" ); + equals( x[1].id, "x2", "Check on-the-fly element2" ); + + var x = $([]).add("

      xxx

      ").add("

      xxx

      "); + equals( x[0].id, "x1", "Check on-the-fly element1" ); + equals( x[1].id, "x2", "Check on-the-fly element2" ); + + var notDefined; + equals( $([]).add(notDefined).length, 0, "Check that undefined adds nothing" ); + + // Added after #2811 + equals( $([]).add([window,document,document.body,document]).length, 3, "Pass an array" ); + equals( $(document).add(document).length, 1, "Check duplicated elements" ); + equals( $(window).add(window).length, 1, "Check duplicated elements using the window" ); + ok( $([]).add( document.getElementById('form') ).length >= 13, "Add a form (adds the elements)" ); +}); + +test("each(Function)", function() { + expect(1); + var div = $("div"); + div.each(function(){this.foo = 'zoo';}); + var pass = true; + for ( var i = 0; i < div.size(); i++ ) { + if ( div.get(i).foo != "zoo" ) pass = false; + } + ok( pass, "Execute a function, Relative" ); +}); + +test("index(Object)", function() { + expect(10); + + var elements = $([window, document]), + inputElements = $('#radio1,#radio2,#check1,#check2'); + + equals( elements.index(window), 0, "Check for index of elements" ); + equals( elements.index(document), 1, "Check for index of elements" ); + equals( inputElements.index(document.getElementById('radio1')), 0, "Check for index of elements" ); + equals( inputElements.index(document.getElementById('radio2')), 1, "Check for index of elements" ); + equals( inputElements.index(document.getElementById('check1')), 2, "Check for index of elements" ); + equals( inputElements.index(document.getElementById('check2')), 3, "Check for index of elements" ); + equals( inputElements.index(window), -1, "Check for not found index" ); + equals( inputElements.index(document), -1, "Check for not found index" ); + + // enabled since [5500] + equals( elements.index( elements ), 0, "Pass in a jQuery object" ); + equals( elements.index( elements.eq(1) ), 1, "Pass in a jQuery object" ); +}); + +test("attr(String)", function() { + expect(29); + equals( $('#text1').attr('value'), "Test", 'Check for value attribute' ); + equals( $('#text1').attr('value', "Test2").attr('defaultValue'), "Test", 'Check for defaultValue attribute' ); + equals( $('#text1').attr('type'), "text", 'Check for type attribute' ); + equals( $('#radio1').attr('type'), "radio", 'Check for type attribute' ); + equals( $('#check1').attr('type'), "checkbox", 'Check for type attribute' ); + equals( $('#simon1').attr('rel'), "bookmark", 'Check for rel attribute' ); + equals( $('#google').attr('title'), "Google!", 'Check for title attribute' ); + equals( $('#mark').attr('hreflang'), "en", 'Check for hreflang attribute' ); + equals( $('#en').attr('lang'), "en", 'Check for lang attribute' ); + equals( $('#simon').attr('class'), "blog link", 'Check for class attribute' ); + equals( $('#name').attr('name'), "name", 'Check for name attribute' ); + equals( $('#text1').attr('name'), "action", 'Check for name attribute' ); + ok( $('#form').attr('action').indexOf("formaction") >= 0, 'Check for action attribute' ); + equals( $('#text1').attr('minlength'), '20', 'Check for minlength attribute' ); + equals( $('#text1').attr('minLength'), '20', 'Check for minLength attribute' ); + equals( $('#area1').attr('minLength'), '20', 'Check for minLength attribute' ); + equals( $('#text1').attr('maxlength'), '30', 'Check for maxlength attribute' ); + equals( $('#text1').attr('maxLength'), '30', 'Check for maxLength attribute' ); + equals( $('#area1').attr('maxLength'), '30', 'Check for maxLength attribute' ); + equals( $('#select2').attr('selectedIndex'), 3, 'Check for selectedIndex attribute' ); + equals( $('#foo').attr('nodeName'), 'DIV', 'Check for nodeName attribute' ); + equals( $('#foo').attr('tagName'), 'DIV', 'Check for tagName attribute' ); + + $('').attr('href', '#5').appendTo('#main'); // using innerHTML in IE causes href attribute to be serialized to the full path + equals( $('#tAnchor5').attr('href'), "#5", 'Check for non-absolute href (an anchor)' ); + + + // Related to [5574] and [5683] + var body = document.body, $body = $(body); + + ok( $body.attr('foo') === undefined, 'Make sure that a non existent attribute returns undefined' ); + ok( $body.attr('nextSibling') === null, 'Make sure a null expando returns null' ); + + body.setAttribute('foo', 'baz'); + equals( $body.attr('foo'), 'baz', 'Make sure the dom attribute is retrieved when no expando is found' ); + + body.foo = 'bar'; + equals( $body.attr('foo'), 'bar', 'Make sure the expando is preferred over the dom attribute' ); + + $body.attr('foo','cool'); + equals( $body.attr('foo'), 'cool', 'Make sure that setting works well when both expando and dom attribute are available' ); + + body.foo = undefined; + ok( $body.attr('foo') === undefined, 'Make sure the expando is preferred over the dom attribute, even if undefined' ); + + body.removeAttribute('foo'); // Cleanup +}); + +if ( !isLocal ) { + test("attr(String) in XML Files", function() { + expect(2); + stop(); + $.get("data/dashboard.xml", function(xml) { + equals( $("locations", xml).attr("class"), "foo", "Check class attribute in XML document" ); + equals( $("location", xml).attr("for"), "bar", "Check for attribute in XML document" ); + start(); + }); + }); +} + +test("attr(String, Function)", function() { + expect(2); + equals( $('#text1').attr('value', function() { return this.id })[0].value, "text1", "Set value from id" ); + equals( $('#text1').attr('title', function(i) { return i }).attr('title'), "0", "Set value with an index"); +}); + +test("attr(Hash)", function() { + expect(1); + var pass = true; + $("div").attr({foo: 'baz', zoo: 'ping'}).each(function(){ + if ( this.getAttribute('foo') != "baz" && this.getAttribute('zoo') != "ping" ) pass = false; + }); + ok( pass, "Set Multiple Attributes" ); +}); + +test("attr(String, Object)", function() { + expect(19); + var div = $("div").attr("foo", "bar"); + fail = false; + for ( var i = 0; i < div.size(); i++ ) { + if ( div.get(i).getAttribute('foo') != "bar" ){ + fail = i; + break; + } + } + equals( fail, false, "Set Attribute, the #"+fail+" element didn't get the attribute 'foo'" ); + + ok( $("#foo").attr({"width": null}), "Try to set an attribute to nothing" ); + + $("#name").attr('name', 'something'); + equals( $("#name").attr('name'), 'something', 'Set name attribute' ); + $("#check2").attr('checked', true); + equals( document.getElementById('check2').checked, true, 'Set checked attribute' ); + $("#check2").attr('checked', false); + equals( document.getElementById('check2').checked, false, 'Set checked attribute' ); + $("#text1").attr('readonly', true); + equals( document.getElementById('text1').readOnly, true, 'Set readonly attribute' ); + $("#text1").attr('readonly', false); + equals( document.getElementById('text1').readOnly, false, 'Set readonly attribute' ); + $("#name").attr('maxlength', '5'); + equals( document.getElementById('name').maxLength, '5', 'Set maxlength attribute' ); + $("#name").attr('maxLength', '10'); + equals( document.getElementById('name').maxLength, '10', 'Set maxlength attribute' ); + $("#name").attr('minlength', '5'); + equals( document.getElementById('name').minLength, '5', 'Set minlength attribute' ); + $("#name").attr('minLength', '10'); + equals( document.getElementById('name').minLength, '10', 'Set minlength attribute' ); + + // for #1070 + $("#name").attr('someAttr', '0'); + equals( $("#name").attr('someAttr'), '0', 'Set attribute to a string of "0"' ); + $("#name").attr('someAttr', 0); + equals( $("#name").attr('someAttr'), 0, 'Set attribute to the number 0' ); + $("#name").attr('someAttr', 1); + equals( $("#name").attr('someAttr'), 1, 'Set attribute to the number 1' ); + + // using contents will get comments regular, text, and comment nodes + var j = $("#nonnodes").contents(); + + j.attr("name", "attrvalue"); + equals( j.attr("name"), "attrvalue", "Check node,textnode,comment for attr" ); + j.removeAttr("name"); + + reset(); + + var type = $("#check2").attr('type'); + var thrown = false; + try { + $("#check2").attr('type','hidden'); + } catch(e) { + thrown = true; + } + ok( thrown, "Exception thrown when trying to change type property" ); + equals( type, $("#check2").attr('type'), "Verify that you can't change the type of an input element" ); + + var check = document.createElement("input"); + var thrown = true; + try { + $(check).attr('type','checkbox'); + } catch(e) { + thrown = false; + } + ok( thrown, "Exception thrown when trying to change type property" ); + equals( "checkbox", $(check).attr('type'), "Verify that you can change the type of an input element that isn't in the DOM" ); +}); + +if ( !isLocal ) { + test("attr(String, Object) - Loaded via XML document", function() { + expect(2); + stop(); + $.get('data/dashboard.xml', function(xml) { + var titles = []; + $('tab', xml).each(function() { + titles.push($(this).attr('title')); + }); + equals( titles[0], 'Location', 'attr() in XML context: Check first title' ); + equals( titles[1], 'Users', 'attr() in XML context: Check second title' ); + start(); + }); + }); +} + +test("css(String|Hash)", function() { + expect(19); + + equals( $('#main').css("display"), 'none', 'Check for css property "display"'); + + ok( $('#foo').is(':visible'), 'Modifying CSS display: Assert element is visible'); + $('#foo').css({display: 'none'}); + ok( !$('#foo').is(':visible'), 'Modified CSS display: Assert element is hidden'); + $('#foo').css({display: 'block'}); + ok( $('#foo').is(':visible'), 'Modified CSS display: Assert element is visible'); + + $('#floatTest').css({styleFloat: 'right'}); + equals( $('#floatTest').css('styleFloat'), 'right', 'Modified CSS float using "styleFloat": Assert float is right'); + $('#floatTest').css({cssFloat: 'left'}); + equals( $('#floatTest').css('cssFloat'), 'left', 'Modified CSS float using "cssFloat": Assert float is left'); + $('#floatTest').css({'float': 'right'}); + equals( $('#floatTest').css('float'), 'right', 'Modified CSS float using "float": Assert float is right'); + $('#floatTest').css({'font-size': '30px'}); + equals( $('#floatTest').css('font-size'), '30px', 'Modified CSS font-size: Assert font-size is 30px'); + + $.each("0,0.25,0.5,0.75,1".split(','), function(i, n) { + $('#foo').css({opacity: n}); + equals( $('#foo').css('opacity'), parseFloat(n), "Assert opacity is " + parseFloat(n) + " as a String" ); + $('#foo').css({opacity: parseFloat(n)}); + equals( $('#foo').css('opacity'), parseFloat(n), "Assert opacity is " + parseFloat(n) + " as a Number" ); + }); + $('#foo').css({opacity: ''}); + equals( $('#foo').css('opacity'), '1', "Assert opacity is 1 when set to an empty String" ); +}); + +test("css(String, Object)", function() { + expect(21); + ok( $('#foo').is(':visible'), 'Modifying CSS display: Assert element is visible'); + $('#foo').css('display', 'none'); + ok( !$('#foo').is(':visible'), 'Modified CSS display: Assert element is hidden'); + $('#foo').css('display', 'block'); + ok( $('#foo').is(':visible'), 'Modified CSS display: Assert element is visible'); + + $('#floatTest').css('styleFloat', 'left'); + equals( $('#floatTest').css('styleFloat'), 'left', 'Modified CSS float using "styleFloat": Assert float is left'); + $('#floatTest').css('cssFloat', 'right'); + equals( $('#floatTest').css('cssFloat'), 'right', 'Modified CSS float using "cssFloat": Assert float is right'); + $('#floatTest').css('float', 'left'); + equals( $('#floatTest').css('float'), 'left', 'Modified CSS float using "float": Assert float is left'); + $('#floatTest').css('font-size', '20px'); + equals( $('#floatTest').css('font-size'), '20px', 'Modified CSS font-size: Assert font-size is 20px'); + + $.each("0,0.25,0.5,0.75,1".split(','), function(i, n) { + $('#foo').css('opacity', n); + equals( $('#foo').css('opacity'), parseFloat(n), "Assert opacity is " + parseFloat(n) + " as a String" ); + $('#foo').css('opacity', parseFloat(n)); + equals( $('#foo').css('opacity'), parseFloat(n), "Assert opacity is " + parseFloat(n) + " as a Number" ); + }); + $('#foo').css('opacity', ''); + equals( $('#foo').css('opacity'), '1', "Assert opacity is 1 when set to an empty String" ); + // for #1438, IE throws JS error when filter exists but doesn't have opacity in it + if (jQuery.browser.msie) { + $('#foo').css("filter", "progid:DXImageTransform.Microsoft.Chroma(color='red');"); + } + equals( $('#foo').css('opacity'), '1', "Assert opacity is 1 when a different filter is set in IE, #1438" ); + + // using contents will get comments regular, text, and comment nodes + var j = $("#nonnodes").contents(); + j.css("padding-left", "1px"); + equals( j.css("padding-left"), "1px", "Check node,textnode,comment css works" ); + + // opera sometimes doesn't update 'display' correctly, see #2037 + $("#t2037")[0].innerHTML = $("#t2037")[0].innerHTML + equals( $("#t2037 .hidden").css("display"), "none", "Make sure browser thinks it is hidden" ); +}); + +test("jQuery.css(elem, 'height') doesn't clear radio buttons (bug #1095)", function () { + expect(4); + + var $checkedtest = $("#checkedtest"); + // IE6 was clearing "checked" in jQuery.css(elem, "height"); + jQuery.css($checkedtest[0], "height"); + ok( !! $(":radio:first", $checkedtest).attr("checked"), "Check first radio still checked." ); + ok( ! $(":radio:last", $checkedtest).attr("checked"), "Check last radio still NOT checked." ); + ok( !! $(":checkbox:first", $checkedtest).attr("checked"), "Check first checkbox still checked." ); + ok( ! $(":checkbox:last", $checkedtest).attr("checked"), "Check last checkbox still NOT checked." ); +}); + +test("width()", function() { + expect(9); + + var $div = $("#nothiddendiv"); + $div.width(30); + equals($div.width(), 30, "Test set to 30 correctly"); + $div.width(-1); // handle negative numbers by ignoring #1599 + equals($div.width(), 30, "Test negative width ignored"); + $div.css("padding", "20px"); + equals($div.width(), 30, "Test padding specified with pixels"); + $div.css("border", "2px solid #fff"); + equals($div.width(), 30, "Test border specified with pixels"); + $div.css("padding", "2em"); + equals($div.width(), 30, "Test padding specified with ems"); + $div.css("border", "1em solid #fff"); + equals($div.width(), 30, "Test border specified with ems"); + $div.css("padding", "2%"); + equals($div.width(), 30, "Test padding specified with percent"); + $div.hide(); + equals($div.width(), 30, "Test hidden div"); + + $div.css({ display: "", border: "", padding: "" }); + + $("#nothiddendivchild").css({ padding: "3px", border: "2px solid #fff" }); + equals($("#nothiddendivchild").width(), 20, "Test child width with border and padding"); + $("#nothiddendiv, #nothiddendivchild").css({ border: "", padding: "", width: "" }); +}); + +test("height()", function() { + expect(8); + + var $div = $("#nothiddendiv"); + $div.height(30); + equals($div.height(), 30, "Test set to 30 correctly"); + $div.height(-1); // handle negative numbers by ignoring #1599 + equals($div.height(), 30, "Test negative height ignored"); + $div.css("padding", "20px"); + equals($div.height(), 30, "Test padding specified with pixels"); + $div.css("border", "2px solid #fff"); + equals($div.height(), 30, "Test border specified with pixels"); + $div.css("padding", "2em"); + equals($div.height(), 30, "Test padding specified with ems"); + $div.css("border", "1em solid #fff"); + equals($div.height(), 30, "Test border specified with ems"); + $div.css("padding", "2%"); + equals($div.height(), 30, "Test padding specified with percent"); + $div.hide(); + equals($div.height(), 30, "Test hidden div"); + + $div.css({ display: "", border: "", padding: "", height: "1px" }); +}); + +test("text()", function() { + expect(1); + var expected = "This link has class=\"blog\": Simon Willison's Weblog"; + equals( $('#sap').text(), expected, 'Check for merged text of more then one element.' ); +}); + +test("wrap(String|Element)", function() { + expect(8); + var defaultText = 'Try them out:' + var result = $('#first').wrap('
      ').text(); + equals( defaultText, result, 'Check for wrapping of on-the-fly html' ); + ok( $('#first').parent().parent().is('.red'), 'Check if wrapper has class "red"' ); + + reset(); + var defaultText = 'Try them out:' + var result = $('#first').wrap(document.getElementById('empty')).parent(); + ok( result.is('ol'), 'Check for element wrapping' ); + equals( result.text(), defaultText, 'Check for element wrapping' ); + + reset(); + $('#check1').click(function() { + var checkbox = this; + ok( checkbox.checked, "Checkbox's state is erased after wrap() action, see #769" ); + $(checkbox).wrap( '' ); + ok( checkbox.checked, "Checkbox's state is erased after wrap() action, see #769" ); + }).click(); + + // using contents will get comments regular, text, and comment nodes + var j = $("#nonnodes").contents(); + j.wrap(""); + equals( $("#nonnodes > i").length, 3, "Check node,textnode,comment wraps ok" ); + equals( $("#nonnodes > i").text(), j.text() + j[1].nodeValue, "Check node,textnode,comment wraps doesn't hurt text" ); +}); + +test("wrapAll(String|Element)", function() { + expect(8); + var prev = $("#first")[0].previousSibling; + var p = $("#first")[0].parentNode; + var result = $('#first,#firstp').wrapAll('
      '); + equals( result.parent().length, 1, 'Check for wrapping of on-the-fly html' ); + ok( $('#first').parent().parent().is('.red'), 'Check if wrapper has class "red"' ); + ok( $('#firstp').parent().parent().is('.red'), 'Check if wrapper has class "red"' ); + equals( $("#first").parent().parent()[0].previousSibling, prev, "Correct Previous Sibling" ); + equals( $("#first").parent().parent()[0].parentNode, p, "Correct Parent" ); + + reset(); + var prev = $("#first")[0].previousSibling; + var p = $("#first")[0].parentNode; + var result = $('#first,#firstp').wrapAll(document.getElementById('empty')); + equals( $("#first").parent()[0], $("#firstp").parent()[0], "Same Parent" ); + equals( $("#first").parent()[0].previousSibling, prev, "Correct Previous Sibling" ); + equals( $("#first").parent()[0].parentNode, p, "Correct Parent" ); +}); + +test("wrapInner(String|Element)", function() { + expect(6); + var num = $("#first").children().length; + var result = $('#first').wrapInner('
      '); + equals( $("#first").children().length, 1, "Only one child" ); + ok( $("#first").children().is(".red"), "Verify Right Element" ); + equals( $("#first").children().children().children().length, num, "Verify Elements Intact" ); + + reset(); + var num = $("#first").children().length; + var result = $('#first').wrapInner(document.getElementById('empty')); + equals( $("#first").children().length, 1, "Only one child" ); + ok( $("#first").children().is("#empty"), "Verify Right Element" ); + equals( $("#first").children().children().length, num, "Verify Elements Intact" ); +}); + +test("append(String|Element|Array<Element>|jQuery)", function() { + expect(21); + var defaultText = 'Try them out:' + var result = $('#first').append('buga'); + equals( result.text(), defaultText + 'buga', 'Check if text appending works' ); + equals( $('#select3').append('').find('option:last-child').attr('value'), 'appendTest', 'Appending html options to select element'); + + reset(); + var expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:"; + $('#sap').append(document.getElementById('first')); + equals( expected, $('#sap').text(), "Check for appending of element" ); + + reset(); + expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:Yahoo"; + $('#sap').append([document.getElementById('first'), document.getElementById('yahoo')]); + equals( expected, $('#sap').text(), "Check for appending of array of elements" ); + + reset(); + expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:Yahoo"; + $('#sap').append($("#first, #yahoo")); + equals( expected, $('#sap').text(), "Check for appending of jQuery object" ); + + reset(); + $("#sap").append( 5 ); + ok( $("#sap")[0].innerHTML.match( /5$/ ), "Check for appending a number" ); + + reset(); + $("#sap").append( " text with spaces " ); + ok( $("#sap")[0].innerHTML.match(/ text with spaces $/), "Check for appending text with spaces" ); + + reset(); + ok( $("#sap").append([]), "Check for appending an empty array." ); + ok( $("#sap").append(""), "Check for appending an empty string." ); + ok( $("#sap").append(document.getElementsByTagName("foo")), "Check for appending an empty nodelist." ); + + reset(); + $("#sap").append(document.getElementById('form')); + equals( $("#sap>form").size(), 1, "Check for appending a form" ); // Bug #910 + + reset(); + var pass = true; + try { + $( $("#iframe")[0].contentWindow.document.body ).append("
      test
      "); + } catch(e) { + pass = false; + } + + ok( pass, "Test for appending a DOM node to the contents of an IFrame" ); + + reset(); + $('
      ').appendTo('#form').append('test'); + t( 'Append legend', '#legend', ['legend'] ); + + reset(); + $('#select1').append(''); + equals( $('#select1 option:last').text(), "Test", "Appending <OPTION> (all caps)" ); + + $('#table').append(''); + ok( $('#table colgroup').length, "Append colgroup" ); + + $('#table colgroup').append(''); + ok( $('#table colgroup col').length, "Append col" ); + + reset(); + $('#table').append(''); + ok( $('#table caption').length, "Append caption" ); + + reset(); + $('form:last') + .append('') + .append(''); + + t( "Append Select", "#appendSelect1, #appendSelect2", ["appendSelect1", "appendSelect2"] ); + + // using contents will get comments regular, text, and comment nodes + var j = $("#nonnodes").contents(); + var d = $("
      ").appendTo("#nonnodes").append(j); + equals( $("#nonnodes").length, 1, "Check node,textnode,comment append moved leaving just the div" ); + ok( d.contents().length >= 2, "Check node,textnode,comment append works" ); + d.contents().appendTo("#nonnodes"); + d.remove(); + ok( $("#nonnodes").contents().length >= 2, "Check node,textnode,comment append cleanup worked" ); +}); + +test("appendTo(String|Element|Array<Element>|jQuery)", function() { + expect(6); + var defaultText = 'Try them out:' + $('buga').appendTo('#first'); + equals( $("#first").text(), defaultText + 'buga', 'Check if text appending works' ); + equals( $('').appendTo('#select3').parent().find('option:last-child').attr('value'), 'appendTest', 'Appending html options to select element'); + + reset(); + var expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:"; + $(document.getElementById('first')).appendTo('#sap'); + equals( expected, $('#sap').text(), "Check for appending of element" ); + + reset(); + expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:Yahoo"; + $([document.getElementById('first'), document.getElementById('yahoo')]).appendTo('#sap'); + equals( expected, $('#sap').text(), "Check for appending of array of elements" ); + + reset(); + expected = "This link has class=\"blog\": Simon Willison's WeblogTry them out:Yahoo"; + $("#first, #yahoo").appendTo('#sap'); + equals( expected, $('#sap').text(), "Check for appending of jQuery object" ); + + reset(); + $('#select1').appendTo('#foo'); + t( 'Append select', '#foo select', ['select1'] ); +}); + +test("prepend(String|Element|Array<Element>|jQuery)", function() { + expect(5); + var defaultText = 'Try them out:' + var result = $('#first').prepend('buga'); + equals( result.text(), 'buga' + defaultText, 'Check if text prepending works' ); + equals( $('#select3').prepend('').find('option:first-child').attr('value'), 'prependTest', 'Prepending html options to select element'); + + reset(); + var expected = "Try them out:This link has class=\"blog\": Simon Willison's Weblog"; + $('#sap').prepend(document.getElementById('first')); + equals( expected, $('#sap').text(), "Check for prepending of element" ); + + reset(); + expected = "Try them out:YahooThis link has class=\"blog\": Simon Willison's Weblog"; + $('#sap').prepend([document.getElementById('first'), document.getElementById('yahoo')]); + equals( expected, $('#sap').text(), "Check for prepending of array of elements" ); + + reset(); + expected = "Try them out:YahooThis link has class=\"blog\": Simon Willison's Weblog"; + $('#sap').prepend($("#first, #yahoo")); + equals( expected, $('#sap').text(), "Check for prepending of jQuery object" ); +}); + +test("prependTo(String|Element|Array<Element>|jQuery)", function() { + expect(6); + var defaultText = 'Try them out:' + $('buga').prependTo('#first'); + equals( $('#first').text(), 'buga' + defaultText, 'Check if text prepending works' ); + equals( $('').prependTo('#select3').parent().find('option:first-child').attr('value'), 'prependTest', 'Prepending html options to select element'); + + reset(); + var expected = "Try them out:This link has class=\"blog\": Simon Willison's Weblog"; + $(document.getElementById('first')).prependTo('#sap'); + equals( expected, $('#sap').text(), "Check for prepending of element" ); + + reset(); + expected = "Try them out:YahooThis link has class=\"blog\": Simon Willison's Weblog"; + $([document.getElementById('yahoo'), document.getElementById('first')]).prependTo('#sap'); + equals( expected, $('#sap').text(), "Check for prepending of array of elements" ); + + reset(); + expected = "Try them out:YahooThis link has class=\"blog\": Simon Willison's Weblog"; + $("#yahoo, #first").prependTo('#sap'); + equals( expected, $('#sap').text(), "Check for prepending of jQuery object" ); + + reset(); + $('').prependTo('form:last'); + $('').prependTo('form:last'); + + t( "Prepend Select", "#prependSelect1, #prependSelect2", ["prependSelect1", "prependSelect2"] ); +}); + +test("before(String|Element|Array<Element>|jQuery)", function() { + expect(4); + var expected = 'This is a normal link: bugaYahoo'; + $('#yahoo').before('buga'); + equals( expected, $('#en').text(), 'Insert String before' ); + + reset(); + expected = "This is a normal link: Try them out:Yahoo"; + $('#yahoo').before(document.getElementById('first')); + equals( expected, $('#en').text(), "Insert element before" ); + + reset(); + expected = "This is a normal link: Try them out:diveintomarkYahoo"; + $('#yahoo').before([document.getElementById('first'), document.getElementById('mark')]); + equals( expected, $('#en').text(), "Insert array of elements before" ); + + reset(); + expected = "This is a normal link: Try them out:diveintomarkYahoo"; + $('#yahoo').before($("#first, #mark")); + equals( expected, $('#en').text(), "Insert jQuery before" ); +}); + +test("insertBefore(String|Element|Array<Element>|jQuery)", function() { + expect(4); + var expected = 'This is a normal link: bugaYahoo'; + $('buga').insertBefore('#yahoo'); + equals( expected, $('#en').text(), 'Insert String before' ); + + reset(); + expected = "This is a normal link: Try them out:Yahoo"; + $(document.getElementById('first')).insertBefore('#yahoo'); + equals( expected, $('#en').text(), "Insert element before" ); + + reset(); + expected = "This is a normal link: Try them out:diveintomarkYahoo"; + $([document.getElementById('first'), document.getElementById('mark')]).insertBefore('#yahoo'); + equals( expected, $('#en').text(), "Insert array of elements before" ); + + reset(); + expected = "This is a normal link: Try them out:diveintomarkYahoo"; + $("#first, #mark").insertBefore('#yahoo'); + equals( expected, $('#en').text(), "Insert jQuery before" ); +}); + +test("after(String|Element|Array<Element>|jQuery)", function() { + expect(4); + var expected = 'This is a normal link: Yahoobuga'; + $('#yahoo').after('buga'); + equals( expected, $('#en').text(), 'Insert String after' ); + + reset(); + expected = "This is a normal link: YahooTry them out:"; + $('#yahoo').after(document.getElementById('first')); + equals( expected, $('#en').text(), "Insert element after" ); + + reset(); + expected = "This is a normal link: YahooTry them out:diveintomark"; + $('#yahoo').after([document.getElementById('first'), document.getElementById('mark')]); + equals( expected, $('#en').text(), "Insert array of elements after" ); + + reset(); + expected = "This is a normal link: YahooTry them out:diveintomark"; + $('#yahoo').after($("#first, #mark")); + equals( expected, $('#en').text(), "Insert jQuery after" ); +}); + +test("insertAfter(String|Element|Array<Element>|jQuery)", function() { + expect(4); + var expected = 'This is a normal link: Yahoobuga'; + $('buga').insertAfter('#yahoo'); + equals( expected, $('#en').text(), 'Insert String after' ); + + reset(); + expected = "This is a normal link: YahooTry them out:"; + $(document.getElementById('first')).insertAfter('#yahoo'); + equals( expected, $('#en').text(), "Insert element after" ); + + reset(); + expected = "This is a normal link: YahooTry them out:diveintomark"; + $([document.getElementById('mark'), document.getElementById('first')]).insertAfter('#yahoo'); + equals( expected, $('#en').text(), "Insert array of elements after" ); + + reset(); + expected = "This is a normal link: YahooTry them out:diveintomark"; + $("#mark, #first").insertAfter('#yahoo'); + equals( expected, $('#en').text(), "Insert jQuery after" ); +}); + +test("replaceWith(String|Element|Array<Element>|jQuery)", function() { + expect(10); + $('#yahoo').replaceWith('buga'); + ok( $("#replace")[0], 'Replace element with string' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after string' ); + + reset(); + $('#yahoo').replaceWith(document.getElementById('first')); + ok( $("#first")[0], 'Replace element with element' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after element' ); + + reset(); + $('#yahoo').replaceWith([document.getElementById('first'), document.getElementById('mark')]); + ok( $("#first")[0], 'Replace element with array of elements' ); + ok( $("#mark")[0], 'Replace element with array of elements' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after array of elements' ); + + reset(); + $('#yahoo').replaceWith($("#first, #mark")); + ok( $("#first")[0], 'Replace element with set of elements' ); + ok( $("#mark")[0], 'Replace element with set of elements' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after set of elements' ); +}); + +test("replaceAll(String|Element|Array<Element>|jQuery)", function() { + expect(10); + $('buga').replaceAll("#yahoo"); + ok( $("#replace")[0], 'Replace element with string' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after string' ); + + reset(); + $(document.getElementById('first')).replaceAll("#yahoo"); + ok( $("#first")[0], 'Replace element with element' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after element' ); + + reset(); + $([document.getElementById('first'), document.getElementById('mark')]).replaceAll("#yahoo"); + ok( $("#first")[0], 'Replace element with array of elements' ); + ok( $("#mark")[0], 'Replace element with array of elements' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after array of elements' ); + + reset(); + $("#first, #mark").replaceAll("#yahoo"); + ok( $("#first")[0], 'Replace element with set of elements' ); + ok( $("#mark")[0], 'Replace element with set of elements' ); + ok( !$("#yahoo")[0], 'Verify that original element is gone, after set of elements' ); +}); + +test("end()", function() { + expect(3); + equals( 'Yahoo', $('#yahoo').parent().end().text(), 'Check for end' ); + ok( $('#yahoo').end(), 'Check for end with nothing to end' ); + + var x = $('#yahoo'); + x.parent(); + equals( 'Yahoo', $('#yahoo').text(), 'Check for non-destructive behaviour' ); +}); + +test("find(String)", function() { + expect(2); + equals( 'Yahoo', $('#foo').find('.blogTest').text(), 'Check for find' ); + + // using contents will get comments regular, text, and comment nodes + var j = $("#nonnodes").contents(); + equals( j.find("div").length, 0, "Check node,textnode,comment to find zero divs" ); +}); + +test("clone()", function() { + expect(20); + equals( 'This is a normal link: Yahoo', $('#en').text(), 'Assert text for #en' ); + var clone = $('#yahoo').clone(); + equals( 'Try them out:Yahoo', $('#first').append(clone).text(), 'Check for clone' ); + equals( 'This is a normal link: Yahoo', $('#en').text(), 'Reassert text for #en' ); + + var cloneTags = [ + "", "", "'); + }, + + setStatus: function(status) { + this.getLastLogLine().addClassName(status); + $(this.getLastLogLine().getElementsByTagName('td')[1]).update(status); + }, + + finish: function(status, summary) { + if (!this.element) return; + this.setStatus(status); + this.message(summary); + }, + + message: function(message) { + if (!this.element) return; + this.getMessageCell().update(this._toHTML(message)); + }, + + summary: function(summary) { + if (!this.element) return; + var div = $(this.element.getElementsByTagName('div')[0]); + div.update(this._toHTML(summary)); + }, + + getLastLogLine: function() { + //return this.element.descendants('tr').last(); + var trs = this.element.getElementsByTagName('tr'); + return $(trs[trs.length - 1]); + }, + + getMessageCell: function() { + return this.getLastLogLine().down('td', 2); + var tds = this.getLastLogLine().getElementsByTagName('td'); + return $(tds[2]); + }, + + _createLogTable: function() { + var html = '
      running...
      ' + + '
      ", "
      ", + "
      + + + +

      bindAsEventListener() test

      + + + +

      Object.inspect(event) test

      + + + +

      Add unload events

      + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/lib/unittest.js b/dom/tests/mochitest/ajax/prototype/test/lib/unittest.js new file mode 100644 index 0000000000..4f92d13dc0 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/lib/unittest.js @@ -0,0 +1,602 @@ +// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005 Jon Tirsen (http://www.tirsen.com) +// (c) 2005 Michael Schuerig (http://www.schuerig.de/michael/) +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +// experimental, Firefox-only +Event.simulateMouse = function(element, eventName) { + var options = Object.extend({ + pointerX: 0, + pointerY: 0, + buttons: 0 + }, arguments[2] || {}); + var oEvent = document.createEvent("MouseEvents"); + oEvent.initMouseEvent(eventName, true, true, document.defaultView, + options.buttons, options.pointerX, options.pointerY, options.pointerX, options.pointerY, + false, false, false, false, 0, $(element)); + + if (this.mark) Element.remove(this.mark); + + var style = 'position: absolute; width: 5px; height: 5px;' + + 'top: #{pointerY}px; left: #{pointerX}px;'.interpolate(options) + + 'border-top: 1px solid red; border-left: 1px solid red;' + + this.mark = new Element('div', { style: style }); + this.mark.appendChild(document.createTextNode(" ")); + document.body.appendChild(this.mark); + + if (this.step) + alert('['+new Date().getTime().toString()+'] '+eventName+'/'+Test.Unit.inspect(options)); + + $(element).dispatchEvent(oEvent); +}; + +// Note: Due to a fix in Firefox 1.0.5/6 that probably fixed "too much", this doesn't work in 1.0.6 or DP2. +// You need to downgrade to 1.0.4 for now to get this working +// See https://bugzilla.mozilla.org/show_bug.cgi?id=289940 for the fix that fixed too much +Event.simulateKey = function(element, eventName) { + var options = Object.extend({ + ctrlKey: false, + altKey: false, + shiftKey: false, + metaKey: false, + keyCode: 0, + charCode: 0 + }, arguments[2] || {}); + + var oEvent = document.createEvent("KeyboardEvent"); + oEvent.initKeyEvent(eventName, true, true, window, + options.ctrlKey, options.altKey, options.shiftKey, options.metaKey, + options.keyCode, options.charCode ); + $(element).dispatchEvent(oEvent); +}; + +Event.simulateKeys = function(element, command) { + for (var i=0; i
      ' + testName + '
      ' + + '' + + '' + + '
      StatusTestMessage
      '; + this.element.update(html); + + }, + + appendActionButtons: function(actions) { + actions = $H(actions); + if (!actions.any()) return; + var div = new Element("div", {className: 'action_buttons'}); + actions.inject(div, function(container, action) { + var button = new Element("input").setValue(action.key).observe("click", action.value); + button.type = "button"; + return container.insert(button); + }); + this.getMessageCell().insert(div); + }, + + _toHTML: function(txt) { + return txt.escapeHTML().replace(/\n/g,"
      "); + } +}); + +Test.Unit.Runner = Class.create({ + initialize: function(testcases) { + var options = this.options = Object.extend({ + testLog: 'testlog' + }, arguments[1] || {}); + + options.resultsURL = this.queryParams.resultsURL; + + this.tests = this.getTests(testcases); + this.currentTest = 0; + + Event.observe(window, "load", function() { + this.logger = new Test.Unit.Logger($(options.testLog)); + this.runTests.bind(this).delay(0.1); + }.bind(this)); + }, + + queryParams: window.location.search.parseQuery(), + + getTests: function(testcases) { + var tests, options = this.options; + if (this.queryParams.tests) tests = this.queryParams.tests.split(','); + else if (options.tests) tests = options.tests; + else if (options.test) tests = [option.test]; + else tests = Object.keys(testcases).grep(/^test/); + + return tests.map(function(test) { + if (testcases[test]) + return new Test.Unit.Testcase(test, testcases[test], testcases.setup, testcases.teardown); + }).compact(); + }, + + getResult: function() { + var results = { + tests: this.tests.length, + assertions: 0, + failures: 0, + errors: 0 + }; + + return this.tests.inject(results, function(results, test) { + results.assertions += test.assertions; + results.failures += test.failures; + results.errors += test.errors; + return results; + }); + }, + + postResults: function() { + if (this.options.resultsURL) { + new Ajax.Request(this.options.resultsURL, + { method: 'get', parameters: this.getResult(), asynchronous: false }); + } + }, + + runTests: function() { + var test = this.tests[this.currentTest], actions; + + if (!test) return this.finish(); + if (test.timerID > 0) test.timerID = -1; + if (!test.isWaiting) this.logger.start(test.name); + test.run(); + if (test.isWaiting) { + if (test.timeToWait) { + this.logger.message("Waiting for " + test.timeToWait + "ms"); + test.timerID = setTimeout(this.runTests.bind(this), test.timeToWait); + } else { + this.logger.message("Waiting for finish"); + } + test.runner = this; + return; + } + + this.logger.finish(test.status(), test.summary()); + if (actions = test.actions) this.logger.appendActionButtons(actions); + this.currentTest++; + // tail recursive, hopefully the browser will skip the stackframe + this.runTests(); + }, + + finish: function() { + this.postResults(); + this.logger.summary(this.summary()); + }, + + summary: function() { + return '#{tests} tests, #{assertions} assertions, #{failures} failures, #{errors} errors' + .interpolate(this.getResult()); + } +}); + +Test.Unit.MessageTemplate = Class.create({ + initialize: function(string) { + var parts = []; + (string || '').scan(/(?=[^\\])\?|(?:\\\?|[^\?])+/, function(part) { + parts.push(part[0]); + }); + this.parts = parts; + }, + + evaluate: function(params) { + return this.parts.map(function(part) { + return part == '?' ? Test.Unit.inspect(params.shift()) : part.replace(/\\\?/, '?'); + }).join(''); + } +}); + +Test.Unit.Assertions = { + buildMessage: function(message, template) { + var args = $A(arguments).slice(2); + return (message ? message + '\n' : '') + new Test.Unit.MessageTemplate(template).evaluate(args); + }, + + flunk: function(message) { + this.assertBlock(message || 'Flunked', function() { return false }); + }, + + assertBlock: function(message, block) { + try { + block.call(this) ? this.pass() : this.fail(message); + } catch(e) { this.error(e) } + }, + + assert: function(expression, message) { + message = this.buildMessage(message || 'assert', 'got ', expression); + this.assertBlock(message, function() { return expression }); + }, + + assertEqual: function(expected, actual, message) { + message = this.buildMessage(message || 'assertEqual', 'expected , actual: ', expected, actual); + this.assertBlock(message, function() { return expected == actual }); + }, + + assertNotEqual: function(expected, actual, message) { + message = this.buildMessage(message || 'assertNotEqual', 'expected , actual: ', expected, actual); + this.assertBlock(message, function() { return expected != actual }); + }, + + assertEnumEqual: function(expected, actual, message) { + expected = $A(expected); + actual = $A(actual); + message = this.buildMessage(message || 'assertEnumEqual', 'expected , actual: ', expected, actual); + this.assertBlock(message, function() { + return expected.length == actual.length && expected.zip(actual).all(function(pair) { return pair[0] == pair[1] }); + }); + }, + + assertEnumNotEqual: function(expected, actual, message) { + expected = $A(expected); + actual = $A(actual); + message = this.buildMessage(message || 'assertEnumNotEqual', ' was the same as ', expected, actual); + this.assertBlock(message, function() { + return expected.length != actual.length || expected.zip(actual).any(function(pair) { return pair[0] != pair[1] }); + }); + }, + + assertHashEqual: function(expected, actual, message) { + expected = $H(expected); + actual = $H(actual); + var expected_array = expected.toArray().sort(), actual_array = actual.toArray().sort(); + message = this.buildMessage(message || 'assertHashEqual', 'expected , actual: ', expected, actual); + // from now we recursively zip & compare nested arrays + var block = function() { + return expected_array.length == actual_array.length && + expected_array.zip(actual_array).all(function(pair) { + return pair.all(Object.isArray) ? + pair[0].zip(pair[1]).all(arguments.callee) : pair[0] == pair[1]; + }); + }; + this.assertBlock(message, block); + }, + + assertHashNotEqual: function(expected, actual, message) { + expected = $H(expected); + actual = $H(actual); + var expected_array = expected.toArray().sort(), actual_array = actual.toArray().sort(); + message = this.buildMessage(message || 'assertHashNotEqual', ' was the same as ', expected, actual); + // from now we recursively zip & compare nested arrays + var block = function() { + return !(expected_array.length == actual_array.length && + expected_array.zip(actual_array).all(function(pair) { + return pair.all(Object.isArray) ? + pair[0].zip(pair[1]).all(arguments.callee) : pair[0] == pair[1]; + })); + }; + this.assertBlock(message, block); + }, + + assertIdentical: function(expected, actual, message) { + message = this.buildMessage(message || 'assertIdentical', 'expected , actual: ', expected, actual); + this.assertBlock(message, function() { return expected === actual }); + }, + + assertNotIdentical: function(expected, actual, message) { + message = this.buildMessage(message || 'assertNotIdentical', 'expected , actual: ', expected, actual); + this.assertBlock(message, function() { return expected !== actual }); + }, + + assertNull: function(obj, message) { + message = this.buildMessage(message || 'assertNull', 'got ', obj); + this.assertBlock(message, function() { return obj === null }); + }, + + assertNotNull: function(obj, message) { + message = this.buildMessage(message || 'assertNotNull', 'got ', obj); + this.assertBlock(message, function() { return obj !== null }); + }, + + assertUndefined: function(obj, message) { + message = this.buildMessage(message || 'assertUndefined', 'got ', obj); + this.assertBlock(message, function() { return typeof obj == "undefined" }); + }, + + assertNotUndefined: function(obj, message) { + message = this.buildMessage(message || 'assertNotUndefined', 'got ', obj); + this.assertBlock(message, function() { return typeof obj != "undefined" }); + }, + + assertNullOrUndefined: function(obj, message) { + message = this.buildMessage(message || 'assertNullOrUndefined', 'got ', obj); + this.assertBlock(message, function() { return obj == null }); + }, + + assertNotNullOrUndefined: function(obj, message) { + message = this.buildMessage(message || 'assertNotNullOrUndefined', 'got ', obj); + this.assertBlock(message, function() { return obj != null }); + }, + + assertMatch: function(expected, actual, message) { + message = this.buildMessage(message || 'assertMatch', 'regex did not match ', expected, actual); + this.assertBlock(message, function() { return new RegExp(expected).exec(actual) }); + }, + + assertNoMatch: function(expected, actual, message) { + message = this.buildMessage(message || 'assertNoMatch', 'regex matched ', expected, actual); + this.assertBlock(message, function() { return !(new RegExp(expected).exec(actual)) }); + }, + + assertHidden: function(element, message) { + message = this.buildMessage(message || 'assertHidden', '? isn\'t hidden.', element); + this.assertBlock(message, function() { return element.style.display == 'none' }); + }, + + assertInstanceOf: function(expected, actual, message) { + message = this.buildMessage(message || 'assertInstanceOf', ' was not an instance of the expected type', actual); + this.assertBlock(message, function() { return actual instanceof expected }); + }, + + assertNotInstanceOf: function(expected, actual, message) { + message = this.buildMessage(message || 'assertNotInstanceOf', ' was an instance of the expected type', actual); + this.assertBlock(message, function() { return !(actual instanceof expected) }); + }, + + assertRespondsTo: function(method, obj, message) { + message = this.buildMessage(message || 'assertRespondsTo', 'object doesn\'t respond to ', method); + this.assertBlock(message, function() { return (method in obj && typeof obj[method] == 'function') }); + }, + + assertRaise: function(exceptionName, method, message) { + message = this.buildMessage(message || 'assertRaise', ' exception expected but none was raised', exceptionName); + var block = function() { + try { + method(); + return false; + } catch(e) { + if (e.name == exceptionName) return true; + else throw e; + } + }; + this.assertBlock(message, block); + }, + + assertNothingRaised: function(method, message) { + try { + method(); + this.assert(true, "Expected nothing to be thrown"); + } catch(e) { + message = this.buildMessage(message || 'assertNothingRaised', ' was thrown when nothing was expected.', e); + this.flunk(message); + } + }, + + _isVisible: function(element) { + element = $(element); + if (!element.parentNode) return true; + this.assertNotNull(element); + if (element.style && Element.getStyle(element, 'display') == 'none') + return false; + + return arguments.callee.call(this, element.parentNode); + }, + + assertVisible: function(element, message) { + message = this.buildMessage(message, '? was not visible.', element); + this.assertBlock(message, function() { return this._isVisible(element) }); + }, + + assertNotVisible: function(element, message) { + message = this.buildMessage(message, '? was not hidden and didn\'t have a hidden parent either.', element); + this.assertBlock(message, function() { return !this._isVisible(element) }); + }, + + assertElementsMatch: function() { + var pass = true, expressions = $A(arguments), elements = $A(expressions.shift()); + if (elements.length != expressions.length) { + message = this.buildMessage('assertElementsMatch', 'size mismatch: ? elements, ? expressions (?).', elements.length, expressions.length, expressions); + this.flunk(message); + pass = false; + } + elements.zip(expressions).all(function(pair, index) { + var element = $(pair.first()), expression = pair.last(); + if (element.match(expression)) return true; + message = this.buildMessage('assertElementsMatch', 'In index : expected but got ?', index, expression, element); + this.flunk(message); + pass = false; + }.bind(this)) + + if (pass) this.assert(true, "Expected all elements to match."); + }, + + assertElementMatches: function(element, expression, message) { + this.assertElementsMatch([element], expression); + } +}; + +Test.Unit.Testcase = Class.create(Test.Unit.Assertions, { + initialize: function(name, test, setup, teardown) { + this.name = name; + this.test = test || Prototype.emptyFunction; + this.setup = setup || Prototype.emptyFunction; + this.teardown = teardown || Prototype.emptyFunction; + this.messages = []; + this.actions = {}; + }, + + isWaiting: false, + timeToWait: null, + timerID: -1, + runner: null, + assertions: 0, + failures: 0, + errors: 0, + isRunningFromRake: window.location.port == 4711, + + wait: function(time, nextPart) { + this.isWaiting = true; + this.test = nextPart; + this.timeToWait = time; + }, + + waitForFinish: function() { + this.isWaiting = true; + }, + + finish: function() { + if (this.timerID > 0) { + clearTimeout(this.timerID); + this.timerID = -1; + this.timeToWait = null; + } + this.test = function(){}; + // continue test + if (this.runner) + this.runner.runTests(); + }, + + run: function(rethrow) { + try { + try { + if (!this.isWaiting) this.setup(); + this.isWaiting = false; + this.test(); + } finally { + if (!this.isWaiting) { + this.teardown(); + } + } + } + catch(e) { + if (rethrow) throw e; + this.error(e, this); + } + }, + + summary: function() { + var msg = '#{assertions} assertions, #{failures} failures, #{errors} errors\n'; + return msg.interpolate(this) + this.messages.join("\n"); + }, + + pass: function() { + this.assertions++; + }, + + fail: function(message) { + this.failures++; + var line = ""; + try { + throw new Error("stack"); + } catch(e){ + match = /.*\/(.*_test\.js):(\d+)/.exec(e.stack || '') || ['','','']; + file = match[1]; + line = match[2]; + } + this.messages.push("Failure: " + message + (line ? " " + file + ": Line #" + line : "")); + }, + + info: function(message) { + this.messages.push("Info: " + message); + }, + + error: function(error, test) { + this.errors++; + this.actions['retry with throw'] = function() { test.run(true) }; + this.messages.push(error.name + ": "+ error.message + "(" + Test.Unit.inspect(error) + ")"); + }, + + status: function() { + if (this.failures > 0) return 'failed'; + if (this.errors > 0) return 'error'; + return 'passed'; + }, + + benchmark: function(operation, iterations) { + var startAt = new Date(); + (iterations || 1).times(operation); + var timeTaken = ((new Date())-startAt); + this.info((arguments[2] || 'Operation') + ' finished ' + + iterations + ' iterations in ' + (timeTaken/1000)+'s' ); + return timeTaken; + } +}); + +if ( parent.SimpleTest && parent.runAJAXTest ) (function(){ + var finish = Test.Unit.Logger.prototype.finish; + Test.Unit.Logger.prototype.finish = function(status,summary){ + parent.SimpleTest.ok( status == "passed", `${this.testName}: ${summary}` ); + return finish.apply( this, arguments ); + }; + + // Intentionally overwrite (to stop the Ajax request) + Test.Unit.Runner.prototype.postResults = parent.runAJAXTest; +})(); + + diff --git a/dom/tests/mochitest/ajax/prototype/test/test.css b/dom/tests/mochitest/ajax/prototype/test/test.css new file mode 100644 index 0000000000..6fe8f51c9b --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/test.css @@ -0,0 +1,50 @@ +body, div, p, h1, h2, h3, ul, ol, span, a, table, td, form, img, li { + font-family: sans-serif; +} + +body { + font-size:0.8em; +} + +#log { + padding-bottom: 1em; + border-bottom: 2px solid #000; + margin-bottom: 2em; +} + +.logsummary { + margin-top: 1em; + margin-bottom: 1em; + padding: 1ex; + border: 1px solid #000; + font-weight: bold; +} + +.logtable { + width:100%; + border-collapse: collapse; + border: 1px dotted #666; +} + +.logtable td, .logtable th { + text-align: left; + padding: 3px 8px; + border: 1px dotted #666; +} + +.logtable .passed { + background-color: #cfc; +} + +.logtable .failed, .logtable .error { + background-color: #fcc; +} + +.logtable td div.action_buttons { + display: inline; +} + +.logtable td div.action_buttons input { + margin: 0 5px; + font-size: 10px; +} \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/ajax_test.js b/dom/tests/mochitest/ajax/prototype/test/unit/ajax_test.js new file mode 100644 index 0000000000..9ceb985186 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/ajax_test.js @@ -0,0 +1,286 @@ +var extendDefault = function(options) { + return Object.extend({ + asynchronous: false, + method: 'get', + onException: function(request, e) { throw e } + }, options); +}; + +new Test.Unit.Runner({ + setup: function() { + $('content').update(''); + $('content2').update(''); + }, + + teardown: function() { + // hack to cleanup responders + Ajax.Responders.responders = [Ajax.Responders.responders[0]]; + }, + + testSynchronousRequest: function() { + this.assertEqual("", $("content").innerHTML); + + this.assertEqual(0, Ajax.activeRequestCount); + new Ajax.Request("../fixtures/hello.js", extendDefault({ + asynchronous: false, + method: 'GET', + evalJS: 'force' + })); + this.assertEqual(0, Ajax.activeRequestCount); + + var h2 = $("content").firstChild; + this.assertEqual("Hello world!", h2.innerHTML); + }, + + testUpdaterOptions: function() { + var options = { + method: 'get', + asynchronous: false, + evalJS: 'force', + onComplete: Prototype.emptyFunction + } + var request = new Ajax.Updater("content", "../fixtures/hello.js", options); + request.options.onComplete = function() {}; + this.assertIdentical(Prototype.emptyFunction, options.onComplete); + }, + + testEvalResponseShouldBeCalledBeforeOnComplete: function() { + if (this.isRunningFromRake) { + this.assertEqual("", $("content").innerHTML); + + this.assertEqual(0, Ajax.activeRequestCount); + new Ajax.Request("../fixtures/hello.js", extendDefault({ + onComplete: function(response) { this.assertNotEqual("", $("content").innerHTML) }.bind(this) + })); + this.assertEqual(0, Ajax.activeRequestCount); + + var h2 = $("content").firstChild; + this.assertEqual("Hello world!", h2.innerHTML); + } else { + this.info(message); + } + }, + + testContentTypeSetForSimulatedVerbs: function() { + if (this.isRunningFromRake) { + new Ajax.Request('/inspect', extendDefault({ + method: 'put', + contentType: 'application/bogus', + onComplete: function(response) { + this.assertEqual('application/bogus; charset=UTF-8', response.responseJSON.headers['content-type']); + }.bind(this) + })); + } else { + this.info(message); + } + }, + + testOnCreateCallback: function() { + new Ajax.Request("../fixtures/content.html", extendDefault({ + onCreate: function(transport) { this.assertEqual(0, transport.readyState) }.bind(this), + onComplete: function(transport) { this.assertNotEqual(0, transport.readyState) }.bind(this) + })); + }, + + testEvalJS: function() { + if (this.isRunningFromRake) { + + $('content').update(); + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.js, + onComplete: function(transport) { + var h2 = $("content").firstChild; + this.assertEqual("Hello world!", h2.innerHTML); + }.bind(this) + })); + + $('content').update(); + new Ajax.Request("/response", extendDefault({ + evalJS: false, + parameters: Fixtures.js, + onComplete: function(transport) { + this.assertEqual("", $("content").innerHTML); + }.bind(this) + })); + } else { + this.info(message); + } + + $('content').update(); + new Ajax.Request("../fixtures/hello.js", extendDefault({ + evalJS: 'force', + onComplete: function(transport) { + var h2 = $("content").firstChild; + this.assertEqual("Hello world!", h2.innerHTML); + }.bind(this) + })); + }, + + testCallbacks: function() { + var options = extendDefault({ + onCreate: function(transport) { this.assertInstanceOf(Ajax.Response, transport) }.bind(this) + }); + + Ajax.Request.Events.each(function(state){ + options['on' + state] = options.onCreate; + }); + + new Ajax.Request("../fixtures/content.html", options); + }, + + testResponseText: function() { + new Ajax.Request("../fixtures/empty.html", extendDefault({ + onComplete: function(transport) { this.assertEqual('', transport.responseText) }.bind(this) + })); + + new Ajax.Request("../fixtures/content.html", extendDefault({ + onComplete: function(transport) { this.assertEqual(sentence, transport.responseText.toLowerCase()) }.bind(this) + })); + }, + + testResponseXML: function() { + if (this.isRunningFromRake) { + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.xml, + onComplete: function(transport) { + this.assertEqual('foo', transport.responseXML.getElementsByTagName('name')[0].getAttribute('attr')) + }.bind(this) + })); + } else { + this.info(message); + } + }, + + testResponseJSON: function() { + if (this.isRunningFromRake) { + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.json, + onComplete: function(transport) { this.assertEqual(123, transport.responseJSON.test) }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + parameters: { + 'Content-Length': 0, + 'Content-Type': 'application/json' + }, + onComplete: function(transport) { this.assertNull(transport.responseJSON) }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + evalJSON: false, + parameters: Fixtures.json, + onComplete: function(transport) { this.assertNull(transport.responseJSON) }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.jsonWithoutContentType, + onComplete: function(transport) { this.assertNull(transport.responseJSON) }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + sanitizeJSON: true, + parameters: Fixtures.invalidJson, + onException: function(request, error) { + this.assert(error.message.include('Badly formed JSON string')); + this.assertInstanceOf(Ajax.Request, request); + }.bind(this) + })); + } else { + this.info(message); + } + + new Ajax.Request("../fixtures/data.json", extendDefault({ + evalJSON: 'force', + onComplete: function(transport) { this.assertEqual(123, transport.responseJSON.test) }.bind(this) + })); + }, + + testHeaderJSON: function() { + if (this.isRunningFromRake) { + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.headerJson, + onComplete: function(transport, json) { + this.assertEqual('hello #éà', transport.headerJSON.test); + this.assertEqual('hello #éà', json.test); + }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + onComplete: function(transport, json) { + this.assertNull(transport.headerJSON) + this.assertNull(json) + }.bind(this) + })); + } else { + this.info(message); + } + }, + + testGetHeader: function() { + if (this.isRunningFromRake) { + new Ajax.Request("/response", extendDefault({ + parameters: { 'X-TEST': 'some value' }, + onComplete: function(transport) { + this.assertEqual('some value', transport.getHeader('X-Test')); + this.assertNull(transport.getHeader('X-Inexistant')); + }.bind(this) + })); + } else { + this.info(message); + } + }, + + testParametersCanBeHash: function() { + if (this.isRunningFromRake) { + new Ajax.Request("/response", extendDefault({ + parameters: $H({ "one": "two", "three": "four" }), + onComplete: function(transport) { + this.assertEqual("two", transport.getHeader("one")); + this.assertEqual("four", transport.getHeader("three")); + this.assertNull(transport.getHeader("toObject")); + }.bind(this) + })); + } else { + this.info(message); + } + }, + + testIsSameOriginMethod: function() { + var isSameOrigin = Ajax.Request.prototype.isSameOrigin; + this.assert(isSameOrigin.call({ url: '/foo/bar.html' }), '/foo/bar.html'); + this.assert(isSameOrigin.call({ url: window.location.toString() }), window.location); + this.assert(!isSameOrigin.call({ url: 'http://example.com' }), 'http://example.com'); + + if (this.isRunningFromRake) { + Ajax.Request.prototype.isSameOrigin = function() { + return false + }; + + $("content").update('same origin policy'); + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.js, + onComplete: function(transport) { + this.assertEqual("same origin policy", $("content").innerHTML); + }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + parameters: Fixtures.invalidJson, + onException: function(request, error) { + this.assert(error.message.include('Badly formed JSON string')); + }.bind(this) + })); + + new Ajax.Request("/response", extendDefault({ + parameters: { 'X-JSON': '{});window.attacked = true;({}' }, + onException: function(request, error) { + this.assert(error.message.include('Badly formed JSON string')); + }.bind(this) + })); + + Ajax.Request.prototype.isSameOrigin = isSameOrigin; + } else { + this.info(message); + } + } +}); diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/array_test.js b/dom/tests/mochitest/ajax/prototype/test/unit/array_test.js new file mode 100644 index 0000000000..c3f9d41147 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/array_test.js @@ -0,0 +1,190 @@ +var globalArgsTest = 'nothing to see here'; + +new Test.Unit.Runner({ + test$A: function(){ + this.assertEnumEqual([], $A({})); + }, + + testToArrayOnArguments: function(){ + function toArrayOnArguments(){ + globalArgsTest = $A(arguments); + } + toArrayOnArguments(); + this.assertEnumEqual([], globalArgsTest); + toArrayOnArguments('foo'); + this.assertEnumEqual(['foo'], globalArgsTest); + toArrayOnArguments('foo','bar'); + this.assertEnumEqual(['foo','bar'], globalArgsTest); + }, + + testToArrayOnNodeList: function(){ + // direct HTML + this.assertEqual(3, $A($('test_node').childNodes).length); + + // DOM + var element = document.createElement('div'); + element.appendChild(document.createTextNode('22')); + (2).times(function(){ element.appendChild(document.createElement('span')) }); + this.assertEqual(3, $A(element.childNodes).length); + + // HTML String + element = document.createElement('div'); + $(element).update('22 3); + }, + + + testBindAsEventListener: function() { + for ( var i = 0; i < 10; ++i ) { + var div = document.createElement('div'); + div.setAttribute('id','test-'+i); + document.body.appendChild(div); + var tobj = new TestObj(); + var eventTest = { test: true }; + var call = tobj.assertingEventHandler.bindAsEventListener(tobj, + this.assertEqual.bind(this, eventTest), + this.assertEqual.bind(this, arg1), + this.assertEqual.bind(this, arg2), + this.assertEqual.bind(this, arg3), arg1, arg2, arg3 ); + call(eventTest); + } + }, + + testDateToJSON: function() { + this.assertEqual('\"1970-01-01T00:00:00Z\"', new Date(Date.UTC(1970, 0, 1)).toJSON()); + }, + + testRegExpEscape: function() { + this.assertEqual('word', RegExp.escape('word')); + this.assertEqual('\\/slashes\\/', RegExp.escape('/slashes/')); + this.assertEqual('\\\\backslashes\\\\', RegExp.escape('\\backslashes\\')); + this.assertEqual('\\\\border of word', RegExp.escape('\\border of word')); + + this.assertEqual('\\(\\?\\:non-capturing\\)', RegExp.escape('(?:non-capturing)')); + this.assertEqual('non-capturing', new RegExp(RegExp.escape('(?:') + '([^)]+)').exec('(?:non-capturing)')[1]); + + this.assertEqual('\\(\\?\\=positive-lookahead\\)', RegExp.escape('(?=positive-lookahead)')); + this.assertEqual('positive-lookahead', new RegExp(RegExp.escape('(?=') + '([^)]+)').exec('(?=positive-lookahead)')[1]); + + this.assertEqual('\\(\\?<\\=positive-lookbehind\\)', RegExp.escape('(?<=positive-lookbehind)')); + this.assertEqual('positive-lookbehind', new RegExp(RegExp.escape('(?<=') + '([^)]+)').exec('(?<=positive-lookbehind)')[1]); + + this.assertEqual('\\(\\?\\!negative-lookahead\\)', RegExp.escape('(?!negative-lookahead)')); + this.assertEqual('negative-lookahead', new RegExp(RegExp.escape('(?!') + '([^)]+)').exec('(?!negative-lookahead)')[1]); + + this.assertEqual('\\(\\?<\\!negative-lookbehind\\)', RegExp.escape('(?', new RegExp(RegExp.escape('
      ')).exec('
      ')[0]); + + this.assertEqual('false', RegExp.escape(false)); + this.assertEqual('undefined', RegExp.escape()); + this.assertEqual('null', RegExp.escape(null)); + this.assertEqual('42', RegExp.escape(42)); + + this.assertEqual('\\\\n\\\\r\\\\t', RegExp.escape('\\n\\r\\t')); + this.assertEqual('\n\r\t', RegExp.escape('\n\r\t')); + this.assertEqual('\\{5,2\\}', RegExp.escape('{5,2}')); + + this.assertEqual( + '\\/\\(\\[\\.\\*\\+\\?\\^\\=\\!\\:\\$\\{\\}\\(\\)\\|\\[\\\\\\]\\\\\\\/\\\\\\\\\\]\\)\\/g', + RegExp.escape('/([.*+?^=!:${}()|[\\]\\/\\\\])/g') + ); + }, + + testBrowserDetection: function() { + var results = $H(Prototype.Browser).map(function(engine){ + return engine; + }).partition(function(engine){ + return engine[1] === true + }); + var trues = results[0], falses = results[1]; + + this.info('User agent string is: ' + navigator.userAgent); + + this.assert(trues.size() == 0 || trues.size() == 1, + 'There should be only one or no browser detected.'); + + // we should have definite trues or falses here + trues.each(function(result) { + this.assert(result[1] === true); + }, this); + falses.each(function(result) { + this.assert(result[1] === false); + }, this); + + if (navigator.userAgent.indexOf('AppleWebKit/') > -1) { + this.info('Running on WebKit'); + this.assert(Prototype.Browser.WebKit); + } + + if (!!window.opera) { + this.info('Running on Opera'); + this.assert(Prototype.Browser.Opera); + } + + if (!!(window.attachEvent && !window.opera)) { + this.info('Running on IE'); + this.assert(Prototype.Browser.IE); + } + + if (navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1) { + this.info('Running on Gecko'); + this.assert(Prototype.Browser.Gecko); + } + }, + + testClassCreate: function() { + this.assert(Object.isFunction(Animal), 'Animal is not a constructor'); + this.assertEnumEqual([Cat, Mouse, Dog, Ox], Animal.subclasses); + Animal.subclasses.each(function(subclass) { + this.assertEqual(Animal, subclass.superclass); + }, this); + + var Bird = Class.create(Animal); + this.assertEqual(Bird, Animal.subclasses.last()); + // for..in loop (for some reason) doesn't iterate over the constructor property in top-level classes + this.assertEnumEqual(Object.keys(new Animal).sort(), Object.keys(new Bird).without('constructor').sort()); + }, + + testClassInstantiation: function() { + var pet = new Animal("Nibbles"); + this.assertEqual("Nibbles", pet.name, "property not initialized"); + this.assertEqual('Nibbles: Hi!', pet.say('Hi!')); + this.assertEqual(Animal, pet.constructor, "bad constructor reference"); + this.assertUndefined(pet.superclass); + + var Empty = Class.create(); + this.assert('object', typeof new Empty); + }, + + testInheritance: function() { + var tom = new Cat('Tom'); + this.assertEqual(Cat, tom.constructor, "bad constructor reference"); + this.assertEqual(Animal, tom.constructor.superclass, 'bad superclass reference'); + this.assertEqual('Tom', tom.name); + this.assertEqual('Tom: meow', tom.say('meow')); + this.assertEqual('Tom: Yuk! I only eat mice.', tom.eat(new Animal)); + }, + + testSuperclassMethodCall: function() { + var tom = new Cat('Tom'); + this.assertEqual('Tom: Yum!', tom.eat(new Mouse)); + + // augment the constructor and test + var Dodo = Class.create(Animal, { + initialize: function($super, name) { + $super(name); + this.extinct = true; + }, + + say: function($super, message) { + return $super(message) + " honk honk"; + } + }); + + var gonzo = new Dodo('Gonzo'); + this.assertEqual('Gonzo', gonzo.name); + this.assert(gonzo.extinct, 'Dodo birds should be extinct'); + this.assertEqual("Gonzo: hello honk honk", gonzo.say("hello")); + }, + + testClassAddMethods: function() { + var tom = new Cat('Tom'); + var jerry = new Mouse('Jerry'); + + Animal.addMethods({ + sleep: function() { + return this.say('ZZZ'); + } + }); + + Mouse.addMethods({ + sleep: function($super) { + return $super() + " ... no, can't sleep! Gotta steal cheese!"; + }, + escape: function(cat) { + return this.say('(from a mousehole) Take that, ' + cat.name + '!'); + } + }); + + this.assertEqual('Tom: ZZZ', tom.sleep(), "added instance method not available to subclass"); + this.assertEqual("Jerry: ZZZ ... no, can't sleep! Gotta steal cheese!", jerry.sleep()); + this.assertEqual("Jerry: (from a mousehole) Take that, Tom!", jerry.escape(tom)); + // insure that a method has not propagated *up* the prototype chain: + this.assertUndefined(tom.escape); + this.assertUndefined(new Animal().escape); + + Animal.addMethods({ + sleep: function() { + return this.say('zZzZ'); + } + }); + + this.assertEqual("Jerry: zZzZ ... no, can't sleep! Gotta steal cheese!", jerry.sleep()); + }, + + testBaseClassWithMixin: function() { + var grass = new Plant('grass', 3); + this.assertRespondsTo('getValue', grass); + this.assertEqual('#', grass.inspect()); + }, + + testSubclassWithMixin: function() { + var snoopy = new Dog('Snoopy', 12, 'male'); + this.assertRespondsTo('reproduce', snoopy); + }, + + testSubclassWithMixins: function() { + var cow = new Ox('cow', 400, 'female'); + this.assertEqual('#', cow.inspect()); + this.assertRespondsTo('reproduce', cow); + this.assertRespondsTo('getValue', cow); + }, + + testClassWithToStringAndValueOfMethods: function() { + var Foo = Class.create({ + toString: function() { return "toString" }, + valueOf: function() { return "valueOf" } + }); + + var Parent = Class.create({ + m1: function(){ return 'm1' }, + m2: function(){ return 'm2' } + }); + var Child = Class.create(Parent, { + m1: function($super) { return 'm1 child' }, + m2: function($super) { return 'm2 child' } + }); + + this.assert(new Child().m1.toString().indexOf('m1 child') > -1); + + this.assertEqual("toString", new Foo().toString()); + this.assertEqual("valueOf", new Foo().valueOf()); + } +}); \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/dom_test.js b/dom/tests/mochitest/ajax/prototype/test/unit/dom_test.js new file mode 100644 index 0000000000..ebb3b383ec --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/dom_test.js @@ -0,0 +1,1404 @@ +var getInnerHTML = function(id) { + return $(id).innerHTML.toString().toLowerCase().gsub(/[\r\n\t]/, ''); +}; +var createParagraph = function(text) { + var p = document.createElement('p'); + p.appendChild(document.createTextNode(text)); + return p; +} + +new Test.Unit.Runner({ + setup: function() { + if (documentViewportProperties) return; + // Based on properties check from http://www.quirksmode.org/viewport/compatibility.html + documentViewportProperties = { + properties : [ + 'self.pageXOffset', 'self.pageYOffset', + 'self.screenX', 'self.screenY', + 'self.innerHeight', 'self.innerWidth', + 'self.outerHeight', 'self.outerWidth', + 'self.screen.height', 'self.screen.width', + 'self.screen.availHeight', 'self.screen.availWidth', + 'self.screen.availTop', 'self.screen.availLeft', + 'self.screen.Top', 'self.screen.Left', + 'self.screenTop', 'self.screenLeft', + 'document.body.clientHeight', 'document.body.clientWidth', + 'document.body.scrollHeight', 'document.body.scrollWidth', + 'document.body.scrollLeft', 'document.body.scrollTop', + 'document.body.offsetHeight', 'document.body.offsetWidth', + 'document.body.offsetTop', 'document.body.offsetLeft' + ].inject([], function(properties, prop) { + if (!self.screen && prop.include('self.screen')) return; + if (!document.body && prop.include('document.body')) return; + properties.push(prop); + if (prop.include('.body') && document.documentElement) + properties.push(prop.sub('.body', '.documentElement')); + return properties; + }), + + inspect : function() { + var props = []; + this.properties.each(function(prop) { + if (eval(prop)) props[prop] = eval(prop); + }, this); + return props; + } + }; + }, + + testDollarFunction: function() { + this.assertUndefined($()); + + this.assertNull(document.getElementById('noWayThisIDExists')); + this.assertNull($('noWayThisIDExists')); + + this.assertIdentical(document.getElementById('testdiv'), $('testdiv')); + this.assertEnumEqual([ $('testdiv'), $('container') ], $('testdiv', 'container')); + this.assertEnumEqual([ $('testdiv'), undefined, $('container') ], + $('testdiv', 'noWayThisIDExists', 'container')); + var elt = $('testdiv'); + this.assertIdentical(elt, $(elt)); + this.assertRespondsTo('hide', elt); + this.assertRespondsTo('childOf', elt); + }, + + testGetElementsByClassName: function() { + if (document.getElementsByClassName.toString().include('[native code]')) { + this.info("browser uses native getElementsByClassName; skipping tests"); + return; + } + + + var div = $('class_names'), list = $('class_names_ul'); + + this.assertElementsMatch(document.getElementsByClassName('A'), 'p.A', 'ul#class_names_ul.A', 'li.A.C'); + + if (Prototype.Browser.IE) + this.assertUndefined(document.getElementById('unextended').show); + + this.assertElementsMatch(div.getElementsByClassName('B'), 'ul#class_names_ul.A.B', 'div.B.C.D'); + this.assertElementsMatch(div.getElementsByClassName('D C B'), 'div.B.C.D'); + this.assertElementsMatch(div.getElementsByClassName(' D\nC\tB '), 'div.B.C.D'); + this.assertElementsMatch(div.getElementsByClassName($w('D C B'))); + this.assertElementsMatch(list.getElementsByClassName('A'), 'li.A.C'); + this.assertElementsMatch(list.getElementsByClassName(' A '), 'li.A.C'); + this.assertElementsMatch(list.getElementsByClassName('C A'), 'li.A.C'); + this.assertElementsMatch(list.getElementsByClassName("C\nA "), 'li.A.C'); + this.assertElementsMatch(list.getElementsByClassName('B')); + this.assertElementsMatch(list.getElementsByClassName('1'), 'li.1'); + this.assertElementsMatch(list.getElementsByClassName([1]), 'li.1'); + this.assertElementsMatch(list.getElementsByClassName(['1 junk'])); + this.assertElementsMatch(list.getElementsByClassName('')); + this.assertElementsMatch(list.getElementsByClassName(' ')); + this.assertElementsMatch(list.getElementsByClassName([''])); + this.assertElementsMatch(list.getElementsByClassName([' ', ''])); + this.assertElementsMatch(list.getElementsByClassName({})); + + // those lookups shouldn't have extended all nodes in document + if (Prototype.Browser.IE) this.assertUndefined(document.getElementById('unextended')['show']); + }, + + testElementInsertWithHTML: function() { + Element.insert('insertions-main', {before:'

      before text

      more testing

      '}); + this.assert(getInnerHTML('insertions-container').startsWith('

      before text

      more testing

      ')); + Element.insert('insertions-main', {after:'

      after text

      more testing

      '}); + this.assert(getInnerHTML('insertions-container').endsWith('

      after text

      more testing

      ')); + Element.insert('insertions-main', {top:'

      top text.

      more testing

      '}); + this.assert(getInnerHTML('insertions-main').startsWith('

      top text.

      more testing

      ')); + Element.insert('insertions-main', {bottom:'

      bottom text.

      more testing

      '}); + this.assert(getInnerHTML('insertions-main').endsWith('

      bottom text.

      more testing

      ')); + }, + + testElementInsertWithDOMNode: function() { + Element.insert('insertions-node-main', {before: createParagraph('node before')}); + this.assert(getInnerHTML('insertions-node-container').startsWith('

      node before

      ')); + Element.insert('insertions-node-main', {after: createParagraph('node after')}); + this.assert(getInnerHTML('insertions-node-container').endsWith('

      node after

      ')); + Element.insert('insertions-node-main', {top:createParagraph('node top')}); + this.assert(getInnerHTML('insertions-node-main').startsWith('

      node top

      ')); + Element.insert('insertions-node-main', {bottom:createParagraph('node bottom')}); + this.assert(getInnerHTML('insertions-node-main').endsWith('

      node bottom

      ')); + this.assertEqual($('insertions-node-main'), $('insertions-node-main').insert(document.createElement('p'))); + }, + + testElementInsertWithToElementMethod: function() { + Element.insert('insertions-node-main', {toElement: createParagraph.curry('toElement') }); + this.assert(getInnerHTML('insertions-node-main').endsWith('

      toelement

      ')); + Element.insert('insertions-node-main', {bottom: {toElement: createParagraph.curry('bottom toElement') }}); + this.assert(getInnerHTML('insertions-node-main').endsWith('

      bottom toelement

      ')); + }, + + testElementInsertWithToHTMLMethod: function() { + Element.insert('insertions-node-main', {toHTML: function() { return '

      toHTML

      '} }); + this.assert(getInnerHTML('insertions-node-main').endsWith('

      tohtml

      ')); + Element.insert('insertions-node-main', {bottom: {toHTML: function() { return '

      bottom toHTML

      '} }}); + this.assert(getInnerHTML('insertions-node-main').endsWith('

      bottom tohtml

      ')); + }, + + testElementInsertWithNonString: function() { + Element.insert('insertions-main', {bottom:3}); + this.assert(getInnerHTML('insertions-main').endsWith('3')); + }, + + testElementInsertInTables: function() { + Element.insert('second_row', {after:'Third Row'}); + this.assert($('second_row').descendantOf('table')); + + $('a_cell').insert({top:'hello world'}); + this.assert($('a_cell').innerHTML.startsWith('hello world')); + $('a_cell').insert({after:'hi planet'}); + this.assertEqual('hi planet', $('a_cell').next().innerHTML); + $('table_for_insertions').insert('a cell!'); + this.assert($('table_for_insertions').innerHTML.gsub('\r\n', '').toLowerCase().include('a cell!')); + $('row_1').insert({after:'last'}); + this.assertEqual('last', $A($('table_for_row_insertions').getElementsByTagName('tr')).last().lastChild.innerHTML); + }, + + testElementInsertInSelect: function() { + var selectTop = $('select_for_insert_top'), selectBottom = $('select_for_insert_bottom'); + selectBottom.insert(''); + this.assertEqual('option 45', selectBottom.getValue()); + selectTop.insert({top:''}); + this.assertEqual(4, selectTop.options.length); + }, + + testElementMethodInsert: function() { + $('element-insertions-main').insert({before:'some text before'}); + this.assert(getInnerHTML('element-insertions-container').startsWith('some text before')); + $('element-insertions-main').insert({after:'some text after'}); + this.assert(getInnerHTML('element-insertions-container').endsWith('some text after')); + $('element-insertions-main').insert({top:'some text top'}); + this.assert(getInnerHTML('element-insertions-main').startsWith('some text top')); + $('element-insertions-main').insert({bottom:'some text bottom'}); + this.assert(getInnerHTML('element-insertions-main').endsWith('some text bottom')); + + $('element-insertions-main').insert('some more text at the bottom'); + this.assert(getInnerHTML('element-insertions-main').endsWith('some more text at the bottom')); + + $('element-insertions-main').insert({TOP:'some text uppercase top'}); + this.assert(getInnerHTML('element-insertions-main').startsWith('some text uppercase top')); + + $('element-insertions-multiple-main').insert({ + top:'1', bottom:2, before: new Element('p').update('3'), after:'4' + }); + this.assert(getInnerHTML('element-insertions-multiple-main').startsWith('1')); + this.assert(getInnerHTML('element-insertions-multiple-main').endsWith('2')); + this.assert(getInnerHTML('element-insertions-multiple-container').startsWith('

      3

      ')); + this.assert(getInnerHTML('element-insertions-multiple-container').endsWith('4')); + + $('element-insertions-main').update('test'); + $('element-insertions-main').insert(null); + $('element-insertions-main').insert({bottom:null}); + this.assertEqual('test', getInnerHTML('element-insertions-main')); + $('element-insertions-main').insert(1337); + this.assertEqual('test1337', getInnerHTML('element-insertions-main')); + }, + + testNewElementInsert: function() { + var container = new Element('div'); + element = new Element('div'); + container.insert(element); + + element.insert({ before: '

      a paragraph

      ' }); + this.assertEqual('

      a paragraph

      ', getInnerHTML(container)); + element.insert({ after: 'some text' }); + this.assertEqual('

      a paragraph

      some text', getInnerHTML(container)); + + element.insert({ top: '

      a paragraph

      ' }); + this.assertEqual('

      a paragraph

      ', getInnerHTML(element)); + element.insert('some text'); + this.assertEqual('

      a paragraph

      some text', getInnerHTML(element)); + }, + + testInsertionBackwardsCompatibility: function() { + new Insertion.Before('element-insertions-main', 'some backward-compatibility testing before'); + this.assert(getInnerHTML('element-insertions-container').include('some backward-compatibility testing before')); + new Insertion.After('element-insertions-main', 'some backward-compatibility testing after'); + this.assert(getInnerHTML('element-insertions-container').include('some backward-compatibility testing after')); + new Insertion.Top('element-insertions-main', 'some backward-compatibility testing top'); + this.assert(getInnerHTML('element-insertions-main').startsWith('some backward-compatibility testing top')); + new Insertion.Bottom('element-insertions-main', 'some backward-compatibility testing bottom'); + this.assert(getInnerHTML('element-insertions-main').endsWith('some backward-compatibility testing bottom')); + }, + + testElementWrap: function() { + var element = $('wrap'), parent = document.createElement('div'); + element.wrap(); + this.assert(getInnerHTML('wrap-container').startsWith('
      \ntestVar="hello!";\n'); + this.assertEqual('hello from div!',$('testdiv').innerHTML); + this.wait(100,function(){ + this.assertEqual('hello!',testVar); + + Element.update('testdiv','another hello from div!\n + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Ajax

      + + + + +
      + + + +
      +
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/array_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/array_test.html new file mode 100644 index 0000000000..cc3b9ef629 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/array_test.html @@ -0,0 +1,39 @@ + + + + Prototype Unit test file | Array + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Array

      + + + + +
      + + + +
      22
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/base_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/base_test.html new file mode 100644 index 0000000000..bcd29f91df --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/base_test.html @@ -0,0 +1,45 @@ + + + + Prototype Unit test file | Base + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Base

      + + + + +
      + + + +
      +
        +
      • +
      • +
      • +
      + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/dom_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/dom_test.html new file mode 100644 index 0000000000..c1ffb7536f --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/dom_test.html @@ -0,0 +1,326 @@ + + + + Prototype Unit test file | Dom + + + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Dom

      + + + + +
      + + + +
      +

      Scroll test

      +
      + +
      visible
      + +
      visible
      + +
      visible
      + +
      visible
      + +
      + +
      + + + + + + + + + + + + +
      Data
      First Row
      Second Row
      +
      + +
      + + + + + + + + + + + + +
      Data
      First Row
      Second Row
      +
      + +

      Test paragraph outside of container

      + +
      +

      Test paragraph 1 inside of container

      +

      Test paragraph 2 inside of container

      +

      Test paragraph 3 inside of container

      +

      Test paragraph 4 inside of container

      +
      + +
      to be updated
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      + +

      some text

      some text

      + +
      V
      +
      H
      +
      S
      + +
      + +
      + +
      + + +
      +
      + + + + +
      +

      +
        +
      • +
      • +
      • +
      +
      +
      +
      + + +
      + +
      blah
      +blah +blah + +
      +
      +
      +
      + +
      test_csstext_1
      +
      test_csstext_2
      +
      test_csstext_3
      +
      test_csstext_4
      +
      test_csstext_5
      + +
      +
      +
      +
      + +
      + + + +
      + + + + + + + + + + + + +
      + + +

      + +
      + + + + + +
      + + + + + +
      AB
      C
      DEF
      + +
      +
      + +
      +
      + +
      NFN
      +
      NFI
      +
      NFS
      + +
      FI
      +
      FS
      + +op2 +op2 +op3 +op3 +
      +
      +
      +
      +
      +
      + + + + + + +
      Data
      + +
      + +
      + + +

      +

      + + +

      +

      content

      +
      +
      +
      +
      +
      +
      +
      +
      + +

      some content.

      +

      some content.

      +

      some content.

      +

      some content.

      +
      +
      +
      + + + +
      +

      + + +
      +
      +
      +
      testtest
      +
      XYZ
      +
      +
      + foo + bar +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      + + +
      + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/element_mixins_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/element_mixins_test.html new file mode 100644 index 0000000000..51a789e79b --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/element_mixins_test.html @@ -0,0 +1,43 @@ + + + + Prototype Unit test file | Element mixins + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Element mixins

      + + + + +
      + + + +
      + + +
      + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/enumerable_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/enumerable_test.html new file mode 100644 index 0000000000..8f462b6395 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/enumerable_test.html @@ -0,0 +1,48 @@ + + + + Prototype Unit test file | Enumerable + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Enumerable

      + + + + +
      + + + + + + + + + + +
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/event_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/event_test.html new file mode 100644 index 0000000000..12accf239f --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/event_test.html @@ -0,0 +1,42 @@ + + + + Prototype Unit test file | Event + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Event

      + + + + +
      + + + + +
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/form_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/form_test.html new file mode 100644 index 0000000000..14349eb511 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/form_test.html @@ -0,0 +1,150 @@ + + + + Prototype Unit test file | Form + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Form

      + + + + +
      + + + +
      + +
      This is not a form element
      + + + + +
      + +
      +
      + + + + + +
      + +
      + +
      div> + + +
      + + + + + +
      + + +
      + + + + +
      + + + +
      +
      + +
      + + + + + +
      This is not a form element
      + + + +
      +
      + + + +
      + +
      + + +
      +
      +

      + + +
      + +
      +

      + + + +
      + +
      +

      + + + +
      + +
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/hash_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/hash_test.html new file mode 100644 index 0000000000..4e4f0be75d --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/hash_test.html @@ -0,0 +1,40 @@ + + + + Prototype Unit test file | Hash + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Hash

      + + + + +
      + + + + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/number_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/number_test.html new file mode 100644 index 0000000000..85eed3191b --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/number_test.html @@ -0,0 +1,38 @@ + + + + Prototype Unit test file | Number + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Number

      + + + + +
      + + + + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/position_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/position_test.html new file mode 100644 index 0000000000..78ed551d0e --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/position_test.html @@ -0,0 +1,47 @@ + + + + Prototype Unit test file | Position + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Position

      + + + + +
      + + + +
      + +
      +
      +
      +
      testtest
      +
      +
      +
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/range_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/range_test.html new file mode 100644 index 0000000000..cbc6f828b6 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/range_test.html @@ -0,0 +1,38 @@ + + + + Prototype Unit test file | Range + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Range

      + + + + +
      + + + + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/selector_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/selector_test.html new file mode 100644 index 0000000000..84bde55e50 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/selector_test.html @@ -0,0 +1,107 @@ + + + + Prototype Unit test file | Selector + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Selector

      + + + + +
      + + + + + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/string_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/string_test.html new file mode 100644 index 0000000000..74564fc0ce --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/string_test.html @@ -0,0 +1,40 @@ + + + + Prototype Unit test file | String + + + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      String

      + + + + +
      + + + + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/tmp/unit_test.html b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/unit_test.html new file mode 100644 index 0000000000..b684225ba5 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/tmp/unit_test.html @@ -0,0 +1,56 @@ + + + + Prototype Unit test file | Unittest + + + + + + + + + + + + + +

      Prototype Unit test file

      +

      Unittest

      + + + + +
      + + + +
      + + +
      + +
      + + + +
      +
      + +
      • x1
      • x2
      +
      • x1
      • x2
      + +
      XXXX
      + +
      testcss1
      testcss1
      + + + + + diff --git a/dom/tests/mochitest/ajax/prototype/test/unit/unittest_test.js b/dom/tests/mochitest/ajax/prototype/test/unit/unittest_test.js new file mode 100644 index 0000000000..e7afdd60bf --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test/unit/unittest_test.js @@ -0,0 +1,143 @@ +var testObj = { + isNice: function() { + return true; + }, + isBroken: function() { + return false; + } +} + +new Test.Unit.Runner({ + + testBuildMessage: function() { + this.assertEqual("'foo' 'bar'", this.buildMessage('', '? ?', 'foo', 'bar')) + }, + + testAssertEqual: function() { + this.assertEqual(0, 0); + this.assertEqual(0, 0, "test"); + + this.assertEqual(0,'0'); + this.assertEqual(65.0, 65); + + this.assertEqual("a", "a"); + this.assertEqual("a", "a", "test"); + + this.assertNotEqual(0, 1); + this.assertNotEqual("a","b"); + this.assertNotEqual({},{}); + this.assertNotEqual([],[]); + this.assertNotEqual([],{}); + }, + + testAssertEnumEqual: function() { + this.assertEnumEqual([], []); + this.assertEnumEqual(['a', 'b'], ['a', 'b']); + this.assertEnumEqual(['1', '2'], [1, 2]); + this.assertEnumNotEqual(['1', '2'], [1, 2, 3]); + }, + + testAssertHashEqual: function() { + this.assertHashEqual({}, {}); + this.assertHashEqual({a:'b'}, {a:'b'}); + this.assertHashEqual({a:'b', c:'d'}, {c:'d', a:'b'}); + this.assertHashNotEqual({a:'b', c:'d'}, {c:'d', a:'boo!'}); + }, + + testAssertRespondsTo: function() { + this.assertRespondsTo('isNice', testObj); + this.assertRespondsTo('isBroken', testObj); + }, + + testAssertIdentical: function() { + this.assertIdentical(0, 0); + this.assertIdentical(0, 0, "test"); + this.assertIdentical(1, 1); + this.assertIdentical('a', 'a'); + this.assertIdentical('a', 'a', "test"); + this.assertIdentical('', ''); + this.assertIdentical(undefined, undefined); + this.assertIdentical(null, null); + this.assertIdentical(true, true); + this.assertIdentical(false, false); + + var obj = {a:'b'}; + this.assertIdentical(obj, obj); + + this.assertNotIdentical({1:2,3:4},{1:2,3:4}); + + this.assertIdentical(1, 1.0); // both are typeof == 'number' + + this.assertNotIdentical(1, '1'); + this.assertNotIdentical(1, '1.0'); + }, + + testAssertNullAndAssertUndefined: function() { + this.assertNull(null); + this.assertNotNull(undefined); + this.assertNotNull(0); + this.assertNotNull(''); + this.assertNotUndefined(null); + this.assertUndefined(undefined); + this.assertNotUndefined(0); + this.assertNotUndefined(''); + this.assertNullOrUndefined(null); + this.assertNullOrUndefined(undefined); + this.assertNotNullOrUndefined(0); + this.assertNotNullOrUndefined(''); + }, + + testAssertMatch: function() { + this.assertMatch(/knowmad.jpg$/, 'http://script.aculo.us/images/knowmad.jpg'); + this.assertMatch(/Fuc/, 'Thomas Fuchs'); + this.assertMatch(/^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$/, '$19.95'); + this.assertMatch(/(\d{3}\) ?)|(\d{3}[- \.])?\d{3}[- \.]\d{4}(\s(x\d+)?){0,1}$/, '704-343-9330'); + this.assertMatch(/^(?:(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29)))|(?:(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))))$/, '2001-06-16'); + this.assertMatch(/^((0?[123456789])|(1[012]))\s*:\s*([012345]\d)(\s*:\s*([012345]\d))?\s*[ap]m\s*-\s*((0?[123456789])|(1[012]))\s*:\s*([012345]\d)(\s*:\s*([012345]\d))?\s*[ap]m$/i, '2:00PM-2:15PM'); + this.assertNoMatch(/zubar/, 'foo bar'); + }, + + testAssertInstanceOf: function() { + this.assertInstanceOf(String, new String); + this.assertInstanceOf(RegExp, /foo/); + this.assertNotInstanceOf(String, {}); + }, + + testAssertVisible: function() { + this.assertVisible('testcss1'); + this.assertNotVisible('testcss1_span'); + //this.assertNotVisible('testcss2', "Due to a Safari bug, this test fails in Safari."); + + Element.hide('testcss1'); + this.assertNotVisible('testcss1'); + this.assertNotVisible('testcss1_span'); + Element.show('testcss1'); + this.assertVisible('testcss1'); + this.assertNotVisible('testcss1_span'); + + Element.show('testcss1_span'); + this.assertVisible('testcss1_span'); + Element.hide('testcss1'); + this.assertNotVisible('testcss1_span'); // hidden by parent + }, + + testAssertElementsMatch: function() { + this.assertElementsMatch($$('#tlist'), '#tlist'); + this.assertElementMatches($('tlist'), '#tlist'); + } +}); + +/* This test was disabled in bug 486256, because we don't support having two + * Runners in one file. + */ +/* +new Test.Unit.Runner({ + testDummy: function() { + this.assert(true); + }, + + testMultipleTestRunner: function() { + this.assertEqual('passed', $('testlog_2').down('td', 1).innerHTML); + } +}, {testLog: 'testlog_2'}); +*/ diff --git a/dom/tests/mochitest/ajax/prototype/test_Prototype.html b/dom/tests/mochitest/ajax/prototype/test_Prototype.html new file mode 100644 index 0000000000..a650949955 --- /dev/null +++ b/dom/tests/mochitest/ajax/prototype/test_Prototype.html @@ -0,0 +1,15 @@ + + + + Test for Prototype + + + + + + + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/lib/prototype.js b/dom/tests/mochitest/ajax/scriptaculous/lib/prototype.js new file mode 100644 index 0000000000..1beb8a89ab --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/lib/prototype.js @@ -0,0 +1,3271 @@ +/* Prototype JavaScript framework, version 1.5.1_rc4 + * (c) 2005-2007 Sam Stephenson + * + * Prototype is freely distributable under the terms of an MIT-style license. + * For details, see the Prototype web site: http://www.prototypejs.org/ + * +/*--------------------------------------------------------------------------*/ + +var Prototype = { + Version: '1.5.1_rc4', + + Browser: { + IE: !!(window.attachEvent && !window.opera), + Opera: !!window.opera, + WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1, + Gecko: navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1 + }, + + BrowserFeatures: { + XPath: !!document.evaluate, + ElementExtensions: !!window.HTMLElement, + SpecificElementExtensions: + (document.createElement('div').__proto__ !== + document.createElement('form').__proto__) + }, + + ScriptFragment: ']*>([\u0001-\uFFFF]*?)', + JSONFilter: /^\/\*-secure-\s*(.*)\s*\*\/\s*$/, + + emptyFunction: function() { }, + K: function(x) { return x } +} + +var Class = { + create: function() { + return function() { + this.initialize.apply(this, arguments); + } + } +} + +var Abstract = new Object(); + +Object.extend = function(destination, source) { + for (var property in source) { + destination[property] = source[property]; + } + return destination; +} + +Object.extend(Object, { + inspect: function(object) { + try { + if (object === undefined) return 'undefined'; + if (object === null) return 'null'; + return object.inspect ? object.inspect() : object.toString(); + } catch (e) { + if (e instanceof RangeError) return '...'; + throw e; + } + }, + + toJSON: function(object) { + var type = typeof object; + switch(type) { + case 'undefined': + case 'function': + case 'unknown': return; + case 'boolean': return object.toString(); + } + if (object === null) return 'null'; + if (object.toJSON) return object.toJSON(); + if (object.ownerDocument === document) return; + var results = []; + for (var property in object) { + var value = Object.toJSON(object[property]); + if (value !== undefined) + results.push(property.toJSON() + ': ' + value); + } + return '{' + results.join(', ') + '}'; + }, + + keys: function(object) { + var keys = []; + for (var property in object) + keys.push(property); + return keys; + }, + + values: function(object) { + var values = []; + for (var property in object) + values.push(object[property]); + return values; + }, + + clone: function(object) { + return Object.extend({}, object); + } +}); + +Function.prototype.bind = function() { + var __method = this, args = $A(arguments), object = args.shift(); + return function() { + return __method.apply(object, args.concat($A(arguments))); + } +} + +Function.prototype.bindAsEventListener = function(object) { + var __method = this, args = $A(arguments), object = args.shift(); + return function(event) { + return __method.apply(object, [( event || window.event)].concat(args).concat($A(arguments))); + } +} + +Object.extend(Number.prototype, { + toColorPart: function() { + return this.toPaddedString(2, 16); + }, + + succ: function() { + return this + 1; + }, + + times: function(iterator) { + $R(0, this, true).each(iterator); + return this; + }, + + toPaddedString: function(length, radix) { + var string = this.toString(radix || 10); + return '0'.times(length - string.length) + string; + }, + + toJSON: function() { + return isFinite(this) ? this.toString() : 'null'; + } +}); + +Date.prototype.toJSON = function() { + return '"' + this.getFullYear() + '-' + + (this.getMonth() + 1).toPaddedString(2) + '-' + + this.getDate().toPaddedString(2) + 'T' + + this.getHours().toPaddedString(2) + ':' + + this.getMinutes().toPaddedString(2) + ':' + + this.getSeconds().toPaddedString(2) + '"'; +}; + +var Try = { + these: function() { + var returnValue; + + for (var i = 0, length = arguments.length; i < length; i++) { + var lambda = arguments[i]; + try { + returnValue = lambda(); + break; + } catch (e) {} + } + + return returnValue; + } +} + +/*--------------------------------------------------------------------------*/ + +var PeriodicalExecuter = Class.create(); +PeriodicalExecuter.prototype = { + initialize: function(callback, frequency) { + this.callback = callback; + this.frequency = frequency; + this.currentlyExecuting = false; + + this.registerCallback(); + }, + + registerCallback: function() { + this.timer = setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + stop: function() { + if (!this.timer) return; + clearInterval(this.timer); + this.timer = null; + }, + + onTimerEvent: function() { + if (!this.currentlyExecuting) { + try { + this.currentlyExecuting = true; + this.callback(this); + } finally { + this.currentlyExecuting = false; + } + } + } +} +Object.extend(String, { + interpret: function(value) { + return value == null ? '' : String(value); + }, + specialChar: { + '\b': '\\b', + '\t': '\\t', + '\n': '\\n', + '\f': '\\f', + '\r': '\\r', + '\\': '\\\\' + } +}); + +Object.extend(String.prototype, { + gsub: function(pattern, replacement) { + var result = '', source = this, match; + replacement = arguments.callee.prepareReplacement(replacement); + + while (source.length > 0) { + if (match = source.match(pattern)) { + result += source.slice(0, match.index); + result += String.interpret(replacement(match)); + source = source.slice(match.index + match[0].length); + } else { + result += source, source = ''; + } + } + return result; + }, + + sub: function(pattern, replacement, count) { + replacement = this.gsub.prepareReplacement(replacement); + count = count === undefined ? 1 : count; + + return this.gsub(pattern, function(match) { + if (--count < 0) return match[0]; + return replacement(match); + }); + }, + + scan: function(pattern, iterator) { + this.gsub(pattern, iterator); + return this; + }, + + truncate: function(length, truncation) { + length = length || 30; + truncation = truncation === undefined ? '...' : truncation; + return this.length > length ? + this.slice(0, length - truncation.length) + truncation : this; + }, + + strip: function() { + return this.replace(/^\s+/, '').replace(/\s+$/, ''); + }, + + stripTags: function() { + return this.replace(/<\/?[^>]+>/gi, ''); + }, + + stripScripts: function() { + return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), ''); + }, + + extractScripts: function() { + var matchAll = new RegExp(Prototype.ScriptFragment, 'img'); + var matchOne = new RegExp(Prototype.ScriptFragment, 'im'); + return (this.match(matchAll) || []).map(function(scriptTag) { + return (scriptTag.match(matchOne) || ['', ''])[1]; + }); + }, + + evalScripts: function() { + return this.extractScripts().map(function(script) { return eval(script) }); + }, + + escapeHTML: function() { + var self = arguments.callee; + self.text.data = this; + return self.div.innerHTML; + }, + + unescapeHTML: function() { + var div = document.createElement('div'); + div.innerHTML = this.stripTags(); + return div.childNodes[0] ? (div.childNodes.length > 1 ? + $A(div.childNodes).inject('', function(memo, node) { return memo+node.nodeValue }) : + div.childNodes[0].nodeValue) : ''; + }, + + toQueryParams: function(separator) { + var match = this.strip().match(/([^?#]*)(#.*)?$/); + if (!match) return {}; + + return match[1].split(separator || '&').inject({}, function(hash, pair) { + if ((pair = pair.split('='))[0]) { + var key = decodeURIComponent(pair.shift()); + var value = pair.length > 1 ? pair.join('=') : pair[0]; + if (value != undefined) value = decodeURIComponent(value); + + if (key in hash) { + if (hash[key].constructor != Array) hash[key] = [hash[key]]; + hash[key].push(value); + } + else hash[key] = value; + } + return hash; + }); + }, + + toArray: function() { + return this.split(''); + }, + + succ: function() { + return this.slice(0, this.length - 1) + + String.fromCharCode(this.charCodeAt(this.length - 1) + 1); + }, + + times: function(count) { + var result = ''; + for (var i = 0; i < count; i++) result += this; + return result; + }, + + camelize: function() { + var parts = this.split('-'), len = parts.length; + if (len == 1) return parts[0]; + + var camelized = this.charAt(0) == '-' + ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1) + : parts[0]; + + for (var i = 1; i < len; i++) + camelized += parts[i].charAt(0).toUpperCase() + parts[i].substring(1); + + return camelized; + }, + + capitalize: function() { + return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase(); + }, + + underscore: function() { + return this.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase(); + }, + + dasherize: function() { + return this.gsub(/_/,'-'); + }, + + inspect: function(useDoubleQuotes) { + var escapedString = this.gsub(/[\x00-\x1f\\]/, function(match) { + var character = String.specialChar[match[0]]; + return character ? character : '\\u00' + match[0].charCodeAt().toPaddedString(2, 16); + }); + if (useDoubleQuotes) return '"' + escapedString.replace(/"/g, '\\"') + '"'; + return "'" + escapedString.replace(/'/g, '\\\'') + "'"; + }, + + toJSON: function() { + return this.inspect(true); + }, + + unfilterJSON: function(filter) { + return this.sub(filter || Prototype.JSONFilter, '#{1}'); + }, + + evalJSON: function(sanitize) { + var json = this.unfilterJSON(); + try { + if (!sanitize || (/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(json))) + return eval('(' + json + ')'); + } catch (e) { } + throw new SyntaxError('Badly formed JSON string: ' + this.inspect()); + }, + + include: function(pattern) { + return this.indexOf(pattern) > -1; + }, + + startsWith: function(pattern) { + return this.indexOf(pattern) === 0; + }, + + endsWith: function(pattern) { + var d = this.length - pattern.length; + return d >= 0 && this.lastIndexOf(pattern) === d; + }, + + empty: function() { + return this == ''; + }, + + blank: function() { + return /^\s*$/.test(this); + } +}); + +if (Prototype.Browser.WebKit || Prototype.Browser.IE) Object.extend(String.prototype, { + escapeHTML: function() { + return this.replace(/&/g,'&').replace(//g,'>'); + }, + unescapeHTML: function() { + return this.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>'); + } +}); + +String.prototype.gsub.prepareReplacement = function(replacement) { + if (typeof replacement == 'function') return replacement; + var template = new Template(replacement); + return function(match) { return template.evaluate(match) }; +} + +String.prototype.parseQuery = String.prototype.toQueryParams; + +Object.extend(String.prototype.escapeHTML, { + div: document.createElement('div'), + text: document.createTextNode('') +}); + +with (String.prototype.escapeHTML) div.appendChild(text); + +var Template = Class.create(); +Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/; +Template.prototype = { + initialize: function(template, pattern) { + this.template = template.toString(); + this.pattern = pattern || Template.Pattern; + }, + + evaluate: function(object) { + return this.template.gsub(this.pattern, function(match) { + var before = match[1]; + if (before == '\\') return match[2]; + return before + String.interpret(object[match[3]]); + }); + } +} + +var $break = {}, $continue = new Error('"throw $continue" is deprecated, use "return" instead'); + +var Enumerable = { + each: function(iterator) { + var index = 0; + try { + this._each(function(value) { + iterator(value, index++); + }); + } catch (e) { + if (e != $break) throw e; + } + return this; + }, + + eachSlice: function(number, iterator) { + var index = -number, slices = [], array = this.toArray(); + while ((index += number) < array.length) + slices.push(array.slice(index, index+number)); + return slices.map(iterator); + }, + + all: function(iterator) { + var result = true; + this.each(function(value, index) { + result = result && !!(iterator || Prototype.K)(value, index); + if (!result) throw $break; + }); + return result; + }, + + any: function(iterator) { + var result = false; + this.each(function(value, index) { + if (result = !!(iterator || Prototype.K)(value, index)) + throw $break; + }); + return result; + }, + + collect: function(iterator) { + var results = []; + this.each(function(value, index) { + results.push((iterator || Prototype.K)(value, index)); + }); + return results; + }, + + detect: function(iterator) { + var result; + this.each(function(value, index) { + if (iterator(value, index)) { + result = value; + throw $break; + } + }); + return result; + }, + + findAll: function(iterator) { + var results = []; + this.each(function(value, index) { + if (iterator(value, index)) + results.push(value); + }); + return results; + }, + + grep: function(pattern, iterator) { + var results = []; + this.each(function(value, index) { + var stringValue = value.toString(); + if (stringValue.match(pattern)) + results.push((iterator || Prototype.K)(value, index)); + }) + return results; + }, + + include: function(object) { + var found = false; + this.each(function(value) { + if (value == object) { + found = true; + throw $break; + } + }); + return found; + }, + + inGroupsOf: function(number, fillWith) { + fillWith = fillWith === undefined ? null : fillWith; + return this.eachSlice(number, function(slice) { + while(slice.length < number) slice.push(fillWith); + return slice; + }); + }, + + inject: function(memo, iterator) { + this.each(function(value, index) { + memo = iterator(memo, value, index); + }); + return memo; + }, + + invoke: function(method) { + var args = $A(arguments).slice(1); + return this.map(function(value) { + return value[method].apply(value, args); + }); + }, + + max: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value >= result) + result = value; + }); + return result; + }, + + min: function(iterator) { + var result; + this.each(function(value, index) { + value = (iterator || Prototype.K)(value, index); + if (result == undefined || value < result) + result = value; + }); + return result; + }, + + partition: function(iterator) { + var trues = [], falses = []; + this.each(function(value, index) { + ((iterator || Prototype.K)(value, index) ? + trues : falses).push(value); + }); + return [trues, falses]; + }, + + pluck: function(property) { + var results = []; + this.each(function(value, index) { + results.push(value[property]); + }); + return results; + }, + + reject: function(iterator) { + var results = []; + this.each(function(value, index) { + if (!iterator(value, index)) + results.push(value); + }); + return results; + }, + + sortBy: function(iterator) { + return this.map(function(value, index) { + return {value: value, criteria: iterator(value, index)}; + }).sort(function(left, right) { + var a = left.criteria, b = right.criteria; + return a < b ? -1 : a > b ? 1 : 0; + }).pluck('value'); + }, + + toArray: function() { + return this.map(); + }, + + zip: function() { + var iterator = Prototype.K, args = $A(arguments); + if (typeof args.last() == 'function') + iterator = args.pop(); + + var collections = [this].concat(args).map($A); + return this.map(function(value, index) { + return iterator(collections.pluck(index)); + }); + }, + + size: function() { + return this.toArray().length; + }, + + inspect: function() { + return '#'; + } +} + +Object.extend(Enumerable, { + map: Enumerable.collect, + find: Enumerable.detect, + select: Enumerable.findAll, + member: Enumerable.include, + entries: Enumerable.toArray +}); +var $A = Array.from = function(iterable) { + if (!iterable) return []; + if (iterable.toArray) { + return iterable.toArray(); + } else { + var results = []; + for (var i = 0, length = iterable.length; i < length; i++) + results.push(iterable[i]); + return results; + } +} + +if (Prototype.Browser.WebKit) { + $A = Array.from = function(iterable) { + if (!iterable) return []; + if (!(typeof iterable == 'function' && iterable == '[object NodeList]') && + iterable.toArray) { + return iterable.toArray(); + } else { + var results = []; + for (var i = 0, length = iterable.length; i < length; i++) + results.push(iterable[i]); + return results; + } + } +} + +Object.extend(Array.prototype, Enumerable); + +if (!Array.prototype._reverse) + Array.prototype._reverse = Array.prototype.reverse; + +Object.extend(Array.prototype, { + _each: function(iterator) { + for (var i = 0, length = this.length; i < length; i++) + iterator(this[i]); + }, + + clear: function() { + this.length = 0; + return this; + }, + + first: function() { + return this[0]; + }, + + last: function() { + return this[this.length - 1]; + }, + + compact: function() { + return this.select(function(value) { + return value != null; + }); + }, + + flatten: function() { + return this.inject([], function(array, value) { + return array.concat(value && value.constructor == Array ? + value.flatten() : [value]); + }); + }, + + without: function() { + var values = $A(arguments); + return this.select(function(value) { + return !values.include(value); + }); + }, + + indexOf: function(object) { + for (var i = 0, length = this.length; i < length; i++) + if (this[i] == object) return i; + return -1; + }, + + reverse: function(inline) { + return (inline !== false ? this : this.toArray())._reverse(); + }, + + reduce: function() { + return this.length > 1 ? this : this[0]; + }, + + uniq: function(sorted) { + return this.inject([], function(array, value, index) { + if (0 == index || (sorted ? array.last() != value : !array.include(value))) + array.push(value); + return array; + }); + }, + + clone: function() { + return [].concat(this); + }, + + size: function() { + return this.length; + }, + + inspect: function() { + return '[' + this.map(Object.inspect).join(', ') + ']'; + }, + + toJSON: function() { + var results = []; + this.each(function(object) { + var value = Object.toJSON(object); + if (value !== undefined) results.push(value); + }); + return '[' + results.join(', ') + ']'; + } +}); + +Array.prototype.toArray = Array.prototype.clone; + +function $w(string) { + string = string.strip(); + return string ? string.split(/\s+/) : []; +} + +if (Prototype.Browser.Opera){ + Array.prototype.concat = function() { + var array = []; + for (var i = 0, length = this.length; i < length; i++) array.push(this[i]); + for (var i = 0, length = arguments.length; i < length; i++) { + if (arguments[i].constructor == Array) { + for (var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++) + array.push(arguments[i][j]); + } else { + array.push(arguments[i]); + } + } + return array; + } +} +var Hash = function(object) { + if (object instanceof Hash) this.merge(object); + else Object.extend(this, object || {}); +}; + +Object.extend(Hash, { + toQueryString: function(obj) { + var parts = []; + parts.add = arguments.callee.addPair; + + this.prototype._each.call(obj, function(pair) { + if (!pair.key) return; + var value = pair.value; + + if (value && typeof value == 'object') { + if (value.constructor == Array) value.each(function(value) { + parts.add(pair.key, value); + }); + return; + } + parts.add(pair.key, value); + }); + + return parts.join('&'); + }, + + toJSON: function(object) { + var results = []; + this.prototype._each.call(object, function(pair) { + var value = Object.toJSON(pair.value); + if (value !== undefined) results.push(pair.key.toJSON() + ': ' + value); + }); + return '{' + results.join(', ') + '}'; + } +}); + +Hash.toQueryString.addPair = function(key, value, prefix) { + key = encodeURIComponent(key); + if (value === undefined) this.push(key); + else this.push(key + '=' + (value == null ? '' : encodeURIComponent(value))); +} + +Object.extend(Hash.prototype, Enumerable); +Object.extend(Hash.prototype, { + _each: function(iterator) { + for (var key in this) { + var value = this[key]; + if (value && value == Hash.prototype[key]) continue; + + var pair = [key, value]; + pair.key = key; + pair.value = value; + iterator(pair); + } + }, + + keys: function() { + return this.pluck('key'); + }, + + values: function() { + return this.pluck('value'); + }, + + merge: function(hash) { + return $H(hash).inject(this, function(mergedHash, pair) { + mergedHash[pair.key] = pair.value; + return mergedHash; + }); + }, + + remove: function() { + var result; + for(var i = 0, length = arguments.length; i < length; i++) { + var value = this[arguments[i]]; + if (value !== undefined){ + if (result === undefined) result = value; + else { + if (result.constructor != Array) result = [result]; + result.push(value) + } + } + delete this[arguments[i]]; + } + return result; + }, + + toQueryString: function() { + return Hash.toQueryString(this); + }, + + inspect: function() { + return '#'; + }, + + toJSON: function() { + return Hash.toJSON(this); + } +}); + +function $H(object) { + if (object instanceof Hash) return object; + return new Hash(object); +}; + +// Safari iterates over shadowed properties +if (function() { + var i = 0, Test = function(value) { this.key = value }; + Test.prototype.key = 'foo'; + for (var property in new Test('bar')) i++; + return i > 1; +}()) Hash.prototype._each = function(iterator) { + var cache = []; + for (var key in this) { + var value = this[key]; + if ((value && value == Hash.prototype[key]) || cache.include(key)) continue; + cache.push(key); + var pair = [key, value]; + pair.key = key; + pair.value = value; + iterator(pair); + } +}; +ObjectRange = Class.create(); +Object.extend(ObjectRange.prototype, Enumerable); +Object.extend(ObjectRange.prototype, { + initialize: function(start, end, exclusive) { + this.start = start; + this.end = end; + this.exclusive = exclusive; + }, + + _each: function(iterator) { + var value = this.start; + while (this.include(value)) { + iterator(value); + value = value.succ(); + } + }, + + include: function(value) { + if (value < this.start) + return false; + if (this.exclusive) + return value < this.end; + return value <= this.end; + } +}); + +var $R = function(start, end, exclusive) { + return new ObjectRange(start, end, exclusive); +} + +var Ajax = { + getTransport: function() { + return Try.these( + function() {return new XMLHttpRequest()}, + function() {return new ActiveXObject('Msxml2.XMLHTTP')}, + function() {return new ActiveXObject('Microsoft.XMLHTTP')} + ) || false; + }, + + activeRequestCount: 0 +} + +Ajax.Responders = { + responders: [], + + _each: function(iterator) { + this.responders._each(iterator); + }, + + register: function(responder) { + if (!this.include(responder)) + this.responders.push(responder); + }, + + unregister: function(responder) { + this.responders = this.responders.without(responder); + }, + + dispatch: function(callback, request, transport, json) { + this.each(function(responder) { + if (typeof responder[callback] == 'function') { + try { + responder[callback].apply(responder, [request, transport, json]); + } catch (e) {} + } + }); + } +}; + +Object.extend(Ajax.Responders, Enumerable); + +Ajax.Responders.register({ + onCreate: function() { + Ajax.activeRequestCount++; + }, + onComplete: function() { + Ajax.activeRequestCount--; + } +}); + +Ajax.Base = function() {}; +Ajax.Base.prototype = { + setOptions: function(options) { + this.options = { + method: 'post', + asynchronous: true, + contentType: 'application/x-www-form-urlencoded', + encoding: 'UTF-8', + parameters: '' + } + Object.extend(this.options, options || {}); + + this.options.method = this.options.method.toLowerCase(); + if (typeof this.options.parameters == 'string') + this.options.parameters = this.options.parameters.toQueryParams(); + } +} + +Ajax.Request = Class.create(); +Ajax.Request.Events = + ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete']; + +Ajax.Request.prototype = Object.extend(new Ajax.Base(), { + _complete: false, + + initialize: function(url, options) { + this.transport = Ajax.getTransport(); + this.setOptions(options); + this.request(url); + }, + + request: function(url) { + this.url = url; + this.method = this.options.method; + var params = Object.clone(this.options.parameters); + + if (!['get', 'post'].include(this.method)) { + // simulate other verbs over post + params['_method'] = this.method; + this.method = 'post'; + } + + this.parameters = params; + + if (params = Hash.toQueryString(params)) { + // when GET, append parameters to URL + if (this.method == 'get') + this.url += (this.url.include('?') ? '&' : '?') + params; + else if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) + params += '&_='; + } + + try { + if (this.options.onCreate) this.options.onCreate(this.transport); + Ajax.Responders.dispatch('onCreate', this, this.transport); + + this.transport.open(this.method.toUpperCase(), this.url, + this.options.asynchronous); + + if (this.options.asynchronous) + setTimeout(function() { this.respondToReadyState(1) }.bind(this), 10); + + this.transport.onreadystatechange = this.onStateChange.bind(this); + this.setRequestHeaders(); + + this.body = this.method == 'post' ? (this.options.postBody || params) : null; + this.transport.send(this.body); + + /* Force Firefox to handle ready state 4 for synchronous requests */ + if (!this.options.asynchronous && this.transport.overrideMimeType) + this.onStateChange(); + + } + catch (e) { + this.dispatchException(e); + } + }, + + onStateChange: function() { + var readyState = this.transport.readyState; + if (readyState > 1 && !((readyState == 4) && this._complete)) + this.respondToReadyState(this.transport.readyState); + }, + + setRequestHeaders: function() { + var headers = { + 'X-Requested-With': 'XMLHttpRequest', + 'X-Prototype-Version': Prototype.Version, + 'Accept': 'text/javascript, text/html, application/xml, text/xml, */*' + }; + + if (this.method == 'post') { + headers['Content-type'] = this.options.contentType + + (this.options.encoding ? '; charset=' + this.options.encoding : ''); + + /* Force "Connection: close" for older Mozilla browsers to work + * around a bug where XMLHttpRequest sends an incorrect + * Content-length header. See Mozilla Bugzilla #246651. + */ + if (this.transport.overrideMimeType && + (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < 2005) + headers['Connection'] = 'close'; + } + + // user-defined headers + if (typeof this.options.requestHeaders == 'object') { + var extras = this.options.requestHeaders; + + if (typeof extras.push == 'function') + for (var i = 0, length = extras.length; i < length; i += 2) + headers[extras[i]] = extras[i+1]; + else + $H(extras).each(function(pair) { headers[pair.key] = pair.value }); + } + + for (var name in headers) + this.transport.setRequestHeader(name, headers[name]); + }, + + success: function() { + return !this.transport.status + || (this.transport.status >= 200 && this.transport.status < 300); + }, + + respondToReadyState: function(readyState) { + var state = Ajax.Request.Events[readyState]; + var transport = this.transport, json = this.evalJSON(); + + if (state == 'Complete') { + try { + this._complete = true; + (this.options['on' + this.transport.status] + || this.options['on' + (this.success() ? 'Success' : 'Failure')] + || Prototype.emptyFunction)(transport, json); + } catch (e) { + this.dispatchException(e); + } + + var contentType = this.getHeader('Content-type'); + if (contentType && contentType.strip(). + match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)) + this.evalResponse(); + } + + try { + (this.options['on' + state] || Prototype.emptyFunction)(transport, json); + Ajax.Responders.dispatch('on' + state, this, transport, json); + } catch (e) { + this.dispatchException(e); + } + + if (state == 'Complete') { + // avoid memory leak in MSIE: clean up + this.transport.onreadystatechange = Prototype.emptyFunction; + } + }, + + getHeader: function(name) { + try { + return this.transport.getResponseHeader(name); + } catch (e) { return null } + }, + + evalJSON: function() { + try { + var json = this.getHeader('X-JSON'); + return json ? json.evalJSON() : null; + } catch (e) { return null } + }, + + evalResponse: function() { + try { + return eval((this.transport.responseText || '').unfilterJSON()); + } catch (e) { + this.dispatchException(e); + } + }, + + dispatchException: function(exception) { + (this.options.onException || Prototype.emptyFunction)(this, exception); + Ajax.Responders.dispatch('onException', this, exception); + } +}); + +Ajax.Updater = Class.create(); + +Object.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), { + initialize: function(container, url, options) { + this.container = { + success: (container.success || container), + failure: (container.failure || (container.success ? null : container)) + } + + this.transport = Ajax.getTransport(); + this.setOptions(options); + + var onComplete = this.options.onComplete || Prototype.emptyFunction; + this.options.onComplete = (function(transport, param) { + this.updateContent(); + onComplete(transport, param); + }).bind(this); + + this.request(url); + }, + + updateContent: function() { + var receiver = this.container[this.success() ? 'success' : 'failure']; + var response = this.transport.responseText; + + if (!this.options.evalScripts) response = response.stripScripts(); + + if (receiver = $(receiver)) { + if (this.options.insertion) + new this.options.insertion(receiver, response); + else + receiver.update(response); + } + + if (this.success()) { + if (this.onComplete) + setTimeout(this.onComplete.bind(this), 10); + } + } +}); + +Ajax.PeriodicalUpdater = Class.create(); +Ajax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), { + initialize: function(container, url, options) { + this.setOptions(options); + this.onComplete = this.options.onComplete; + + this.frequency = (this.options.frequency || 2); + this.decay = (this.options.decay || 1); + + this.updater = {}; + this.container = container; + this.url = url; + + this.start(); + }, + + start: function() { + this.options.onComplete = this.updateComplete.bind(this); + this.onTimerEvent(); + }, + + stop: function() { + this.updater.options.onComplete = undefined; + clearTimeout(this.timer); + (this.onComplete || Prototype.emptyFunction).apply(this, arguments); + }, + + updateComplete: function(request) { + if (this.options.decay) { + this.decay = (request.responseText == this.lastText ? + this.decay * this.options.decay : 1); + + this.lastText = request.responseText; + } + this.timer = setTimeout(this.onTimerEvent.bind(this), + this.decay * this.frequency * 1000); + }, + + onTimerEvent: function() { + this.updater = new Ajax.Updater(this.container, this.url, this.options); + } +}); +function $(element) { + if (arguments.length > 1) { + for (var i = 0, elements = [], length = arguments.length; i < length; i++) + elements.push($(arguments[i])); + return elements; + } + if (typeof element == 'string') + element = document.getElementById(element); + return Element.extend(element); +} + +if (Prototype.BrowserFeatures.XPath) { + document._getElementsByXPath = function(expression, parentElement) { + var results = []; + var query = document.evaluate(expression, $(parentElement) || document, + null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); + for (var i = 0, length = query.snapshotLength; i < length; i++) + results.push(query.snapshotItem(i)); + return results; + }; + + document.getElementsByClassName = function(className, parentElement) { + var q = ".//*[contains(concat(' ', @class, ' '), ' " + className + " ')]"; + return document._getElementsByXPath(q, parentElement); + } + +} else document.getElementsByClassName = function(className, parentElement) { + var children = ($(parentElement) || document.body).getElementsByTagName('*'); + var elements = [], child; + for (var i = 0, length = children.length; i < length; i++) { + child = children[i]; + if (Element.hasClassName(child, className)) + elements.push(Element.extend(child)); + } + return elements; +}; + +/*--------------------------------------------------------------------------*/ + +if (!window.Element) var Element = {}; + +Element.extend = function(element) { + var F = Prototype.BrowserFeatures; + if (!element || !element.tagName || element.nodeType == 3 || + element._extended || F.SpecificElementExtensions || element == window) + return element; + + var methods = {}, tagName = element.tagName, cache = Element.extend.cache, + T = Element.Methods.ByTag; + + // extend methods for all tags (Safari doesn't need this) + if (!F.ElementExtensions) { + Object.extend(methods, Element.Methods), + Object.extend(methods, Element.Methods.Simulated); + } + + // extend methods for specific tags + if (T[tagName]) Object.extend(methods, T[tagName]); + + for (var property in methods) { + var value = methods[property]; + if (typeof value == 'function' && !(property in element)) + element[property] = cache.findOrStore(value); + } + + element._extended = Prototype.emptyFunction; + return element; +}; + +Element.extend.cache = { + findOrStore: function(value) { + return this[value] = this[value] || function() { + return value.apply(null, [this].concat($A(arguments))); + } + } +}; + +Element.Methods = { + visible: function(element) { + return $(element).style.display != 'none'; + }, + + toggle: function(element) { + element = $(element); + Element[Element.visible(element) ? 'hide' : 'show'](element); + return element; + }, + + hide: function(element) { + $(element).style.display = 'none'; + return element; + }, + + show: function(element) { + $(element).style.display = ''; + return element; + }, + + remove: function(element) { + element = $(element); + element.parentNode.removeChild(element); + return element; + }, + + update: function(element, html) { + html = typeof html == 'undefined' ? '' : html.toString(); + $(element).innerHTML = html.stripScripts(); + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + replace: function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + if (element.outerHTML) { + element.outerHTML = html.stripScripts(); + } else { + var range = element.ownerDocument.createRange(); + range.selectNodeContents(element); + element.parentNode.replaceChild( + range.createContextualFragment(html.stripScripts()), element); + } + setTimeout(function() {html.evalScripts()}, 10); + return element; + }, + + inspect: function(element) { + element = $(element); + var result = '<' + element.tagName.toLowerCase(); + $H({'id': 'id', 'className': 'class'}).each(function(pair) { + var property = pair.first(), attribute = pair.last(); + var value = (element[property] || '').toString(); + if (value) result += ' ' + attribute + '=' + value.inspect(true); + }); + return result + '>'; + }, + + recursivelyCollect: function(element, property) { + element = $(element); + var elements = []; + while (element = element[property]) + if (element.nodeType == 1) + elements.push(Element.extend(element)); + return elements; + }, + + ancestors: function(element) { + return $(element).recursivelyCollect('parentNode'); + }, + + descendants: function(element) { + return $A($(element).getElementsByTagName('*')).each(Element.extend); + }, + + firstDescendant: function(element) { + element = $(element).firstChild; + while (element && element.nodeType != 1) element = element.nextSibling; + return $(element); + }, + + immediateDescendants: function(element) { + if (!(element = $(element).firstChild)) return []; + while (element && element.nodeType != 1) element = element.nextSibling; + if (element) return [element].concat($(element).nextSiblings()); + return []; + }, + + previousSiblings: function(element) { + return $(element).recursivelyCollect('previousSibling'); + }, + + nextSiblings: function(element) { + return $(element).recursivelyCollect('nextSibling'); + }, + + siblings: function(element) { + element = $(element); + return element.previousSiblings().reverse().concat(element.nextSiblings()); + }, + + match: function(element, selector) { + if (typeof selector == 'string') + selector = new Selector(selector); + return selector.match($(element)); + }, + + up: function(element, expression, index) { + element = $(element); + if (arguments.length == 1) return $(element.parentNode); + var ancestors = element.ancestors(); + return expression ? Selector.findElement(ancestors, expression, index) : + ancestors[index || 0]; + }, + + down: function(element, expression, index) { + element = $(element); + if (arguments.length == 1) return element.firstDescendant(); + var descendants = element.descendants(); + return expression ? Selector.findElement(descendants, expression, index) : + descendants[index || 0]; + }, + + previous: function(element, expression, index) { + element = $(element); + if (arguments.length == 1) return $(Selector.handlers.previousElementSibling(element)); + var previousSiblings = element.previousSiblings(); + return expression ? Selector.findElement(previousSiblings, expression, index) : + previousSiblings[index || 0]; + }, + + next: function(element, expression, index) { + element = $(element); + if (arguments.length == 1) return $(Selector.handlers.nextElementSibling(element)); + var nextSiblings = element.nextSiblings(); + return expression ? Selector.findElement(nextSiblings, expression, index) : + nextSiblings[index || 0]; + }, + + getElementsBySelector: function() { + var args = $A(arguments), element = $(args.shift()); + return Selector.findChildElements(element, args); + }, + + getElementsByClassName: function(element, className) { + return document.getElementsByClassName(className, element); + }, + + readAttribute: function(element, name) { + element = $(element); + if (Prototype.Browser.IE) { + if (!element.attributes) return null; + var t = Element._attributeTranslations; + if (t.values[name]) return t.values[name](element, name); + if (t.names[name]) name = t.names[name]; + var attribute = element.attributes[name]; + return attribute ? attribute.nodeValue : null; + } + return element.getAttribute(name); + }, + + getHeight: function(element) { + return $(element).getDimensions().height; + }, + + getWidth: function(element) { + return $(element).getDimensions().width; + }, + + classNames: function(element) { + return new Element.ClassNames(element); + }, + + hasClassName: function(element, className) { + if (!(element = $(element))) return; + var elementClassName = element.className; + if (elementClassName.length == 0) return false; + if (elementClassName == className || + elementClassName.match(new RegExp("(^|\\s)" + className + "(\\s|$)"))) + return true; + return false; + }, + + addClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).add(className); + return element; + }, + + removeClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element).remove(className); + return element; + }, + + toggleClassName: function(element, className) { + if (!(element = $(element))) return; + Element.classNames(element)[element.hasClassName(className) ? 'remove' : 'add'](className); + return element; + }, + + observe: function() { + Event.observe.apply(Event, arguments); + return $A(arguments).first(); + }, + + stopObserving: function() { + Event.stopObserving.apply(Event, arguments); + return $A(arguments).first(); + }, + + // removes whitespace-only text node children + cleanWhitespace: function(element) { + element = $(element); + var node = element.firstChild; + while (node) { + var nextNode = node.nextSibling; + if (node.nodeType == 3 && !/\S/.test(node.nodeValue)) + element.removeChild(node); + node = nextNode; + } + return element; + }, + + empty: function(element) { + return $(element).innerHTML.blank(); + }, + + descendantOf: function(element, ancestor) { + element = $(element), ancestor = $(ancestor); + while (element = element.parentNode) + if (element == ancestor) return true; + return false; + }, + + scrollTo: function(element) { + element = $(element); + var pos = Position.cumulativeOffset(element); + window.scrollTo(pos[0], pos[1]); + return element; + }, + + getStyle: function(element, style) { + element = $(element); + style = style == 'float' ? 'cssFloat' : style.camelize(); + var value = element.style[style]; + if (!value) { + var css = document.defaultView.getComputedStyle(element, null); + value = css ? css[style] : null; + } + if (style == 'opacity') return value ? parseFloat(value) : 1.0; + return value == 'auto' ? null : value; + }, + + getOpacity: function(element) { + return $(element).getStyle('opacity'); + }, + + setStyle: function(element, styles, camelized) { + element = $(element); + var elementStyle = element.style; + + for (var property in styles) + if (property == 'opacity') element.setOpacity(styles[property]) + else + elementStyle[(property == 'float' || property == 'cssFloat') ? + (elementStyle.styleFloat === undefined ? 'cssFloat' : 'styleFloat') : + (camelized ? property : property.camelize())] = styles[property]; + + return element; + }, + + setOpacity: function(element, value) { + element = $(element); + element.style.opacity = (value == 1 || value === '') ? '' : + (value < 0.00001) ? 0 : value; + return element; + }, + + getDimensions: function(element) { + element = $(element); + var display = $(element).getStyle('display'); + if (display != 'none' && display != null) // Safari bug + return {width: element.offsetWidth, height: element.offsetHeight}; + + // All *Width and *Height properties give 0 on elements with display none, + // so enable the element temporarily + var els = element.style; + var originalVisibility = els.visibility; + var originalPosition = els.position; + var originalDisplay = els.display; + els.visibility = 'hidden'; + els.position = 'absolute'; + els.display = 'block'; + var originalWidth = element.clientWidth; + var originalHeight = element.clientHeight; + els.display = originalDisplay; + els.position = originalPosition; + els.visibility = originalVisibility; + return {width: originalWidth, height: originalHeight}; + }, + + makePositioned: function(element) { + element = $(element); + var pos = Element.getStyle(element, 'position'); + if (pos == 'static' || !pos) { + element._madePositioned = true; + element.style.position = 'relative'; + // Opera returns the offset relative to the positioning context, when an + // element is position relative but top and left have not been defined + if (window.opera) { + element.style.top = 0; + element.style.left = 0; + } + } + return element; + }, + + undoPositioned: function(element) { + element = $(element); + if (element._madePositioned) { + element._madePositioned = undefined; + element.style.position = + element.style.top = + element.style.left = + element.style.bottom = + element.style.right = ''; + } + return element; + }, + + makeClipping: function(element) { + element = $(element); + if (element._overflow) return element; + element._overflow = element.style.overflow || 'auto'; + if ((Element.getStyle(element, 'overflow') || 'visible') != 'hidden') + element.style.overflow = 'hidden'; + return element; + }, + + undoClipping: function(element) { + element = $(element); + if (!element._overflow) return element; + element.style.overflow = element._overflow == 'auto' ? '' : element._overflow; + element._overflow = null; + return element; + } +}; + +Object.extend(Element.Methods, { + childOf: Element.Methods.descendantOf, + childElements: Element.Methods.immediateDescendants +}); + +if (Prototype.Browser.Opera) { + Element.Methods._getStyle = Element.Methods.getStyle; + Element.Methods.getStyle = function(element, style) { + switch(style) { + case 'left': + case 'top': + case 'right': + case 'bottom': + if (Element._getStyle(element, 'position') == 'static') return null; + default: return Element._getStyle(element, style); + } + }; +} +else if (Prototype.Browser.IE) { + Element.Methods.getStyle = function(element, style) { + element = $(element); + style = (style == 'float' || style == 'cssFloat') ? 'styleFloat' : style.camelize(); + var value = element.style[style]; + if (!value && element.currentStyle) value = element.currentStyle[style]; + + if (style == 'opacity') { + if (value = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/)) + if (value[1]) return parseFloat(value[1]) / 100; + return 1.0; + } + + if (value == 'auto') { + if ((style == 'width' || style == 'height') && (element.getStyle('display') != 'none')) + return element['offset'+style.capitalize()] + 'px'; + return null; + } + return value; + }; + + Element.Methods.setOpacity = function(element, value) { + element = $(element); + var filter = element.getStyle('filter'), style = element.style; + if (value == 1 || value === '') { + style.filter = filter.replace(/alpha\([^\)]*\)/gi,''); + return element; + } else if (value < 0.00001) value = 0; + style.filter = filter.replace(/alpha\([^\)]*\)/gi, '') + + 'alpha(opacity=' + (value * 100) + ')'; + return element; + }; + + // IE is missing .innerHTML support for TABLE-related elements + Element.Methods.update = function(element, html) { + element = $(element); + html = typeof html == 'undefined' ? '' : html.toString(); + var tagName = element.tagName.toUpperCase(); + if (['THEAD','TBODY','TR','TD'].include(tagName)) { + var div = document.createElement('div'); + switch (tagName) { + case 'THEAD': + case 'TBODY': + div.innerHTML = '' + html.stripScripts() + '
      '; + depth = 2; + break; + case 'TR': + div.innerHTML = '' + html.stripScripts() + '
      '; + depth = 3; + break; + case 'TD': + div.innerHTML = '
      ' + html.stripScripts() + '
      '; + depth = 4; + } + $A(element.childNodes).each(function(node) { element.removeChild(node) }); + depth.times(function() { div = div.firstChild }); + $A(div.childNodes).each(function(node) { element.appendChild(node) }); + } else { + element.innerHTML = html.stripScripts(); + } + setTimeout(function() { html.evalScripts() }, 10); + return element; + } +} +else if (Prototype.Browser.Gecko) { + Element.Methods.setOpacity = function(element, value) { + element = $(element); + element.style.opacity = (value == 1) ? 0.999999 : + (value === '') ? '' : (value < 0.00001) ? 0 : value; + return element; + }; +} + +Element._attributeTranslations = { + names: { + colspan: "colSpan", + rowspan: "rowSpan", + valign: "vAlign", + datetime: "dateTime", + accesskey: "accessKey", + tabindex: "tabIndex", + enctype: "encType", + maxlength: "maxLength", + readonly: "readOnly", + longdesc: "longDesc" + }, + values: { + _getAttr: function(element, attribute) { + return element.getAttribute(attribute, 2); + }, + _flag: function(element, attribute) { + return $(element).hasAttribute(attribute) ? attribute : null; + }, + style: function(element) { + return element.style.cssText.toLowerCase(); + }, + title: function(element) { + var node = element.getAttributeNode('title'); + return node.specified ? node.nodeValue : null; + } + } +}; + +(function() { + Object.extend(this, { + href: this._getAttr, + src: this._getAttr, + type: this._getAttr, + disabled: this._flag, + checked: this._flag, + readonly: this._flag, + multiple: this._flag + }); +}).call(Element._attributeTranslations.values); + +Element.Methods.Simulated = { + hasAttribute: function(element, attribute) { + var t = Element._attributeTranslations, node; + attribute = t.names[attribute] || attribute; + node = $(element).getAttributeNode(attribute); + return node && node.specified; + } +}; + +Element.Methods.ByTag = {}; + +Object.extend(Element, Element.Methods); + +if (!Prototype.BrowserFeatures.ElementExtensions && + document.createElement('div').__proto__) { + window.HTMLElement = {}; + window.HTMLElement.prototype = document.createElement('div').__proto__; + Prototype.BrowserFeatures.ElementExtensions = true; +} + +Element.hasAttribute = function(element, attribute) { + if (element.hasAttribute) return element.hasAttribute(attribute); + return Element.Methods.Simulated.hasAttribute(element, attribute); +}; + +Element.addMethods = function(methods) { + var F = Prototype.BrowserFeatures, T = Element.Methods.ByTag; + + if (!methods) { + Object.extend(Form, Form.Methods); + Object.extend(Form.Element, Form.Element.Methods); + Object.extend(Element.Methods.ByTag, { + "FORM": Object.clone(Form.Methods), + "INPUT": Object.clone(Form.Element.Methods), + "SELECT": Object.clone(Form.Element.Methods), + "TEXTAREA": Object.clone(Form.Element.Methods) + }); + } + + if (arguments.length == 2) { + var tagName = methods; + methods = arguments[1]; + } + + if (!tagName) Object.extend(Element.Methods, methods || {}); + else { + if (tagName.constructor == Array) tagName.each(extend); + else extend(tagName); + } + + function extend(tagName) { + tagName = tagName.toUpperCase(); + if (!Element.Methods.ByTag[tagName]) + Element.Methods.ByTag[tagName] = {}; + Object.extend(Element.Methods.ByTag[tagName], methods); + } + + function copy(methods, destination, onlyIfAbsent) { + onlyIfAbsent = onlyIfAbsent || false; + var cache = Element.extend.cache; + for (var property in methods) { + var value = methods[property]; + if (!onlyIfAbsent || !(property in destination)) + destination[property] = cache.findOrStore(value); + } + } + + function findDOMClass(tagName) { + var klass; + var trans = { + "OPTGROUP": "OptGroup", "TEXTAREA": "TextArea", "P": "Paragraph", + "FIELDSET": "FieldSet", "UL": "UList", "OL": "OList", "DL": "DList", + "DIR": "Directory", "H1": "Heading", "H2": "Heading", "H3": "Heading", + "H4": "Heading", "H5": "Heading", "H6": "Heading", "Q": "Quote", + "INS": "Mod", "DEL": "Mod", "A": "Anchor", "IMG": "Image", "CAPTION": + "TableCaption", "COL": "TableCol", "COLGROUP": "TableCol", "THEAD": + "TableSection", "TFOOT": "TableSection", "TBODY": "TableSection", "TR": + "TableRow", "TH": "TableCell", "TD": "TableCell", "FRAMESET": + "FrameSet", "IFRAME": "IFrame" + }; + if (trans[tagName]) klass = 'HTML' + trans[tagName] + 'Element'; + if (window[klass]) return window[klass]; + klass = 'HTML' + tagName + 'Element'; + if (window[klass]) return window[klass]; + klass = 'HTML' + tagName.capitalize() + 'Element'; + if (window[klass]) return window[klass]; + + window[klass] = {}; + window[klass].prototype = document.createElement(tagName).__proto__; + return window[klass]; + } + + if (F.ElementExtensions) { + copy(Element.Methods, HTMLElement.prototype); + copy(Element.Methods.Simulated, HTMLElement.prototype, true); + } + + if (F.SpecificElementExtensions) { + for (var tag in Element.Methods.ByTag) { + var klass = findDOMClass(tag); + if (typeof klass == "undefined") continue; + copy(T[tag], klass.prototype); + } + } + + Object.extend(Element, Element.Methods); + delete Element.ByTag; +}; + +var Toggle = { display: Element.toggle }; + +/*--------------------------------------------------------------------------*/ + +Abstract.Insertion = function(adjacency) { + this.adjacency = adjacency; +} + +Abstract.Insertion.prototype = { + initialize: function(element, content) { + this.element = $(element); + this.content = content.stripScripts(); + + if (this.adjacency && this.element.insertAdjacentHTML) { + try { + this.element.insertAdjacentHTML(this.adjacency, this.content); + } catch (e) { + var tagName = this.element.tagName.toUpperCase(); + if (['TBODY', 'TR'].include(tagName)) { + this.insertContent(this.contentFromAnonymousTable()); + } else { + throw e; + } + } + } else { + this.range = this.element.ownerDocument.createRange(); + if (this.initializeRange) this.initializeRange(); + this.insertContent([this.range.createContextualFragment(this.content)]); + } + + setTimeout(function() {content.evalScripts()}, 10); + }, + + contentFromAnonymousTable: function() { + var div = document.createElement('div'); + div.innerHTML = '' + this.content + '
      '; + return $A(div.childNodes[0].childNodes[0].childNodes); + } +} + +var Insertion = new Object(); + +Insertion.Before = Class.create(); +Insertion.Before.prototype = Object.extend(new Abstract.Insertion('beforeBegin'), { + initializeRange: function() { + this.range.setStartBefore(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, this.element); + }).bind(this)); + } +}); + +Insertion.Top = Class.create(); +Insertion.Top.prototype = Object.extend(new Abstract.Insertion('afterBegin'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(true); + }, + + insertContent: function(fragments) { + fragments.reverse(false).each((function(fragment) { + this.element.insertBefore(fragment, this.element.firstChild); + }).bind(this)); + } +}); + +Insertion.Bottom = Class.create(); +Insertion.Bottom.prototype = Object.extend(new Abstract.Insertion('beforeEnd'), { + initializeRange: function() { + this.range.selectNodeContents(this.element); + this.range.collapse(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.appendChild(fragment); + }).bind(this)); + } +}); + +Insertion.After = Class.create(); +Insertion.After.prototype = Object.extend(new Abstract.Insertion('afterEnd'), { + initializeRange: function() { + this.range.setStartAfter(this.element); + }, + + insertContent: function(fragments) { + fragments.each((function(fragment) { + this.element.parentNode.insertBefore(fragment, + this.element.nextSibling); + }).bind(this)); + } +}); + +/*--------------------------------------------------------------------------*/ + +Element.ClassNames = Class.create(); +Element.ClassNames.prototype = { + initialize: function(element) { + this.element = $(element); + }, + + _each: function(iterator) { + this.element.className.split(/\s+/).select(function(name) { + return name.length > 0; + })._each(iterator); + }, + + set: function(className) { + this.element.className = className; + }, + + add: function(classNameToAdd) { + if (this.include(classNameToAdd)) return; + this.set($A(this).concat(classNameToAdd).join(' ')); + }, + + remove: function(classNameToRemove) { + if (!this.include(classNameToRemove)) return; + this.set($A(this).without(classNameToRemove).join(' ')); + }, + + toString: function() { + return $A(this).join(' '); + } +}; + +Object.extend(Element.ClassNames.prototype, Enumerable); +/* Portions of the Selector class are derived from Jack Slocum’s DomQuery, + * part of YUI-Ext version 0.40, distributed under the terms of an MIT-style + * license. Please see http://www.yui-ext.com/ for more information. */ + +var Selector = Class.create(); + +Selector.prototype = { + initialize: function(expression) { + this.expression = expression.strip(); + this.compileMatcher(); + }, + + compileMatcher: function() { + // Selectors with namespaced attributes can't use the XPath version + if (Prototype.BrowserFeatures.XPath && !(/\[[\w-]*?:/).test(this.expression)) + return this.compileXPathMatcher(); + + var e = this.expression, ps = Selector.patterns, h = Selector.handlers, + c = Selector.criteria, le, p, m; + + if (Selector._cache[e]) { + this.matcher = Selector._cache[e]; return; + } + this.matcher = ["this.matcher = function(root) {", + "var r = root, h = Selector.handlers, c = false, n;"]; + + while (e && le != e && (/\S/).test(e)) { + le = e; + for (var i in ps) { + p = ps[i]; + if (m = e.match(p)) { + this.matcher.push(typeof c[i] == 'function' ? c[i](m) : + new Template(c[i]).evaluate(m)); + e = e.replace(m[0], ''); + break; + } + } + } + + this.matcher.push("return h.unique(n);\n}"); + eval(this.matcher.join('\n')); + Selector._cache[this.expression] = this.matcher; + }, + + compileXPathMatcher: function() { + var e = this.expression, ps = Selector.patterns, + x = Selector.xpath, le, m; + + if (Selector._cache[e]) { + this.xpath = Selector._cache[e]; return; + } + + this.matcher = ['.//*']; + while (e && le != e && (/\S/).test(e)) { + le = e; + for (var i in ps) { + if (m = e.match(ps[i])) { + this.matcher.push(typeof x[i] == 'function' ? x[i](m) : + new Template(x[i]).evaluate(m)); + e = e.replace(m[0], ''); + break; + } + } + } + + this.xpath = this.matcher.join(''); + Selector._cache[this.expression] = this.xpath; + }, + + findElements: function(root) { + root = root || document; + if (this.xpath) return document._getElementsByXPath(this.xpath, root); + return this.matcher(root); + }, + + match: function(element) { + return this.findElements(document).include(element); + }, + + toString: function() { + return this.expression; + }, + + inspect: function() { + return "#"; + } +}; + +Object.extend(Selector, { + _cache: {}, + + xpath: { + descendant: "//*", + child: "/*", + adjacent: "/following-sibling::*[1]", + laterSibling: '/following-sibling::*', + tagName: function(m) { + if (m[1] == '*') return ''; + return "[local-name()='" + m[1].toLowerCase() + + "' or local-name()='" + m[1].toUpperCase() + "']"; + }, + className: "[contains(concat(' ', @class, ' '), ' #{1} ')]", + id: "[@id='#{1}']", + attrPresence: "[@#{1}]", + attr: function(m) { + m[3] = m[5] || m[6]; + return new Template(Selector.xpath.operators[m[2]]).evaluate(m); + }, + pseudo: function(m) { + var h = Selector.xpath.pseudos[m[1]]; + if (!h) return ''; + if (typeof h === 'function') return h(m); + return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m); + }, + operators: { + '=': "[@#{1}='#{3}']", + '!=': "[@#{1}!='#{3}']", + '^=': "[starts-with(@#{1}, '#{3}')]", + '$=': "[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']", + '*=': "[contains(@#{1}, '#{3}')]", + '~=': "[contains(concat(' ', @#{1}, ' '), ' #{3} ')]", + '|=': "[contains(concat('-', @#{1}, '-'), '-#{3}-')]" + }, + pseudos: { + 'first-child': '[not(preceding-sibling::*)]', + 'last-child': '[not(following-sibling::*)]', + 'only-child': '[not(preceding-sibling::* or following-sibling::*)]', + 'empty': "[count(*) = 0 and (count(text()) = 0 or translate(text(), ' \t\r\n', '') = '')]", + 'checked': "[@checked]", + 'disabled': "[@disabled]", + 'enabled': "[not(@disabled)]", + 'not': function(m) { + var e = m[6], p = Selector.patterns, + x = Selector.xpath, le, m, v; + + var exclusion = []; + while (e && le != e && (/\S/).test(e)) { + le = e; + for (var i in p) { + if (m = e.match(p[i])) { + v = typeof x[i] == 'function' ? x[i](m) : new Template(x[i]).evaluate(m); + exclusion.push("(" + v.substring(1, v.length - 1) + ")"); + e = e.replace(m[0], ''); + break; + } + } + } + return "[not(" + exclusion.join(" and ") + ")]"; + }, + 'nth-child': function(m) { + return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ", m); + }, + 'nth-last-child': function(m) { + return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ", m); + }, + 'nth-of-type': function(m) { + return Selector.xpath.pseudos.nth("position() ", m); + }, + 'nth-last-of-type': function(m) { + return Selector.xpath.pseudos.nth("(last() + 1 - position()) ", m); + }, + 'first-of-type': function(m) { + m[6] = "1"; return Selector.xpath.pseudos['nth-of-type'](m); + }, + 'last-of-type': function(m) { + m[6] = "1"; return Selector.xpath.pseudos['nth-last-of-type'](m); + }, + 'only-of-type': function(m) { + var p = Selector.xpath.pseudos; return p['first-of-type'](m) + p['last-of-type'](m); + }, + nth: function(fragment, m) { + var mm, formula = m[6], predicate; + if (formula == 'even') formula = '2n+0'; + if (formula == 'odd') formula = '2n+1'; + if (mm = formula.match(/^(\d+)$/)) // digit only + return '[' + fragment + "= " + mm[1] + ']'; + if (mm = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b + if (mm[1] == "-") mm[1] = -1; + var a = mm[1] ? Number(mm[1]) : 1; + var b = mm[2] ? Number(mm[2]) : 0; + predicate = "[((#{fragment} - #{b}) mod #{a} = 0) and " + + "((#{fragment} - #{b}) div #{a} >= 0)]"; + return new Template(predicate).evaluate({ + fragment: fragment, a: a, b: b }); + } + } + } + }, + + criteria: { + tagName: 'n = h.tagName(n, r, "#{1}", c); c = false;', + className: 'n = h.className(n, r, "#{1}", c); c = false;', + id: 'n = h.id(n, r, "#{1}", c); c = false;', + attrPresence: 'n = h.attrPresence(n, r, "#{1}"); c = false;', + attr: function(m) { + m[3] = (m[5] || m[6]); + return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = false;').evaluate(m); + }, + pseudo: function(m) { + if (m[6]) m[6] = m[6].replace(/"/g, '\\"'); + return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(m); + }, + descendant: 'c = "descendant";', + child: 'c = "child";', + adjacent: 'c = "adjacent";', + laterSibling: 'c = "laterSibling";' + }, + + patterns: { + // combinators must be listed first + // (and descendant needs to be last combinator) + laterSibling: /^\s*~\s*/, + child: /^\s*>\s*/, + adjacent: /^\s*\+\s*/, + descendant: /^\s/, + + // selectors follow + tagName: /^\s*(\*|[\w\-]+)(\b|$)?/, + id: /^#([\w\-\*]+)(\b|$)/, + className: /^\.([\w\-\*]+)(\b|$)/, + pseudo: /^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|\s)/, + attrPresence: /^\[([\w]+)\]/, + attr: /\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\]]*?)\4|([^'"][^\]]*?)))?\]/ + }, + + handlers: { + // UTILITY FUNCTIONS + // joins two collections + concat: function(a, b) { + for (var i = 0, node; node = b[i]; i++) + a.push(node); + return a; + }, + + // marks an array of nodes for counting + mark: function(nodes) { + for (var i = 0, node; node = nodes[i]; i++) + node._counted = true; + return nodes; + }, + + unmark: function(nodes) { + for (var i = 0, node; node = nodes[i]; i++) + node._counted = undefined; + return nodes; + }, + + // mark each child node with its position (for nth calls) + // "ofType" flag indicates whether we're indexing for nth-of-type + // rather than nth-child + index: function(parentNode, reverse, ofType) { + parentNode._counted = true; + if (reverse) { + for (var nodes = parentNode.childNodes, i = nodes.length - 1, j = 1; i >= 0; i--) { + node = nodes[i]; + if (node.nodeType == 1 && (!ofType || node._counted)) node.nodeIndex = j++; + } + } else { + for (var i = 0, j = 1, nodes = parentNode.childNodes; node = nodes[i]; i++) + if (node.nodeType == 1 && (!ofType || node._counted)) node.nodeIndex = j++; + } + }, + + // filters out duplicates and extends all nodes + unique: function(nodes) { + if (nodes.length == 0) return nodes; + var results = [], n; + for (var i = 0, l = nodes.length; i < l; i++) + if (!(n = nodes[i])._counted) { + n._counted = true; + results.push(Element.extend(n)); + } + return Selector.handlers.unmark(results); + }, + + // COMBINATOR FUNCTIONS + descendant: function(nodes) { + var h = Selector.handlers; + for (var i = 0, results = [], node; node = nodes[i]; i++) + h.concat(results, node.getElementsByTagName('*')); + return results; + }, + + child: function(nodes) { + var h = Selector.handlers; + for (var i = 0, results = [], node; node = nodes[i]; i++) { + for (var j = 0, children = [], child; child = node.childNodes[j]; j++) + if (child.nodeType == 1 && child.tagName != '!') results.push(child); + } + return results; + }, + + adjacent: function(nodes) { + for (var i = 0, results = [], node; node = nodes[i]; i++) { + var next = this.nextElementSibling(node); + if (next) results.push(next); + } + return results; + }, + + laterSibling: function(nodes) { + var h = Selector.handlers; + for (var i = 0, results = [], node; node = nodes[i]; i++) + h.concat(results, Element.nextSiblings(node)); + return results; + }, + + nextElementSibling: function(node) { + while (node = node.nextSibling) + if (node.nodeType == 1) return node; + return null; + }, + + previousElementSibling: function(node) { + while (node = node.previousSibling) + if (node.nodeType == 1) return node; + return null; + }, + + // TOKEN FUNCTIONS + tagName: function(nodes, root, tagName, combinator) { + tagName = tagName.toUpperCase(); + var results = [], h = Selector.handlers; + if (nodes) { + if (combinator) { + // fastlane for ordinary descendant combinators + if (combinator == "descendant") { + for (var i = 0, node; node = nodes[i]; i++) + h.concat(results, node.getElementsByTagName(tagName)); + return results; + } else nodes = this[combinator](nodes); + if (tagName == "*") return nodes; + } + for (var i = 0, node; node = nodes[i]; i++) + if (node.tagName.toUpperCase() == tagName) results.push(node); + return results; + } else return root.getElementsByTagName(tagName); + }, + + id: function(nodes, root, id, combinator) { + var targetNode = $(id), h = Selector.handlers; + if (!nodes && root == document) return targetNode ? [targetNode] : []; + if (nodes) { + if (combinator) { + if (combinator == 'child') { + for (var i = 0, node; node = nodes[i]; i++) + if (targetNode.parentNode == node) return [targetNode]; + } else if (combinator == 'descendant') { + for (var i = 0, node; node = nodes[i]; i++) + if (Element.descendantOf(targetNode, node)) return [targetNode]; + } else if (combinator == 'adjacent') { + for (var i = 0, node; node = nodes[i]; i++) + if (Selector.handlers.previousElementSibling(targetNode) == node) + return [targetNode]; + } else nodes = h[combinator](nodes); + } + for (var i = 0, node; node = nodes[i]; i++) + if (node == targetNode) return [targetNode]; + return []; + } + return (targetNode && Element.descendantOf(targetNode, root)) ? [targetNode] : []; + }, + + className: function(nodes, root, className, combinator) { + if (nodes && combinator) nodes = this[combinator](nodes); + return Selector.handlers.byClassName(nodes, root, className); + }, + + byClassName: function(nodes, root, className) { + if (!nodes) nodes = Selector.handlers.descendant([root]); + var needle = ' ' + className + ' '; + for (var i = 0, results = [], node, nodeClassName; node = nodes[i]; i++) { + nodeClassName = node.className; + if (nodeClassName.length == 0) continue; + if (nodeClassName == className || (' ' + nodeClassName + ' ').include(needle)) + results.push(node); + } + return results; + }, + + attrPresence: function(nodes, root, attr) { + var results = []; + for (var i = 0, node; node = nodes[i]; i++) + if (Element.hasAttribute(node, attr)) results.push(node); + return results; + }, + + attr: function(nodes, root, attr, value, operator) { + if (!nodes) nodes = root.getElementsByTagName("*"); + var handler = Selector.operators[operator], results = []; + for (var i = 0, node; node = nodes[i]; i++) { + var nodeValue = Element.readAttribute(node, attr); + if (nodeValue === null) continue; + if (handler(nodeValue, value)) results.push(node); + } + return results; + }, + + pseudo: function(nodes, name, value, root, combinator) { + if (nodes && combinator) nodes = this[combinator](nodes); + if (!nodes) nodes = root.getElementsByTagName("*"); + return Selector.pseudos[name](nodes, value, root); + } + }, + + pseudos: { + 'first-child': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) { + if (Selector.handlers.previousElementSibling(node)) continue; + results.push(node); + } + return results; + }, + 'last-child': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) { + if (Selector.handlers.nextElementSibling(node)) continue; + results.push(node); + } + return results; + }, + 'only-child': function(nodes, value, root) { + var h = Selector.handlers; + for (var i = 0, results = [], node; node = nodes[i]; i++) + if (!h.previousElementSibling(node) && !h.nextElementSibling(node)) + results.push(node); + return results; + }, + 'nth-child': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, formula, root); + }, + 'nth-last-child': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, formula, root, true); + }, + 'nth-of-type': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, formula, root, false, true); + }, + 'nth-last-of-type': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, formula, root, true, true); + }, + 'first-of-type': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, "1", root, false, true); + }, + 'last-of-type': function(nodes, formula, root) { + return Selector.pseudos.nth(nodes, "1", root, true, true); + }, + 'only-of-type': function(nodes, formula, root) { + var p = Selector.pseudos; + return p['last-of-type'](p['first-of-type'](nodes, formula, root), formula, root); + }, + + // handles the an+b logic + getIndices: function(a, b, total) { + if (a == 0) return b > 0 ? [b] : []; + return $R(1, total).inject([], function(memo, i) { + if (0 == (i - b) % a && (i - b) / a >= 0) memo.push(i); + return memo; + }); + }, + + // handles nth(-last)-child, nth(-last)-of-type, and (first|last)-of-type + nth: function(nodes, formula, root, reverse, ofType) { + if (nodes.length == 0) return []; + if (formula == 'even') formula = '2n+0'; + if (formula == 'odd') formula = '2n+1'; + var h = Selector.handlers, results = [], indexed = [], m; + h.mark(nodes); + for (var i = 0, node; node = nodes[i]; i++) { + if (!node.parentNode._counted) { + h.index(node.parentNode, reverse, ofType); + indexed.push(node.parentNode); + } + } + if (formula.match(/^\d+$/)) { // just a number + formula = Number(formula); + for (var i = 0, node; node = nodes[i]; i++) + if (node.nodeIndex == formula) results.push(node); + } else if (m = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b + if (m[1] == "-") m[1] = -1; + var a = m[1] ? Number(m[1]) : 1; + var b = m[2] ? Number(m[2]) : 0; + var indices = Selector.pseudos.getIndices(a, b, nodes.length); + for (var i = 0, node, l = indices.length; node = nodes[i]; i++) { + for (var j = 0; j < l; j++) + if (node.nodeIndex == indices[j]) results.push(node); + } + } + h.unmark(nodes); + h.unmark(indexed); + return results; + }, + + 'empty': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) { + // IE treats comments as element nodes + if (node.tagName == '!' || (node.firstChild && !node.innerHTML.match(/^\s*$/))) continue; + results.push(node); + } + return results; + }, + + 'not': function(nodes, selector, root) { + var h = Selector.handlers, selectorType, m; + var exclusions = new Selector(selector).findElements(root); + h.mark(exclusions); + for (var i = 0, results = [], node; node = nodes[i]; i++) + if (!node._counted) results.push(node); + h.unmark(exclusions); + return results; + }, + + 'enabled': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) + if (!node.disabled) results.push(node); + return results; + }, + + 'disabled': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) + if (node.disabled) results.push(node); + return results; + }, + + 'checked': function(nodes, value, root) { + for (var i = 0, results = [], node; node = nodes[i]; i++) + if (node.checked) results.push(node); + return results; + } + }, + + operators: { + '=': function(nv, v) { return nv == v; }, + '!=': function(nv, v) { return nv != v; }, + '^=': function(nv, v) { return nv.startsWith(v); }, + '$=': function(nv, v) { return nv.endsWith(v); }, + '*=': function(nv, v) { return nv.include(v); }, + '~=': function(nv, v) { return (' ' + nv + ' ').include(' ' + v + ' '); }, + '|=': function(nv, v) { return ('-' + nv.toUpperCase() + '-').include('-' + v.toUpperCase() + '-'); } + }, + + matchElements: function(elements, expression) { + var matches = new Selector(expression).findElements(), h = Selector.handlers; + h.mark(matches); + for (var i = 0, results = [], element; element = elements[i]; i++) + if (element._counted) results.push(element); + h.unmark(matches); + return results; + }, + + findElement: function(elements, expression, index) { + if (typeof expression == 'number') { + index = expression; expression = false; + } + return Selector.matchElements(elements, expression || '*')[index || 0]; + }, + + findChildElements: function(element, expressions) { + var exprs = expressions.join(','), expressions = []; + exprs.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/, function(m) { + expressions.push(m[1].strip()); + }); + var results = [], h = Selector.handlers; + for (var i = 0, l = expressions.length, selector; i < l; i++) { + selector = new Selector(expressions[i].strip()); + h.concat(results, selector.findElements(element)); + } + return (l > 1) ? h.unique(results) : results; + } +}); + +function $$() { + return Selector.findChildElements(document, $A(arguments)); +} +var Form = { + reset: function(form) { + $(form).reset(); + return form; + }, + + serializeElements: function(elements, getHash) { + var data = elements.inject({}, function(result, element) { + if (!element.disabled && element.name) { + var key = element.name, value = $(element).getValue(); + if (value != null) { + if (key in result) { + if (result[key].constructor != Array) result[key] = [result[key]]; + result[key].push(value); + } + else result[key] = value; + } + } + return result; + }); + + return getHash ? data : Hash.toQueryString(data); + } +}; + +Form.Methods = { + serialize: function(form, getHash) { + return Form.serializeElements(Form.getElements(form), getHash); + }, + + getElements: function(form) { + return $A($(form).getElementsByTagName('*')).inject([], + function(elements, child) { + if (Form.Element.Serializers[child.tagName.toLowerCase()]) + elements.push(Element.extend(child)); + return elements; + } + ); + }, + + getInputs: function(form, typeName, name) { + form = $(form); + var inputs = form.getElementsByTagName('input'); + + if (!typeName && !name) return $A(inputs).map(Element.extend); + + for (var i = 0, matchingInputs = [], length = inputs.length; i < length; i++) { + var input = inputs[i]; + if ((typeName && input.type != typeName) || (name && input.name != name)) + continue; + matchingInputs.push(Element.extend(input)); + } + + return matchingInputs; + }, + + disable: function(form) { + form = $(form); + Form.getElements(form).invoke('disable'); + return form; + }, + + enable: function(form) { + form = $(form); + Form.getElements(form).invoke('enable'); + return form; + }, + + findFirstElement: function(form) { + return $(form).getElements().find(function(element) { + return element.type != 'hidden' && !element.disabled && + ['input', 'select', 'textarea'].include(element.tagName.toLowerCase()); + }); + }, + + focusFirstElement: function(form) { + form = $(form); + form.findFirstElement().activate(); + return form; + }, + + request: function(form, options) { + form = $(form), options = Object.clone(options || {}); + + var params = options.parameters; + options.parameters = form.serialize(true); + + if (params) { + if (typeof params == 'string') params = params.toQueryParams(); + Object.extend(options.parameters, params); + } + + if (form.hasAttribute('method') && !options.method) + options.method = form.method; + + return new Ajax.Request(form.readAttribute('action'), options); + } +} + +/*--------------------------------------------------------------------------*/ + +Form.Element = { + focus: function(element) { + $(element).focus(); + return element; + }, + + select: function(element) { + $(element).select(); + return element; + } +} + +Form.Element.Methods = { + serialize: function(element) { + element = $(element); + if (!element.disabled && element.name) { + var value = element.getValue(); + if (value != undefined) { + var pair = {}; + pair[element.name] = value; + return Hash.toQueryString(pair); + } + } + return ''; + }, + + getValue: function(element) { + element = $(element); + var method = element.tagName.toLowerCase(); + return Form.Element.Serializers[method](element); + }, + + clear: function(element) { + $(element).value = ''; + return element; + }, + + present: function(element) { + return $(element).value != ''; + }, + + activate: function(element) { + element = $(element); + try { + element.focus(); + if (element.select && (element.tagName.toLowerCase() != 'input' || + !['button', 'reset', 'submit'].include(element.type))) + element.select(); + } catch (e) {} + return element; + }, + + disable: function(element) { + element = $(element); + element.blur(); + element.disabled = true; + return element; + }, + + enable: function(element) { + element = $(element); + element.disabled = false; + return element; + } +} + +/*--------------------------------------------------------------------------*/ + +var Field = Form.Element; +var $F = Form.Element.Methods.getValue; + +/*--------------------------------------------------------------------------*/ + +Form.Element.Serializers = { + input: function(element) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + return Form.Element.Serializers.inputSelector(element); + default: + return Form.Element.Serializers.textarea(element); + } + }, + + inputSelector: function(element) { + return element.checked ? element.value : null; + }, + + textarea: function(element) { + return element.value; + }, + + select: function(element) { + return this[element.type == 'select-one' ? + 'selectOne' : 'selectMany'](element); + }, + + selectOne: function(element) { + var index = element.selectedIndex; + return index >= 0 ? this.optionValue(element.options[index]) : null; + }, + + selectMany: function(element) { + var values, length = element.length; + if (!length) return null; + + for (var i = 0, values = []; i < length; i++) { + var opt = element.options[i]; + if (opt.selected) values.push(this.optionValue(opt)); + } + return values; + }, + + optionValue: function(opt) { + // extend element because hasAttribute may not be native + return Element.extend(opt).hasAttribute('value') ? opt.value : opt.text; + } +} + +/*--------------------------------------------------------------------------*/ + +Abstract.TimedObserver = function() {} +Abstract.TimedObserver.prototype = { + initialize: function(element, frequency, callback) { + this.frequency = frequency; + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + this.registerCallback(); + }, + + registerCallback: function() { + setInterval(this.onTimerEvent.bind(this), this.frequency * 1000); + }, + + onTimerEvent: function() { + var value = this.getValue(); + var changed = ('string' == typeof this.lastValue && 'string' == typeof value + ? this.lastValue != value : String(this.lastValue) != String(value)); + if (changed) { + this.callback(this.element, value); + this.lastValue = value; + } + } +} + +Form.Element.Observer = Class.create(); +Form.Element.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.Observer = Class.create(); +Form.Observer.prototype = Object.extend(new Abstract.TimedObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); + +/*--------------------------------------------------------------------------*/ + +Abstract.EventObserver = function() {} +Abstract.EventObserver.prototype = { + initialize: function(element, callback) { + this.element = $(element); + this.callback = callback; + + this.lastValue = this.getValue(); + if (this.element.tagName.toLowerCase() == 'form') + this.registerFormCallbacks(); + else + this.registerCallback(this.element); + }, + + onElementEvent: function() { + var value = this.getValue(); + if (this.lastValue != value) { + this.callback(this.element, value); + this.lastValue = value; + } + }, + + registerFormCallbacks: function() { + Form.getElements(this.element).each(this.registerCallback.bind(this)); + }, + + registerCallback: function(element) { + if (element.type) { + switch (element.type.toLowerCase()) { + case 'checkbox': + case 'radio': + Event.observe(element, 'click', this.onElementEvent.bind(this)); + break; + default: + Event.observe(element, 'change', this.onElementEvent.bind(this)); + break; + } + } + } +} + +Form.Element.EventObserver = Class.create(); +Form.Element.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.Element.getValue(this.element); + } +}); + +Form.EventObserver = Class.create(); +Form.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), { + getValue: function() { + return Form.serialize(this.element); + } +}); +if (!window.Event) { + var Event = new Object(); +} + +Object.extend(Event, { + KEY_BACKSPACE: 8, + KEY_TAB: 9, + KEY_RETURN: 13, + KEY_ESC: 27, + KEY_LEFT: 37, + KEY_UP: 38, + KEY_RIGHT: 39, + KEY_DOWN: 40, + KEY_DELETE: 46, + KEY_HOME: 36, + KEY_END: 35, + KEY_PAGEUP: 33, + KEY_PAGEDOWN: 34, + + element: function(event) { + return $(event.target || event.srcElement); + }, + + isLeftClick: function(event) { + return (((event.which) && (event.which == 1)) || + ((event.button) && (event.button == 1))); + }, + + pointerX: function(event) { + return event.pageX || (event.clientX + + (document.documentElement.scrollLeft || document.body.scrollLeft)); + }, + + pointerY: function(event) { + return event.pageY || (event.clientY + + (document.documentElement.scrollTop || document.body.scrollTop)); + }, + + stop: function(event) { + if (event.preventDefault) { + event.preventDefault(); + event.stopPropagation(); + } else { + event.returnValue = false; + event.cancelBubble = true; + } + }, + + // find the first node with the given tagName, starting from the + // node the event was triggered on; traverses the DOM upwards + findElement: function(event, tagName) { + var element = Event.element(event); + while (element.parentNode && (!element.tagName || + (element.tagName.toUpperCase() != tagName.toUpperCase()))) + element = element.parentNode; + return element; + }, + + observers: false, + + _observeAndCache: function(element, name, observer, useCapture) { + if (!this.observers) this.observers = []; + if (element.addEventListener) { + this.observers.push([element, name, observer, useCapture]); + element.addEventListener(name, observer, useCapture); + } else if (element.attachEvent) { + this.observers.push([element, name, observer, useCapture]); + element.attachEvent('on' + name, observer); + } + }, + + unloadCache: function() { + if (!Event.observers) return; + for (var i = 0, length = Event.observers.length; i < length; i++) { + Event.stopObserving.apply(this, Event.observers[i]); + Event.observers[i][0] = null; + } + Event.observers = false; + }, + + observe: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (Prototype.Browser.WebKit || element.attachEvent)) + name = 'keydown'; + + Event._observeAndCache(element, name, observer, useCapture); + }, + + stopObserving: function(element, name, observer, useCapture) { + element = $(element); + useCapture = useCapture || false; + + if (name == 'keypress' && + (Prototype.Browser.WebKit || element.attachEvent)) + name = 'keydown'; + + if (element.removeEventListener) { + element.removeEventListener(name, observer, useCapture); + } else if (element.detachEvent) { + try { + element.detachEvent('on' + name, observer); + } catch (e) {} + } + } +}); + +/* prevent memory leaks in IE */ +if (Prototype.Browser.IE) + Event.observe(window, 'unload', Event.unloadCache, false); +var Position = { + // set to true if needed, warning: firefox performance problems + // NOT neeeded for page scrolling, only if draggable contained in + // scrollable elements + includeScrollOffsets: false, + + // must be called before calling withinIncludingScrolloffset, every time the + // page is scrolled + prepare: function() { + this.deltaX = window.pageXOffset + || document.documentElement.scrollLeft + || document.body.scrollLeft + || 0; + this.deltaY = window.pageYOffset + || document.documentElement.scrollTop + || document.body.scrollTop + || 0; + }, + + realOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.scrollTop || 0; + valueL += element.scrollLeft || 0; + element = element.parentNode; + } while (element); + return [valueL, valueT]; + }, + + cumulativeOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + } while (element); + return [valueL, valueT]; + }, + + positionedOffset: function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + element = element.offsetParent; + if (element) { + if(element.tagName=='BODY') break; + var p = Element.getStyle(element, 'position'); + if (p == 'relative' || p == 'absolute') break; + } + } while (element); + return [valueL, valueT]; + }, + + offsetParent: function(element) { + if (element.offsetParent) return element.offsetParent; + if (element == document.body) return element; + + while ((element = element.parentNode) && element != document.body) + if (Element.getStyle(element, 'position') != 'static') + return element; + + return document.body; + }, + + // caches x/y coordinate pair to use with overlap + within: function(element, x, y) { + if (this.includeScrollOffsets) + return this.withinIncludingScrolloffsets(element, x, y); + this.xcomp = x; + this.ycomp = y; + this.offset = this.cumulativeOffset(element); + + return (y >= this.offset[1] && + y < this.offset[1] + element.offsetHeight && + x >= this.offset[0] && + x < this.offset[0] + element.offsetWidth); + }, + + withinIncludingScrolloffsets: function(element, x, y) { + var offsetcache = this.realOffset(element); + + this.xcomp = x + offsetcache[0] - this.deltaX; + this.ycomp = y + offsetcache[1] - this.deltaY; + this.offset = this.cumulativeOffset(element); + + return (this.ycomp >= this.offset[1] && + this.ycomp < this.offset[1] + element.offsetHeight && + this.xcomp >= this.offset[0] && + this.xcomp < this.offset[0] + element.offsetWidth); + }, + + // within must be called directly before + overlap: function(mode, element) { + if (!mode) return 0; + if (mode == 'vertical') + return ((this.offset[1] + element.offsetHeight) - this.ycomp) / + element.offsetHeight; + if (mode == 'horizontal') + return ((this.offset[0] + element.offsetWidth) - this.xcomp) / + element.offsetWidth; + }, + + page: function(forElement) { + var valueT = 0, valueL = 0; + + var element = forElement; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + + // Safari fix + if (element.offsetParent == document.body) + if (Element.getStyle(element,'position')=='absolute') break; + + } while (element = element.offsetParent); + + element = forElement; + do { + if (!window.opera || element.tagName=='BODY') { + valueT -= element.scrollTop || 0; + valueL -= element.scrollLeft || 0; + } + } while (element = element.parentNode); + + return [valueL, valueT]; + }, + + clone: function(source, target) { + var options = Object.extend({ + setLeft: true, + setTop: true, + setWidth: true, + setHeight: true, + offsetTop: 0, + offsetLeft: 0 + }, arguments[2] || {}) + + // find page position of source + source = $(source); + var p = Position.page(source); + + // find coordinate system to use + target = $(target); + var delta = [0, 0]; + var parent = null; + // delta [0,0] will do fine with position: fixed elements, + // position:absolute needs offsetParent deltas + if (Element.getStyle(target,'position') == 'absolute') { + parent = Position.offsetParent(target); + delta = Position.page(parent); + } + + // correct by body offsets (fixes Safari) + if (parent == document.body) { + delta[0] -= document.body.offsetLeft; + delta[1] -= document.body.offsetTop; + } + + // set position + if(options.setLeft) target.style.left = (p[0] - delta[0] + options.offsetLeft) + 'px'; + if(options.setTop) target.style.top = (p[1] - delta[1] + options.offsetTop) + 'px'; + if(options.setWidth) target.style.width = source.offsetWidth + 'px'; + if(options.setHeight) target.style.height = source.offsetHeight + 'px'; + }, + + absolutize: function(element) { + element = $(element); + if (element.style.position == 'absolute') return; + Position.prepare(); + + var offsets = Position.positionedOffset(element); + var top = offsets[1]; + var left = offsets[0]; + var width = element.clientWidth; + var height = element.clientHeight; + + element._originalLeft = left - parseFloat(element.style.left || 0); + element._originalTop = top - parseFloat(element.style.top || 0); + element._originalWidth = element.style.width; + element._originalHeight = element.style.height; + + element.style.position = 'absolute'; + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.width = width + 'px'; + element.style.height = height + 'px'; + }, + + relativize: function(element) { + element = $(element); + if (element.style.position == 'relative') return; + Position.prepare(); + + element.style.position = 'relative'; + var top = parseFloat(element.style.top || 0) - (element._originalTop || 0); + var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0); + + element.style.top = top + 'px'; + element.style.left = left + 'px'; + element.style.height = element._originalHeight; + element.style.width = element._originalWidth; + } +} + +// Safari returns margins on body which is incorrect if the child is absolutely +// positioned. For performance reasons, redefine Position.cumulativeOffset for +// KHTML/WebKit only. +if (Prototype.Browser.WebKit) { + Position.cumulativeOffset = function(element) { + var valueT = 0, valueL = 0; + do { + valueT += element.offsetTop || 0; + valueL += element.offsetLeft || 0; + if (element.offsetParent == document.body) + if (Element.getStyle(element, 'position') == 'absolute') break; + + element = element.offsetParent; + } while (element); + + return [valueL, valueT]; + } +} + +Element.addMethods(); \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/manifest.json b/dom/tests/mochitest/ajax/scriptaculous/manifest.json new file mode 100644 index 0000000000..b0f6322df9 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/manifest.json @@ -0,0 +1 @@ +{testcases:["test/unit/ajax_inplaceeditor_test.html","test/unit/builder_test.html","test/unit/dragdrop_test.html","test/unit/effects_test.html","test/unit/element_test.html","test/unit/loading_test.html","test/unit/position_clone_test.html","test/unit/sortable_test.html","test/unit/string_test.html","test/unit/unit_test.html"]} diff --git a/dom/tests/mochitest/ajax/scriptaculous/mochitest.toml b/dom/tests/mochitest/ajax/scriptaculous/mochitest.toml new file mode 100644 index 0000000000..c0d4f11b64 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/mochitest.toml @@ -0,0 +1,34 @@ +[DEFAULT] +support-files = [ + "manifest.json", + "lib/prototype.js", + "src/builder.js", + "src/controls.js", + "src/dragdrop.js", + "src/effects.js", + "src/scriptaculous.js", + "src/slider.js", + "src/sound.js", + "src/unittest.js", + "test/unit/_ajax_inplaceeditor_result.html", + "test/unit/_ajax_inplaceeditor_text.html", + "test/unit/_ajax_updater_result.html", + "test/unit/_autocomplete_result.html", + "test/unit/_autocomplete_result_nobr.html", + "test/unit/ajax_autocompleter_test.html", + "test/unit/ajax_inplaceeditor_test.html", + "test/unit/bdd_test.html", + "test/unit/builder_test.html", + "test/unit/dragdrop_test.html", + "test/unit/effects_test.html", + "test/unit/element_test.html", + "test/unit/icon.png", + "test/unit/loading_test.html", + "test/unit/position_clone_test.html", + "test/unit/slider_test.html", + "test/unit/sortable_test.html", + "test/unit/string_test.html", + "test/unit/unit_test.html", +] + +["test_Scriptaculous.html"] diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/builder.js b/dom/tests/mochitest/ajax/scriptaculous/src/builder.js new file mode 100644 index 0000000000..0cf631b19d --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/builder.js @@ -0,0 +1,136 @@ +// script.aculo.us builder.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +var Builder = { + NODEMAP: { + AREA: 'map', + CAPTION: 'table', + COL: 'table', + COLGROUP: 'table', + LEGEND: 'fieldset', + OPTGROUP: 'select', + OPTION: 'select', + PARAM: 'object', + TBODY: 'table', + TD: 'table', + TFOOT: 'table', + TH: 'table', + THEAD: 'table', + TR: 'table' + }, + // note: For Firefox < 1.5, OPTION and OPTGROUP tags are currently broken, + // due to a Firefox bug + node: function(elementName) { + elementName = elementName.toUpperCase(); + + // try innerHTML approach + var parentTag = this.NODEMAP[elementName] || 'div'; + var parentElement = document.createElement(parentTag); + try { // prevent IE "feature": http://dev.rubyonrails.org/ticket/2707 + parentElement.innerHTML = "<" + elementName + ">"; + } catch(e) {} + var element = parentElement.firstChild || null; + + // see if browser added wrapping tags + if(element && (element.tagName.toUpperCase() != elementName)) + element = element.getElementsByTagName(elementName)[0]; + + // fallback to createElement approach + if(!element) element = document.createElement(elementName); + + // abort if nothing could be created + if(!element) return; + + // attributes (or text) + if(arguments[1]) + if(this._isStringOrNumber(arguments[1]) || + (arguments[1] instanceof Array) || + arguments[1].tagName) { + this._children(element, arguments[1]); + } else { + var attrs = this._attributes(arguments[1]); + if(attrs.length) { + try { // prevent IE "feature": http://dev.rubyonrails.org/ticket/2707 + parentElement.innerHTML = "<" +elementName + " " + + attrs + ">"; + } catch(e) {} + element = parentElement.firstChild || null; + // workaround firefox 1.0.X bug + if(!element) { + element = document.createElement(elementName); + for(attr in arguments[1]) + element[attr == 'class' ? 'className' : attr] = arguments[1][attr]; + } + if(element.tagName.toUpperCase() != elementName) + element = parentElement.getElementsByTagName(elementName)[0]; + } + } + + // text, or array of children + if(arguments[2]) + this._children(element, arguments[2]); + + return element; + }, + _text: function(text) { + return document.createTextNode(text); + }, + + ATTR_MAP: { + 'className': 'class', + 'htmlFor': 'for' + }, + + _attributes: function(attributes) { + var attrs = []; + for(attribute in attributes) + attrs.push((attribute in this.ATTR_MAP ? this.ATTR_MAP[attribute] : attribute) + + '="' + attributes[attribute].toString().escapeHTML().gsub(/"/,'"') + '"'); + return attrs.join(" "); + }, + _children: function(element, children) { + if(children.tagName) { + element.appendChild(children); + return; + } + if(typeof children=='object') { // array can hold nodes and text + children.flatten().each( function(e) { + if(typeof e=='object') + element.appendChild(e) + else + if(Builder._isStringOrNumber(e)) + element.appendChild(Builder._text(e)); + }); + } else + if(Builder._isStringOrNumber(children)) + element.appendChild(Builder._text(children)); + }, + _isStringOrNumber: function(param) { + return(typeof param=='string' || typeof param=='number'); + }, + build: function(html) { + var element = this.node('div'); + $(element).update(html.strip()); + return element.down(); + }, + dump: function(scope) { + if(typeof scope != 'object' && typeof scope != 'function') scope = window; //global scope + + var tags = ("A ABBR ACRONYM ADDRESS APPLET AREA B BASE BASEFONT BDO BIG BLOCKQUOTE BODY " + + "BR BUTTON CAPTION CENTER CITE CODE COL COLGROUP DD DEL DFN DIR DIV DL DT EM FIELDSET " + + "FONT FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HR HTML I IFRAME IMG INPUT INS ISINDEX "+ + "KBD LABEL LEGEND LI LINK MAP MENU META NOFRAMES NOSCRIPT OBJECT OL OPTGROUP OPTION P "+ + "PARAM PRE Q S SAMP SCRIPT SELECT SMALL SPAN STRIKE STRONG STYLE SUB SUP TABLE TBODY TD "+ + "TEXTAREA TFOOT TH THEAD TITLE TR TT U UL VAR").split(/\s+/); + + tags.each( function(tag){ + scope[tag] = function() { + return Builder.node.apply(Builder, [tag].concat($A(arguments))); + } + }); + } +} diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/controls.js b/dom/tests/mochitest/ajax/scriptaculous/src/controls.js new file mode 100644 index 0000000000..7d4f16ece0 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/controls.js @@ -0,0 +1,875 @@ +// script.aculo.us controls.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005-2007 Ivan Krstic (http://blogs.law.harvard.edu/ivan) +// (c) 2005-2007 Jon Tirsen (http://www.tirsen.com) +// Contributors: +// Richard Livsey +// Rahul Bhargava +// Rob Wills +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// Autocompleter.Base handles all the autocompletion functionality +// that's independent of the data source for autocompletion. This +// includes drawing the autocompletion menu, observing keyboard +// and mouse events, and similar. +// +// Specific autocompleters need to provide, at the very least, +// a getUpdatedChoices function that will be invoked every time +// the text inside the monitored textbox changes. This method +// should get the text for which to provide autocompletion by +// invoking this.getToken(), NOT by directly accessing +// this.element.value. This is to allow incremental tokenized +// autocompletion. Specific auto-completion logic (AJAX, etc) +// belongs in getUpdatedChoices. +// +// Tokenized incremental autocompletion is enabled automatically +// when an autocompleter is instantiated with the 'tokens' option +// in the options parameter, e.g.: +// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' }); +// will incrementally autocomplete with a comma as the token. +// Additionally, ',' in the above example can be replaced with +// a token array, e.g. { tokens: [',', '\n'] } which +// enables autocompletion on multiple tokens. This is most +// useful when one of the tokens is \n (a newline), as it +// allows smart autocompletion after linebreaks. + +if(typeof Effect == 'undefined') + throw("controls.js requires including script.aculo.us' effects.js library"); + +var Autocompleter = {} +Autocompleter.Base = function() {}; +Autocompleter.Base.prototype = { + baseInitialize: function(element, update, options) { + element = $(element) + this.element = element; + this.update = $(update); + this.hasFocus = false; + this.changed = false; + this.active = false; + this.index = 0; + this.entryCount = 0; + + if(this.setOptions) + this.setOptions(options); + else + this.options = options || {}; + + this.options.paramName = this.options.paramName || this.element.name; + this.options.tokens = this.options.tokens || []; + this.options.frequency = this.options.frequency || 0.4; + this.options.minChars = this.options.minChars || 1; + this.options.onShow = this.options.onShow || + function(element, update){ + if(!update.style.position || update.style.position=='absolute') { + update.style.position = 'absolute'; + Position.clone(element, update, { + setHeight: false, + offsetTop: element.offsetHeight + }); + } + Effect.Appear(update,{duration:0.15}); + }; + this.options.onHide = this.options.onHide || + function(element, update){ new Effect.Fade(update,{duration:0.15}) }; + + if(typeof(this.options.tokens) == 'string') + this.options.tokens = new Array(this.options.tokens); + + this.observer = null; + + this.element.setAttribute('autocomplete','off'); + + Element.hide(this.update); + + Event.observe(this.element, 'blur', this.onBlur.bindAsEventListener(this)); + Event.observe(this.element, 'keypress', this.onKeyPress.bindAsEventListener(this)); + + // Turn autocomplete back on when the user leaves the page, so that the + // field's value will be remembered on Mozilla-based browsers. + Event.observe(window, 'beforeunload', function(){ + element.setAttribute('autocomplete', 'on'); + }); + }, + + show: function() { + if(Element.getStyle(this.update, 'display')=='none') this.options.onShow(this.element, this.update); + if(!this.iefix && + (Prototype.Browser.IE) && + (Element.getStyle(this.update, 'position')=='absolute')) { + new Insertion.After(this.update, + ''); + this.iefix = $(this.update.id+'_iefix'); + } + if(this.iefix) setTimeout(this.fixIEOverlapping.bind(this), 50); + }, + + fixIEOverlapping: function() { + Position.clone(this.update, this.iefix, {setTop:(!this.update.style.height)}); + this.iefix.style.zIndex = 1; + this.update.style.zIndex = 2; + Element.show(this.iefix); + }, + + hide: function() { + this.stopIndicator(); + if(Element.getStyle(this.update, 'display')!='none') this.options.onHide(this.element, this.update); + if(this.iefix) Element.hide(this.iefix); + }, + + startIndicator: function() { + if(this.options.indicator) Element.show(this.options.indicator); + }, + + stopIndicator: function() { + if(this.options.indicator) Element.hide(this.options.indicator); + }, + + onKeyPress: function(event) { + if(this.active) + switch(event.keyCode) { + case Event.KEY_TAB: + case Event.KEY_RETURN: + this.selectEntry(); + Event.stop(event); + case Event.KEY_ESC: + this.hide(); + this.active = false; + Event.stop(event); + return; + case Event.KEY_LEFT: + case Event.KEY_RIGHT: + return; + case Event.KEY_UP: + this.markPrevious(); + this.render(); + if(Prototype.Browser.WebKit) Event.stop(event); + return; + case Event.KEY_DOWN: + this.markNext(); + this.render(); + if(Prototype.Browser.WebKit) Event.stop(event); + return; + } + else + if(event.keyCode==Event.KEY_TAB || event.keyCode==Event.KEY_RETURN || + (Prototype.Browser.WebKit > 0 && event.keyCode == 0)) return; + + this.changed = true; + this.hasFocus = true; + + if(this.observer) clearTimeout(this.observer); + this.observer = + setTimeout(this.onObserverEvent.bind(this), this.options.frequency*1000); + }, + + activate: function() { + this.changed = false; + this.hasFocus = true; + this.getUpdatedChoices(); + }, + + onHover: function(event) { + var element = Event.findElement(event, 'LI'); + if(this.index != element.autocompleteIndex) + { + this.index = element.autocompleteIndex; + this.render(); + } + Event.stop(event); + }, + + onClick: function(event) { + var element = Event.findElement(event, 'LI'); + this.index = element.autocompleteIndex; + this.selectEntry(); + this.hide(); + }, + + onBlur: function(event) { + // needed to make click events working + setTimeout(this.hide.bind(this), 250); + this.hasFocus = false; + this.active = false; + }, + + render: function() { + if(this.entryCount > 0) { + for (var i = 0; i < this.entryCount; i++) + this.index==i ? + Element.addClassName(this.getEntry(i),"selected") : + Element.removeClassName(this.getEntry(i),"selected"); + if(this.hasFocus) { + this.show(); + this.active = true; + } + } else { + this.active = false; + this.hide(); + } + }, + + markPrevious: function() { + if(this.index > 0) this.index-- + else this.index = this.entryCount-1; + this.getEntry(this.index).scrollIntoView(true); + }, + + markNext: function() { + if(this.index < this.entryCount-1) this.index++ + else this.index = 0; + this.getEntry(this.index).scrollIntoView(false); + }, + + getEntry: function(index) { + return this.update.firstChild.childNodes[index]; + }, + + getCurrentEntry: function() { + return this.getEntry(this.index); + }, + + selectEntry: function() { + this.active = false; + this.updateElement(this.getCurrentEntry()); + }, + + updateElement: function(selectedElement) { + if (this.options.updateElement) { + this.options.updateElement(selectedElement); + return; + } + var value = ''; + if (this.options.select) { + var nodes = document.getElementsByClassName(this.options.select, selectedElement) || []; + if(nodes.length>0) value = Element.collectTextNodes(nodes[0], this.options.select); + } else + value = Element.collectTextNodesIgnoreClass(selectedElement, 'informal'); + + var lastTokenPos = this.findLastToken(); + if (lastTokenPos != -1) { + var newValue = this.element.value.substr(0, lastTokenPos + 1); + var whitespace = this.element.value.substr(lastTokenPos + 1).match(/^\s+/); + if (whitespace) + newValue += whitespace[0]; + this.element.value = newValue + value; + } else { + this.element.value = value; + } + this.element.focus(); + + if (this.options.afterUpdateElement) + this.options.afterUpdateElement(this.element, selectedElement); + }, + + updateChoices: function(choices) { + if(!this.changed && this.hasFocus) { + this.update.innerHTML = choices; + Element.cleanWhitespace(this.update); + Element.cleanWhitespace(this.update.down()); + + if(this.update.firstChild && this.update.down().childNodes) { + this.entryCount = + this.update.down().childNodes.length; + for (var i = 0; i < this.entryCount; i++) { + var entry = this.getEntry(i); + entry.autocompleteIndex = i; + this.addObservers(entry); + } + } else { + this.entryCount = 0; + } + + this.stopIndicator(); + this.index = 0; + + if(this.entryCount==1 && this.options.autoSelect) { + this.selectEntry(); + this.hide(); + } else { + this.render(); + } + } + }, + + addObservers: function(element) { + Event.observe(element, "mouseover", this.onHover.bindAsEventListener(this)); + Event.observe(element, "click", this.onClick.bindAsEventListener(this)); + }, + + onObserverEvent: function() { + this.changed = false; + if(this.getToken().length>=this.options.minChars) { + this.getUpdatedChoices(); + } else { + this.active = false; + this.hide(); + } + }, + + getToken: function() { + var tokenPos = this.findLastToken(); + if (tokenPos != -1) + var ret = this.element.value.substr(tokenPos + 1).replace(/^\s+/,'').replace(/\s+$/,''); + else + var ret = this.element.value; + + return /\n/.test(ret) ? '' : ret; + }, + + findLastToken: function() { + var lastTokenPos = -1; + + for (var i=0; i lastTokenPos) + lastTokenPos = thisTokenPos; + } + return lastTokenPos; + } +} + +Ajax.Autocompleter = Class.create(); +Object.extend(Object.extend(Ajax.Autocompleter.prototype, Autocompleter.Base.prototype), { + initialize: function(element, update, url, options) { + this.baseInitialize(element, update, options); + this.options.asynchronous = true; + this.options.onComplete = this.onComplete.bind(this); + this.options.defaultParams = this.options.parameters || null; + this.url = url; + }, + + getUpdatedChoices: function() { + this.startIndicator(); + + var entry = encodeURIComponent(this.options.paramName) + '=' + + encodeURIComponent(this.getToken()); + + this.options.parameters = this.options.callback ? + this.options.callback(this.element, entry) : entry; + + if(this.options.defaultParams) + this.options.parameters += '&' + this.options.defaultParams; + + new Ajax.Request(this.url, this.options); + }, + + onComplete: function(request) { + this.updateChoices(request.responseText); + } + +}); + +// The local array autocompleter. Used when you'd prefer to +// inject an array of autocompletion options into the page, rather +// than sending out Ajax queries, which can be quite slow sometimes. +// +// The constructor takes four parameters. The first two are, as usual, +// the id of the monitored textbox, and id of the autocompletion menu. +// The third is the array you want to autocomplete from, and the fourth +// is the options block. +// +// Extra local autocompletion options: +// - choices - How many autocompletion choices to offer +// +// - partialSearch - If false, the autocompleter will match entered +// text only at the beginning of strings in the +// autocomplete array. Defaults to true, which will +// match text at the beginning of any *word* in the +// strings in the autocomplete array. If you want to +// search anywhere in the string, additionally set +// the option fullSearch to true (default: off). +// +// - fullSsearch - Search anywhere in autocomplete array strings. +// +// - partialChars - How many characters to enter before triggering +// a partial match (unlike minChars, which defines +// how many characters are required to do any match +// at all). Defaults to 2. +// +// - ignoreCase - Whether to ignore case when autocompleting. +// Defaults to true. +// +// It's possible to pass in a custom function as the 'selector' +// option, if you prefer to write your own autocompletion logic. +// In that case, the other options above will not apply unless +// you support them. + +Autocompleter.Local = Class.create(); +Autocompleter.Local.prototype = Object.extend(new Autocompleter.Base(), { + initialize: function(element, update, array, options) { + this.baseInitialize(element, update, options); + this.options.array = array; + }, + + getUpdatedChoices: function() { + this.updateChoices(this.options.selector(this)); + }, + + setOptions: function(options) { + this.options = Object.extend({ + choices: 10, + partialSearch: true, + partialChars: 2, + ignoreCase: true, + fullSearch: false, + selector: function(instance) { + var ret = []; // Beginning matches + var partial = []; // Inside matches + var entry = instance.getToken(); + var count = 0; + + for (var i = 0; i < instance.options.array.length && + ret.length < instance.options.choices ; i++) { + + var elem = instance.options.array[i]; + var foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase()) : + elem.indexOf(entry); + + while (foundPos != -1) { + if (foundPos == 0 && elem.length != entry.length) { + ret.push("
    1. " + elem.substr(0, entry.length) + "" + + elem.substr(entry.length) + "
    2. "); + break; + } else if (entry.length >= instance.options.partialChars && + instance.options.partialSearch && foundPos != -1) { + if (instance.options.fullSearch || /\s/.test(elem.substr(foundPos-1,1))) { + partial.push("
    3. " + elem.substr(0, foundPos) + "" + + elem.substr(foundPos, entry.length) + "" + elem.substr( + foundPos + entry.length) + "
    4. "); + break; + } + } + + foundPos = instance.options.ignoreCase ? + elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + 1) : + elem.indexOf(entry, foundPos + 1); + + } + } + if (partial.length) + ret = ret.concat(partial.slice(0, instance.options.choices - ret.length)) + return "
        " + ret.join('') + "
      "; + } + }, options || {}); + } +}); + +// AJAX in-place editor +// +// see documentation on http://wiki.script.aculo.us/scriptaculous/show/Ajax.InPlaceEditor + +// Use this if you notice weird scrolling problems on some browsers, +// the DOM might be a bit confused when this gets called so do this +// waits 1 ms (with setTimeout) until it does the activation +Field.scrollFreeActivate = function(field) { + setTimeout(function() { + Field.activate(field); + }, 1); +} + +Ajax.InPlaceEditor = Class.create(); +Ajax.InPlaceEditor.defaultHighlightColor = "#FFFF99"; +Ajax.InPlaceEditor.prototype = { + initialize: function(element, url, options) { + this.url = url; + this.element = $(element); + + this.options = Object.extend({ + paramName: "value", + okButton: true, + okLink: false, + okText: "ok", + cancelButton: false, + cancelLink: true, + cancelText: "cancel", + textBeforeControls: '', + textBetweenControls: '', + textAfterControls: '', + savingText: "Saving...", + clickToEditText: "Click to edit", + okText: "ok", + rows: 1, + onComplete: function(transport, element) { + new Effect.Highlight(element, {startcolor: this.options.highlightcolor}); + }, + onFailure: function(transport) { + alert("Error communicating with the server: " + transport.responseText.stripTags()); + }, + callback: function(form) { + return Form.serialize(form); + }, + handleLineBreaks: true, + loadingText: 'Loading...', + savingClassName: 'inplaceeditor-saving', + loadingClassName: 'inplaceeditor-loading', + formClassName: 'inplaceeditor-form', + highlightcolor: Ajax.InPlaceEditor.defaultHighlightColor, + highlightendcolor: "#FFFFFF", + externalControl: null, + submitOnBlur: false, + ajaxOptions: {}, + evalScripts: false + }, options || {}); + + if(!this.options.formId && this.element.id) { + this.options.formId = this.element.id + "-inplaceeditor"; + if ($(this.options.formId)) { + // there's already a form with that name, don't specify an id + this.options.formId = null; + } + } + + if (this.options.externalControl) { + this.options.externalControl = $(this.options.externalControl); + } + + this.originalBackground = Element.getStyle(this.element, 'background-color'); + if (!this.originalBackground) { + this.originalBackground = "transparent"; + } + + this.element.title = this.options.clickToEditText; + + this.onclickListener = this.enterEditMode.bindAsEventListener(this); + this.mouseoverListener = this.enterHover.bindAsEventListener(this); + this.mouseoutListener = this.leaveHover.bindAsEventListener(this); + Event.observe(this.element, 'click', this.onclickListener); + Event.observe(this.element, 'mouseover', this.mouseoverListener); + Event.observe(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.observe(this.options.externalControl, 'click', this.onclickListener); + Event.observe(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.observe(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + }, + enterEditMode: function(evt) { + if (this.saving) return; + if (this.editing) return; + this.editing = true; + this.onEnterEditMode(); + if (this.options.externalControl) { + Element.hide(this.options.externalControl); + } + Element.hide(this.element); + this.createForm(); + this.element.parentNode.insertBefore(this.form, this.element); + if (!this.options.loadTextURL) Field.scrollFreeActivate(this.editField); + // stop the event to avoid a page refresh in Safari + if (evt) { + Event.stop(evt); + } + return false; + }, + createForm: function() { + this.form = document.createElement("form"); + this.form.id = this.options.formId; + Element.addClassName(this.form, this.options.formClassName) + this.form.onsubmit = this.onSubmit.bind(this); + + this.createEditField(); + + if (this.options.textarea) { + var br = document.createElement("br"); + this.form.appendChild(br); + } + + if (this.options.textBeforeControls) + this.form.appendChild(document.createTextNode(this.options.textBeforeControls)); + + if (this.options.okButton) { + var okButton = document.createElement("input"); + okButton.type = "submit"; + okButton.value = this.options.okText; + okButton.className = 'editor_ok_button'; + this.form.appendChild(okButton); + } + + if (this.options.okLink) { + var okLink = document.createElement("a"); + okLink.href = "#"; + okLink.appendChild(document.createTextNode(this.options.okText)); + okLink.onclick = this.onSubmit.bind(this); + okLink.className = 'editor_ok_link'; + this.form.appendChild(okLink); + } + + if (this.options.textBetweenControls && + (this.options.okLink || this.options.okButton) && + (this.options.cancelLink || this.options.cancelButton)) + this.form.appendChild(document.createTextNode(this.options.textBetweenControls)); + + if (this.options.cancelButton) { + var cancelButton = document.createElement("input"); + cancelButton.type = "submit"; + cancelButton.value = this.options.cancelText; + cancelButton.onclick = this.onclickCancel.bind(this); + cancelButton.className = 'editor_cancel_button'; + this.form.appendChild(cancelButton); + } + + if (this.options.cancelLink) { + var cancelLink = document.createElement("a"); + cancelLink.href = "#"; + cancelLink.appendChild(document.createTextNode(this.options.cancelText)); + cancelLink.onclick = this.onclickCancel.bind(this); + cancelLink.className = 'editor_cancel editor_cancel_link'; + this.form.appendChild(cancelLink); + } + + if (this.options.textAfterControls) + this.form.appendChild(document.createTextNode(this.options.textAfterControls)); + }, + hasHTMLLineBreaks: function(string) { + if (!this.options.handleLineBreaks) return false; + return string.match(/
      /i); + }, + convertHTMLLineBreaks: function(string) { + return string.replace(/
      /gi, "\n").replace(//gi, "\n").replace(/<\/p>/gi, "\n").replace(/

      /gi, ""); + }, + createEditField: function() { + var text; + if(this.options.loadTextURL) { + text = this.options.loadingText; + } else { + text = this.getText(); + } + + var obj = this; + + if (this.options.rows == 1 && !this.hasHTMLLineBreaks(text)) { + this.options.textarea = false; + var textField = document.createElement("input"); + textField.obj = this; + textField.type = "text"; + textField.name = this.options.paramName; + textField.value = text; + textField.style.backgroundColor = this.options.highlightcolor; + textField.className = 'editor_field'; + var size = this.options.size || this.options.cols || 0; + if (size != 0) textField.size = size; + if (this.options.submitOnBlur) + textField.onblur = this.onSubmit.bind(this); + this.editField = textField; + } else { + this.options.textarea = true; + var textArea = document.createElement("textarea"); + textArea.obj = this; + textArea.name = this.options.paramName; + textArea.value = this.convertHTMLLineBreaks(text); + textArea.rows = this.options.rows; + textArea.cols = this.options.cols || 40; + textArea.className = 'editor_field'; + if (this.options.submitOnBlur) + textArea.onblur = this.onSubmit.bind(this); + this.editField = textArea; + } + + if(this.options.loadTextURL) { + this.loadExternalText(); + } + this.form.appendChild(this.editField); + }, + getText: function() { + return this.element.innerHTML; + }, + loadExternalText: function() { + Element.addClassName(this.form, this.options.loadingClassName); + this.editField.disabled = true; + new Ajax.Request( + this.options.loadTextURL, + Object.extend({ + asynchronous: true, + onComplete: this.onLoadedExternalText.bind(this) + }, this.options.ajaxOptions) + ); + }, + onLoadedExternalText: function(transport) { + Element.removeClassName(this.form, this.options.loadingClassName); + this.editField.disabled = false; + this.editField.value = transport.responseText.stripTags(); + Field.scrollFreeActivate(this.editField); + }, + onclickCancel: function() { + this.onComplete(); + this.leaveEditMode(); + return false; + }, + onFailure: function(transport) { + this.options.onFailure(transport); + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + this.oldInnerHTML = null; + } + return false; + }, + onSubmit: function() { + // onLoading resets these so we need to save them away for the Ajax call + var form = this.form; + var value = this.editField.value; + + // do this first, sometimes the ajax call returns before we get a chance to switch on Saving... + // which means this will actually switch on Saving... *after* we've left edit mode causing Saving... + // to be displayed indefinitely + this.onLoading(); + + if (this.options.evalScripts) { + new Ajax.Request( + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this), + asynchronous:true, + evalScripts:true + }, this.options.ajaxOptions)); + } else { + new Ajax.Updater( + { success: this.element, + // don't update on failure (this could be an option) + failure: null }, + this.url, Object.extend({ + parameters: this.options.callback(form, value), + onComplete: this.onComplete.bind(this), + onFailure: this.onFailure.bind(this) + }, this.options.ajaxOptions)); + } + // stop the event to avoid a page refresh in Safari + if (arguments.length > 1) { + Event.stop(arguments[0]); + } + return false; + }, + onLoading: function() { + this.saving = true; + this.removeForm(); + this.leaveHover(); + this.showSaving(); + }, + showSaving: function() { + this.oldInnerHTML = this.element.innerHTML; + this.element.innerHTML = this.options.savingText; + Element.addClassName(this.element, this.options.savingClassName); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + }, + removeForm: function() { + if(this.form) { + if (this.form.parentNode) Element.remove(this.form); + this.form = null; + } + }, + enterHover: function() { + if (this.saving) return; + this.element.style.backgroundColor = this.options.highlightcolor; + if (this.effect) { + this.effect.cancel(); + } + Element.addClassName(this.element, this.options.hoverClassName) + }, + leaveHover: function() { + if (this.options.backgroundColor) { + this.element.style.backgroundColor = this.oldBackground; + } + Element.removeClassName(this.element, this.options.hoverClassName) + if (this.saving) return; + this.effect = new Effect.Highlight(this.element, { + startcolor: this.options.highlightcolor, + endcolor: this.options.highlightendcolor, + restorecolor: this.originalBackground + }); + }, + leaveEditMode: function() { + Element.removeClassName(this.element, this.options.savingClassName); + this.removeForm(); + this.leaveHover(); + this.element.style.backgroundColor = this.originalBackground; + Element.show(this.element); + if (this.options.externalControl) { + Element.show(this.options.externalControl); + } + this.editing = false; + this.saving = false; + this.oldInnerHTML = null; + this.onLeaveEditMode(); + }, + onComplete: function(transport) { + this.leaveEditMode(); + this.options.onComplete.bind(this)(transport, this.element); + }, + onEnterEditMode: function() {}, + onLeaveEditMode: function() {}, + dispose: function() { + if (this.oldInnerHTML) { + this.element.innerHTML = this.oldInnerHTML; + } + this.leaveEditMode(); + Event.stopObserving(this.element, 'click', this.onclickListener); + Event.stopObserving(this.element, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.element, 'mouseout', this.mouseoutListener); + if (this.options.externalControl) { + Event.stopObserving(this.options.externalControl, 'click', this.onclickListener); + Event.stopObserving(this.options.externalControl, 'mouseover', this.mouseoverListener); + Event.stopObserving(this.options.externalControl, 'mouseout', this.mouseoutListener); + } + } +}; + +Ajax.InPlaceCollectionEditor = Class.create(); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, Ajax.InPlaceEditor.prototype); +Object.extend(Ajax.InPlaceCollectionEditor.prototype, { + createEditField: function() { + if (!this.cached_selectTag) { + var selectTag = document.createElement("select"); + var collection = this.options.collection || []; + var optionTag; + collection.each(function(e,i) { + optionTag = document.createElement("option"); + optionTag.value = (e instanceof Array) ? e[0] : e; + if((typeof this.options.value == 'undefined') && + ((e instanceof Array) ? this.element.innerHTML == e[1] : e == optionTag.value)) optionTag.selected = true; + if(this.options.value==optionTag.value) optionTag.selected = true; + optionTag.appendChild(document.createTextNode((e instanceof Array) ? e[1] : e)); + selectTag.appendChild(optionTag); + }.bind(this)); + this.cached_selectTag = selectTag; + } + + this.editField = this.cached_selectTag; + if(this.options.loadTextURL) this.loadExternalText(); + this.form.appendChild(this.editField); + this.options.callback = function(form, value) { + return "value=" + encodeURIComponent(value); + } + } +}); + +// Delayed observer, like Form.Element.Observer, +// but waits for delay after last key input +// Ideal for live-search fields + +Form.Element.DelayedObserver = Class.create(); +Form.Element.DelayedObserver.prototype = { + initialize: function(element, delay, callback) { + this.delay = delay || 0.5; + this.element = $(element); + this.callback = callback; + this.timer = null; + this.lastValue = $F(this.element); + Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this)); + }, + delayedListener: function(event) { + if(this.lastValue == $F(this.element)) return; + if(this.timer) clearTimeout(this.timer); + this.timer = setTimeout(this.onTimerEvent.bind(this), this.delay * 1000); + this.lastValue = $F(this.element); + }, + onTimerEvent: function() { + this.timer = null; + this.callback(this.element, $F(this.element)); + } +}; diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/dragdrop.js b/dom/tests/mochitest/ajax/scriptaculous/src/dragdrop.js new file mode 100644 index 0000000000..10c7c93264 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/dragdrop.js @@ -0,0 +1,970 @@ +// script.aculo.us dragdrop.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005-2007 Sammi Williams (http://www.oriontransfer.co.nz, sammi@oriontransfer.co.nz) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +if(typeof Effect == 'undefined') + throw("dragdrop.js requires including script.aculo.us' effects.js library"); + +var Droppables = { + drops: [], + + remove: function(element) { + this.drops = this.drops.reject(function(d) { return d.element==$(element) }); + }, + + add: function(element) { + element = $(element); + var options = Object.extend({ + greedy: true, + hoverclass: null, + tree: false + }, arguments[1] || {}); + + // cache containers + if(options.containment) { + options._containers = []; + var containment = options.containment; + if((typeof containment == 'object') && + (containment.constructor == Array)) { + containment.each( function(c) { options._containers.push($(c)) }); + } else { + options._containers.push($(containment)); + } + } + + if(options.accept) options.accept = [options.accept].flatten(); + + Element.makePositioned(element); // fix IE + options.element = element; + + this.drops.push(options); + }, + + findDeepestChild: function(drops) { + deepest = drops[0]; + + for (i = 1; i < drops.length; ++i) + if (Element.isParent(drops[i].element, deepest.element)) + deepest = drops[i]; + + return deepest; + }, + + isContained: function(element, drop) { + var containmentNode; + if(drop.tree) { + containmentNode = element.treeNode; + } else { + containmentNode = element.parentNode; + } + return drop._containers.detect(function(c) { return containmentNode == c }); + }, + + isAffected: function(point, element, drop) { + return ( + (drop.element!=element) && + ((!drop._containers) || + this.isContained(element, drop)) && + ((!drop.accept) || + (Element.classNames(element).detect( + function(v) { return drop.accept.include(v) } ) )) && + Position.within(drop.element, point[0], point[1]) ); + }, + + deactivate: function(drop) { + if(drop.hoverclass) + Element.removeClassName(drop.element, drop.hoverclass); + this.last_active = null; + }, + + activate: function(drop) { + if(drop.hoverclass) + Element.addClassName(drop.element, drop.hoverclass); + this.last_active = drop; + }, + + show: function(point, element) { + if(!this.drops.length) return; + var affected = []; + + if(this.last_active) this.deactivate(this.last_active); + this.drops.each( function(drop) { + if(Droppables.isAffected(point, element, drop)) + affected.push(drop); + }); + + if(affected.length>0) { + drop = Droppables.findDeepestChild(affected); + Position.within(drop.element, point[0], point[1]); + if(drop.onHover) + drop.onHover(element, drop.element, Position.overlap(drop.overlap, drop.element)); + + Droppables.activate(drop); + } + }, + + fire: function(event, element) { + if(!this.last_active) return; + Position.prepare(); + + if (this.isAffected([Event.pointerX(event), Event.pointerY(event)], element, this.last_active)) + if (this.last_active.onDrop) { + this.last_active.onDrop(element, this.last_active.element, event); + return true; + } + }, + + reset: function() { + if(this.last_active) + this.deactivate(this.last_active); + } +} + +var Draggables = { + drags: [], + observers: [], + + register: function(draggable) { + if(this.drags.length == 0) { + this.eventMouseUp = this.endDrag.bindAsEventListener(this); + this.eventMouseMove = this.updateDrag.bindAsEventListener(this); + this.eventKeypress = this.keyPress.bindAsEventListener(this); + + Event.observe(document, "mouseup", this.eventMouseUp); + Event.observe(document, "mousemove", this.eventMouseMove); + Event.observe(document, "keypress", this.eventKeypress); + } + this.drags.push(draggable); + }, + + unregister: function(draggable) { + this.drags = this.drags.reject(function(d) { return d==draggable }); + if(this.drags.length == 0) { + Event.stopObserving(document, "mouseup", this.eventMouseUp); + Event.stopObserving(document, "mousemove", this.eventMouseMove); + Event.stopObserving(document, "keypress", this.eventKeypress); + } + }, + + activate: function(draggable) { + if(draggable.options.delay) { + this._timeout = setTimeout(function() { + Draggables._timeout = null; + window.focus(); + Draggables.activeDraggable = draggable; + }.bind(this), draggable.options.delay); + } else { + window.focus(); // allows keypress events if window isn't currently focused, fails for Safari + this.activeDraggable = draggable; + } + }, + + deactivate: function() { + this.activeDraggable = null; + }, + + updateDrag: function(event) { + if(!this.activeDraggable) return; + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + // Mozilla-based browsers fire successive mousemove events with + // the same coordinates, prevent needless redrawing (moz bug?) + if(this._lastPointer && (this._lastPointer.inspect() == pointer.inspect())) return; + this._lastPointer = pointer; + + this.activeDraggable.updateDrag(event, pointer); + }, + + endDrag: function(event) { + if(this._timeout) { + clearTimeout(this._timeout); + this._timeout = null; + } + if(!this.activeDraggable) return; + this._lastPointer = null; + this.activeDraggable.endDrag(event); + this.activeDraggable = null; + }, + + keyPress: function(event) { + if(this.activeDraggable) + this.activeDraggable.keyPress(event); + }, + + addObserver: function(observer) { + this.observers.push(observer); + this._cacheObserverCallbacks(); + }, + + removeObserver: function(element) { // element instead of observer fixes mem leaks + this.observers = this.observers.reject( function(o) { return o.element==element }); + this._cacheObserverCallbacks(); + }, + + notify: function(eventName, draggable, event) { // 'onStart', 'onEnd', 'onDrag' + if(this[eventName+'Count'] > 0) + this.observers.each( function(o) { + if(o[eventName]) o[eventName](eventName, draggable, event); + }); + if(draggable.options[eventName]) draggable.options[eventName](draggable, event); + }, + + _cacheObserverCallbacks: function() { + ['onStart','onEnd','onDrag'].each( function(eventName) { + Draggables[eventName+'Count'] = Draggables.observers.select( + function(o) { return o[eventName]; } + ).length; + }); + } +} + +/*--------------------------------------------------------------------------*/ + +var Draggable = Class.create(); +Draggable._dragging = {}; + +Draggable.prototype = { + initialize: function(element) { + var defaults = { + handle: false, + reverteffect: function(element, top_offset, left_offset) { + var dur = Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02; + new Effect.Move(element, { x: -left_offset, y: -top_offset, duration: dur, + queue: {scope:'_draggable', position:'end'} + }); + }, + endeffect: function(element) { + var toOpacity = typeof element._opacity == 'number' ? element._opacity : 1.0; + new Effect.Opacity(element, {duration:0.2, from:0.7, to:toOpacity, + queue: {scope:'_draggable', position:'end'}, + afterFinish: function(){ + Draggable._dragging[element] = false + } + }); + }, + zindex: 1000, + revert: false, + quiet: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + snap: false, // false, or xy or [x,y] or function(x,y){ return [x,y] } + delay: 0 + }; + + if(!arguments[1] || typeof arguments[1].endeffect == 'undefined') + Object.extend(defaults, { + starteffect: function(element) { + element._opacity = Element.getOpacity(element); + Draggable._dragging[element] = true; + new Effect.Opacity(element, {duration:0.2, from:element._opacity, to:0.7}); + } + }); + + var options = Object.extend(defaults, arguments[1] || {}); + + this.element = $(element); + + if(options.handle && (typeof options.handle == 'string')) + this.handle = this.element.down('.'+options.handle, 0); + + if(!this.handle) this.handle = $(options.handle); + if(!this.handle) this.handle = this.element; + + if(options.scroll && !options.scroll.scrollTo && !options.scroll.outerHTML) { + options.scroll = $(options.scroll); + this._isScrollChild = Element.childOf(this.element, options.scroll); + } + + Element.makePositioned(this.element); // fix IE + + this.delta = this.currentDelta(); + this.options = options; + this.dragging = false; + + this.eventMouseDown = this.initDrag.bindAsEventListener(this); + Event.observe(this.handle, "mousedown", this.eventMouseDown); + + Draggables.register(this); + }, + + destroy: function() { + Event.stopObserving(this.handle, "mousedown", this.eventMouseDown); + Draggables.unregister(this); + }, + + currentDelta: function() { + return([ + parseInt(Element.getStyle(this.element,'left') || '0'), + parseInt(Element.getStyle(this.element,'top') || '0')]); + }, + + initDrag: function(event) { + if(typeof Draggable._dragging[this.element] != 'undefined' && + Draggable._dragging[this.element]) return; + if(Event.isLeftClick(event)) { + // abort on form elements, fixes a Firefox issue + var src = Event.element(event); + if((tag_name = src.tagName.toUpperCase()) && ( + tag_name=='INPUT' || + tag_name=='SELECT' || + tag_name=='OPTION' || + tag_name=='BUTTON' || + tag_name=='TEXTAREA')) return; + + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + var pos = Position.cumulativeOffset(this.element); + this.offset = [0,1].map( function(i) { return (pointer[i] - pos[i]) }); + + Draggables.activate(this); + Event.stop(event); + } + }, + + startDrag: function(event) { + this.dragging = true; + + if(this.options.zindex) { + this.originalZ = parseInt(Element.getStyle(this.element,'z-index') || 0); + this.element.style.zIndex = this.options.zindex; + } + + if(this.options.ghosting) { + this._clone = this.element.cloneNode(true); + Position.absolutize(this.element); + this.element.parentNode.insertBefore(this._clone, this.element); + } + + if(this.options.scroll) { + if (this.options.scroll == window) { + var where = this._getWindowScroll(this.options.scroll); + this.originalScrollLeft = where.left; + this.originalScrollTop = where.top; + } else { + this.originalScrollLeft = this.options.scroll.scrollLeft; + this.originalScrollTop = this.options.scroll.scrollTop; + } + } + + Draggables.notify('onStart', this, event); + + if(this.options.starteffect) this.options.starteffect(this.element); + }, + + updateDrag: function(event, pointer) { + if(!this.dragging) this.startDrag(event); + + if(!this.options.quiet){ + Position.prepare(); + Droppables.show(pointer, this.element); + } + + Draggables.notify('onDrag', this, event); + + this.draw(pointer); + if(this.options.change) this.options.change(this); + + if(this.options.scroll) { + this.stopScrolling(); + + var p; + if (this.options.scroll == window) { + with(this._getWindowScroll(this.options.scroll)) { p = [ left, top, left+width, top+height ]; } + } else { + p = Position.page(this.options.scroll); + p[0] += this.options.scroll.scrollLeft + Position.deltaX; + p[1] += this.options.scroll.scrollTop + Position.deltaY; + p.push(p[0]+this.options.scroll.offsetWidth); + p.push(p[1]+this.options.scroll.offsetHeight); + } + var speed = [0,0]; + if(pointer[0] < (p[0]+this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[0]+this.options.scrollSensitivity); + if(pointer[1] < (p[1]+this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[1]+this.options.scrollSensitivity); + if(pointer[0] > (p[2]-this.options.scrollSensitivity)) speed[0] = pointer[0]-(p[2]-this.options.scrollSensitivity); + if(pointer[1] > (p[3]-this.options.scrollSensitivity)) speed[1] = pointer[1]-(p[3]-this.options.scrollSensitivity); + this.startScrolling(speed); + } + + // fix AppleWebKit rendering + if(Prototype.Browser.WebKit) window.scrollBy(0,0); + + Event.stop(event); + }, + + finishDrag: function(event, success) { + this.dragging = false; + + if(this.options.quiet){ + Position.prepare(); + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + Droppables.show(pointer, this.element); + } + + if(this.options.ghosting) { + Position.relativize(this.element); + Element.remove(this._clone); + this._clone = null; + } + + var dropped = false; + if(success) { + dropped = Droppables.fire(event, this.element); + if (!dropped) dropped = false; + } + if(dropped && this.options.onDropped) this.options.onDropped(this.element); + Draggables.notify('onEnd', this, event); + + var revert = this.options.revert; + if(revert && typeof revert == 'function') revert = revert(this.element); + + var d = this.currentDelta(); + if(revert && this.options.reverteffect) { + if (dropped == 0 || revert != 'failure') + this.options.reverteffect(this.element, + d[1]-this.delta[1], d[0]-this.delta[0]); + } else { + this.delta = d; + } + + if(this.options.zindex) + this.element.style.zIndex = this.originalZ; + + if(this.options.endeffect) + this.options.endeffect(this.element); + + Draggables.deactivate(this); + Droppables.reset(); + }, + + keyPress: function(event) { + if(event.keyCode!=Event.KEY_ESC) return; + this.finishDrag(event, false); + Event.stop(event); + }, + + endDrag: function(event) { + if(!this.dragging) return; + this.stopScrolling(); + this.finishDrag(event, true); + Event.stop(event); + }, + + draw: function(point) { + var pos = Position.cumulativeOffset(this.element); + if(this.options.ghosting) { + var r = Position.realOffset(this.element); + pos[0] += r[0] - Position.deltaX; pos[1] += r[1] - Position.deltaY; + } + + var d = this.currentDelta(); + pos[0] -= d[0]; pos[1] -= d[1]; + + if(this.options.scroll && (this.options.scroll != window && this._isScrollChild)) { + pos[0] -= this.options.scroll.scrollLeft-this.originalScrollLeft; + pos[1] -= this.options.scroll.scrollTop-this.originalScrollTop; + } + + var p = [0,1].map(function(i){ + return (point[i]-pos[i]-this.offset[i]) + }.bind(this)); + + if(this.options.snap) { + if(typeof this.options.snap == 'function') { + p = this.options.snap(p[0],p[1],this); + } else { + if(this.options.snap instanceof Array) { + p = p.map( function(v, i) { + return Math.round(v/this.options.snap[i])*this.options.snap[i] }.bind(this)) + } else { + p = p.map( function(v) { + return Math.round(v/this.options.snap)*this.options.snap }.bind(this)) + } + }} + + var style = this.element.style; + if((!this.options.constraint) || (this.options.constraint=='horizontal')) + style.left = p[0] + "px"; + if((!this.options.constraint) || (this.options.constraint=='vertical')) + style.top = p[1] + "px"; + + if(style.visibility=="hidden") style.visibility = ""; // fix gecko rendering + }, + + stopScrolling: function() { + if(this.scrollInterval) { + clearInterval(this.scrollInterval); + this.scrollInterval = null; + Draggables._lastScrollPointer = null; + } + }, + + startScrolling: function(speed) { + if(!(speed[0] || speed[1])) return; + this.scrollSpeed = [speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed]; + this.lastScrolled = new Date(); + this.scrollInterval = setInterval(this.scroll.bind(this), 10); + }, + + scroll: function() { + var current = new Date(); + var delta = current - this.lastScrolled; + this.lastScrolled = current; + if(this.options.scroll == window) { + with (this._getWindowScroll(this.options.scroll)) { + if (this.scrollSpeed[0] || this.scrollSpeed[1]) { + var d = delta / 1000; + this.options.scroll.scrollTo( left + d*this.scrollSpeed[0], top + d*this.scrollSpeed[1] ); + } + } + } else { + this.options.scroll.scrollLeft += this.scrollSpeed[0] * delta / 1000; + this.options.scroll.scrollTop += this.scrollSpeed[1] * delta / 1000; + } + + Position.prepare(); + Droppables.show(Draggables._lastPointer, this.element); + Draggables.notify('onDrag', this); + if (this._isScrollChild) { + Draggables._lastScrollPointer = Draggables._lastScrollPointer || $A(Draggables._lastPointer); + Draggables._lastScrollPointer[0] += this.scrollSpeed[0] * delta / 1000; + Draggables._lastScrollPointer[1] += this.scrollSpeed[1] * delta / 1000; + if (Draggables._lastScrollPointer[0] < 0) + Draggables._lastScrollPointer[0] = 0; + if (Draggables._lastScrollPointer[1] < 0) + Draggables._lastScrollPointer[1] = 0; + this.draw(Draggables._lastScrollPointer); + } + + if(this.options.change) this.options.change(this); + }, + + _getWindowScroll: function(w) { + var T, L, W, H; + with (w.document) { + if (w.document.documentElement && documentElement.scrollTop) { + T = documentElement.scrollTop; + L = documentElement.scrollLeft; + } else if (w.document.body) { + T = body.scrollTop; + L = body.scrollLeft; + } + if (w.innerWidth) { + W = w.innerWidth; + H = w.innerHeight; + } else if (w.document.documentElement && documentElement.clientWidth) { + W = documentElement.clientWidth; + H = documentElement.clientHeight; + } else { + W = body.offsetWidth; + H = body.offsetHeight + } + } + return { top: T, left: L, width: W, height: H }; + } +} + +/*--------------------------------------------------------------------------*/ + +var SortableObserver = Class.create(); +SortableObserver.prototype = { + initialize: function(element, observer) { + this.element = $(element); + this.observer = observer; + this.lastValue = Sortable.serialize(this.element); + }, + + onStart: function() { + this.lastValue = Sortable.serialize(this.element); + }, + + onEnd: function() { + Sortable.unmark(); + if(this.lastValue != Sortable.serialize(this.element)) + this.observer(this.element) + } +} + +var Sortable = { + SERIALIZE_RULE: /^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/, + + sortables: {}, + + _findRootElement: function(element) { + while (element.tagName.toUpperCase() != "BODY") { + if(element.id && Sortable.sortables[element.id]) return element; + element = element.parentNode; + } + }, + + options: function(element) { + element = Sortable._findRootElement($(element)); + if(!element) return; + return Sortable.sortables[element.id]; + }, + + destroy: function(element){ + var s = Sortable.options(element); + + if(s) { + Draggables.removeObserver(s.element); + s.droppables.each(function(d){ Droppables.remove(d) }); + s.draggables.invoke('destroy'); + + delete Sortable.sortables[s.element.id]; + } + }, + + create: function(element) { + element = $(element); + var options = Object.extend({ + element: element, + tag: 'li', // assumes li children, override with tag: 'tagname' + dropOnEmpty: false, + tree: false, + treeTag: 'ul', + overlap: 'vertical', // one of 'vertical', 'horizontal' + constraint: 'vertical', // one of 'vertical', 'horizontal', false + containment: element, // also takes array of elements (or id's); or false + handle: false, // or a CSS class + only: false, + delay: 0, + hoverclass: null, + ghosting: false, + quiet: false, + scroll: false, + scrollSensitivity: 20, + scrollSpeed: 15, + format: this.SERIALIZE_RULE, + + // these take arrays of elements or ids and can be + // used for better initialization performance + elements: false, + handles: false, + + onChange: Prototype.emptyFunction, + onUpdate: Prototype.emptyFunction + }, arguments[1] || {}); + + // clear any old sortable with same element + this.destroy(element); + + // build options for the draggables + var options_for_draggable = { + revert: true, + quiet: options.quiet, + scroll: options.scroll, + scrollSpeed: options.scrollSpeed, + scrollSensitivity: options.scrollSensitivity, + delay: options.delay, + ghosting: options.ghosting, + constraint: options.constraint, + handle: options.handle }; + + if(options.starteffect) + options_for_draggable.starteffect = options.starteffect; + + if(options.reverteffect) + options_for_draggable.reverteffect = options.reverteffect; + else + if(options.ghosting) options_for_draggable.reverteffect = function(element) { + element.style.top = 0; + element.style.left = 0; + }; + + if(options.endeffect) + options_for_draggable.endeffect = options.endeffect; + + if(options.zindex) + options_for_draggable.zindex = options.zindex; + + // build options for the droppables + var options_for_droppable = { + overlap: options.overlap, + containment: options.containment, + tree: options.tree, + hoverclass: options.hoverclass, + onHover: Sortable.onHover + } + + var options_for_tree = { + onHover: Sortable.onEmptyHover, + overlap: options.overlap, + containment: options.containment, + hoverclass: options.hoverclass + } + + // fix for gecko engine + Element.cleanWhitespace(element); + + options.draggables = []; + options.droppables = []; + + // drop on empty handling + if(options.dropOnEmpty || options.tree) { + Droppables.add(element, options_for_tree); + options.droppables.push(element); + } + + (options.elements || this.findElements(element, options) || []).each( function(e,i) { + var handle = options.handles ? $(options.handles[i]) : + (options.handle ? $(e).getElementsByClassName(options.handle)[0] : e); + options.draggables.push( + new Draggable(e, Object.extend(options_for_draggable, { handle: handle }))); + Droppables.add(e, options_for_droppable); + if(options.tree) e.treeNode = element; + options.droppables.push(e); + }); + + if(options.tree) { + (Sortable.findTreeElements(element, options) || []).each( function(e) { + Droppables.add(e, options_for_tree); + e.treeNode = element; + options.droppables.push(e); + }); + } + + // keep reference + this.sortables[element.id] = options; + + // for onupdate + Draggables.addObserver(new SortableObserver(element, options.onUpdate)); + + }, + + // return all suitable-for-sortable elements in a guaranteed order + findElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.tag); + }, + + findTreeElements: function(element, options) { + return Element.findChildren( + element, options.only, options.tree ? true : false, options.treeTag); + }, + + onHover: function(element, dropon, overlap) { + if(Element.isParent(dropon, element)) return; + + if(overlap > .33 && overlap < .66 && Sortable.options(dropon).tree) { + return; + } else if(overlap>0.5) { + Sortable.mark(dropon, 'before'); + if(dropon.previousSibling != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, dropon); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } else { + Sortable.mark(dropon, 'after'); + var nextElement = dropon.nextSibling || null; + if(nextElement != element) { + var oldParentNode = element.parentNode; + element.style.visibility = "hidden"; // fix gecko rendering + dropon.parentNode.insertBefore(element, nextElement); + if(dropon.parentNode!=oldParentNode) + Sortable.options(oldParentNode).onChange(element); + Sortable.options(dropon.parentNode).onChange(element); + } + } + }, + + onEmptyHover: function(element, dropon, overlap) { + var oldParentNode = element.parentNode; + var droponOptions = Sortable.options(dropon); + + if(!Element.isParent(dropon, element)) { + var index; + + var children = Sortable.findElements(dropon, {tag: droponOptions.tag, only: droponOptions.only}); + var child = null; + + if(children) { + var offset = Element.offsetSize(dropon, droponOptions.overlap) * (1.0 - overlap); + + for (index = 0; index < children.length; index += 1) { + if (offset - Element.offsetSize (children[index], droponOptions.overlap) >= 0) { + offset -= Element.offsetSize (children[index], droponOptions.overlap); + } else if (offset - (Element.offsetSize (children[index], droponOptions.overlap) / 2) >= 0) { + child = index + 1 < children.length ? children[index + 1] : null; + break; + } else { + child = children[index]; + break; + } + } + } + + dropon.insertBefore(element, child); + + Sortable.options(oldParentNode).onChange(element); + droponOptions.onChange(element); + } + }, + + unmark: function() { + if(Sortable._marker) Sortable._marker.hide(); + }, + + mark: function(dropon, position) { + // mark on ghosting only + var sortable = Sortable.options(dropon.parentNode); + if(sortable && !sortable.ghosting) return; + + if(!Sortable._marker) { + Sortable._marker = + ($('dropmarker') || Element.extend(document.createElement('DIV'))). + hide().addClassName('dropmarker').setStyle({position:'absolute'}); + document.getElementsByTagName("body").item(0).appendChild(Sortable._marker); + } + var offsets = Position.cumulativeOffset(dropon); + Sortable._marker.setStyle({left: offsets[0]+'px', top: offsets[1] + 'px'}); + + if(position=='after') + if(sortable.overlap == 'horizontal') + Sortable._marker.setStyle({left: (offsets[0]+dropon.clientWidth) + 'px'}); + else + Sortable._marker.setStyle({top: (offsets[1]+dropon.clientHeight) + 'px'}); + + Sortable._marker.show(); + }, + + _tree: function(element, options, parent) { + var children = Sortable.findElements(element, options) || []; + + for (var i = 0; i < children.length; ++i) { + var match = children[i].id.match(options.format); + + if (!match) continue; + + var child = { + id: encodeURIComponent(match ? match[1] : null), + element: element, + parent: parent, + children: [], + position: parent.children.length, + container: $(children[i]).down(options.treeTag) + } + + /* Get the element containing the children and recurse over it */ + if (child.container) + this._tree(child.container, options, child) + + parent.children.push (child); + } + + return parent; + }, + + tree: function(element) { + element = $(element); + var sortableOptions = this.options(element); + var options = Object.extend({ + tag: sortableOptions.tag, + treeTag: sortableOptions.treeTag, + only: sortableOptions.only, + name: element.id, + format: sortableOptions.format + }, arguments[1] || {}); + + var root = { + id: null, + parent: null, + children: [], + container: element, + position: 0 + } + + return Sortable._tree(element, options, root); + }, + + /* Construct a [i] index for a particular node */ + _constructIndex: function(node) { + var index = ''; + do { + if (node.id) index = '[' + node.position + ']' + index; + } while ((node = node.parent) != null); + return index; + }, + + sequence: function(element) { + element = $(element); + var options = Object.extend(this.options(element), arguments[1] || {}); + + return $(this.findElements(element, options) || []).map( function(item) { + return item.id.match(options.format) ? item.id.match(options.format)[1] : ''; + }); + }, + + setSequence: function(element, new_sequence) { + element = $(element); + var options = Object.extend(this.options(element), arguments[2] || {}); + + var nodeMap = {}; + this.findElements(element, options).each( function(n) { + if (n.id.match(options.format)) + nodeMap[n.id.match(options.format)[1]] = [n, n.parentNode]; + n.parentNode.removeChild(n); + }); + + new_sequence.each(function(ident) { + var n = nodeMap[ident]; + if (n) { + n[1].appendChild(n[0]); + delete nodeMap[ident]; + } + }); + }, + + serialize: function(element) { + element = $(element); + var options = Object.extend(Sortable.options(element), arguments[1] || {}); + var name = encodeURIComponent( + (arguments[1] && arguments[1].name) ? arguments[1].name : element.id); + + if (options.tree) { + return Sortable.tree(element, arguments[1]).children.map( function (item) { + return [name + Sortable._constructIndex(item) + "[id]=" + + encodeURIComponent(item.id)].concat(item.children.map(arguments.callee)); + }).flatten().join('&'); + } else { + return Sortable.sequence(element, arguments[1]).map( function(item) { + return name + "[]=" + encodeURIComponent(item); + }).join('&'); + } + } +} + +// Returns true if child is contained within element +Element.isParent = function(child, element) { + if (!child.parentNode || child == element) return false; + if (child.parentNode == element) return true; + return Element.isParent(child.parentNode, element); +} + +Element.findChildren = function(element, only, recursive, tagName) { + if(!element.hasChildNodes()) return null; + tagName = tagName.toUpperCase(); + if(only) only = [only].flatten(); + var elements = []; + $A(element.childNodes).each( function(e) { + if(e.tagName && e.tagName.toUpperCase()==tagName && + (!only || (Element.classNames(e).detect(function(v) { return only.include(v) })))) + elements.push(e); + if(recursive) { + var grandchildren = Element.findChildren(e, only, recursive, tagName); + if(grandchildren) elements.push(grandchildren); + } + }); + + return (elements.length>0 ? elements.flatten() : []); +} + +Element.offsetSize = function (element, type) { + return element['offset' + ((type=='vertical' || type=='height') ? 'Height' : 'Width')]; +} diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/effects.js b/dom/tests/mochitest/ajax/scriptaculous/src/effects.js new file mode 100644 index 0000000000..eb69587e60 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/effects.js @@ -0,0 +1,1094 @@ +// script.aculo.us effects.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// Contributors: +// Justin Palmer (http://encytemedia.com/) +// Mark Pilgrim (http://diveintomark.org/) +// Martin Bialasinki +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// converts rgb() and #xxx to #xxxxxx format, +// returns self (or first argument) if not convertable +String.prototype.parseColor = function() { + var color = '#'; + if(this.slice(0,4) == 'rgb(') { + var cols = this.slice(4,this.length-1).split(','); + var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3); + } else { + if(this.slice(0,1) == '#') { + if(this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase(); + if(this.length==7) color = this.toLowerCase(); + } + } + return(color.length==7 ? color : (arguments[0] || this)); +} + +/*--------------------------------------------------------------------------*/ + +Element.collectTextNodes = function(element) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + (node.hasChildNodes() ? Element.collectTextNodes(node) : '')); + }).flatten().join(''); +} + +Element.collectTextNodesIgnoreClass = function(element, className) { + return $A($(element).childNodes).collect( function(node) { + return (node.nodeType==3 ? node.nodeValue : + ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? + Element.collectTextNodesIgnoreClass(node, className) : '')); + }).flatten().join(''); +} + +Element.setContentZoom = function(element, percent) { + element = $(element); + element.setStyle({fontSize: (percent/100) + 'em'}); + if(Prototype.Browser.WebKit) window.scrollBy(0,0); + return element; +} + +Element.getInlineOpacity = function(element){ + return $(element).style.opacity || ''; +} + +Element.forceRerendering = function(element) { + try { + element = $(element); + var n = document.createTextNode(' '); + element.appendChild(n); + element.removeChild(n); + } catch(e) { } +}; + +/*--------------------------------------------------------------------------*/ + +Array.prototype.call = function() { + var args = arguments; + this.each(function(f){ f.apply(this, args) }); +} + +/*--------------------------------------------------------------------------*/ + +var Effect = { + _elementDoesNotExistError: { + name: 'ElementDoesNotExistError', + message: 'The specified DOM element does not exist, but is required for this effect to operate' + }, + tagifyText: function(element) { + if(typeof Builder == 'undefined') + throw("Effect.tagifyText requires including script.aculo.us' builder.js library"); + + var tagifyStyle = 'position:relative'; + if(Prototype.Browser.IE) tagifyStyle += ';zoom:1'; + + element = $(element); + $A(element.childNodes).each( function(child) { + if(child.nodeType==3) { + child.nodeValue.toArray().each( function(character) { + element.insertBefore( + Builder.node('span',{style: tagifyStyle}, + character == ' ' ? String.fromCharCode(160) : character), + child); + }); + Element.remove(child); + } + }); + }, + multiple: function(element, effect) { + var elements; + if(((typeof element == 'object') || + (typeof element == 'function')) && + (element.length)) + elements = element; + else + elements = $(element).childNodes; + + var options = Object.extend({ + speed: 0.1, + delay: 0.0 + }, arguments[2] || {}); + var masterDelay = options.delay; + + $A(elements).each( function(element, index) { + new effect(element, Object.extend(options, { delay: index * options.speed + masterDelay })); + }); + }, + PAIRS: { + 'slide': ['SlideDown','SlideUp'], + 'blind': ['BlindDown','BlindUp'], + 'appear': ['Appear','Fade'] + }, + toggle: function(element, effect) { + element = $(element); + effect = (effect || 'appear').toLowerCase(); + var options = Object.extend({ + queue: { position:'end', scope:(element.id || 'global'), limit: 1 } + }, arguments[2] || {}); + Effect[element.visible() ? + Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, options); + } +}; + +var Effect2 = Effect; // deprecated + +/* ------------- transitions ------------- */ + +Effect.Transitions = { + linear: Prototype.K, + sinoidal: function(pos) { + return (-Math.cos(pos*Math.PI)/2) + 0.5; + }, + reverse: function(pos) { + return 1-pos; + }, + flicker: function(pos) { + var pos = ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4; + return (pos > 1 ? 1 : pos); + }, + wobble: function(pos) { + return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5; + }, + pulse: function(pos, pulses) { + pulses = pulses || 5; + return ( + Math.round((pos % (1/pulses)) * pulses) == 0 ? + ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) : + 1 - ((pos * pulses * 2) - Math.floor(pos * pulses * 2)) + ); + }, + none: function(pos) { + return 0; + }, + full: function(pos) { + return 1; + } +}; + +/* ------------- core effects ------------- */ + +Effect.ScopedQueue = Class.create(); +Object.extend(Object.extend(Effect.ScopedQueue.prototype, Enumerable), { + initialize: function() { + this.effects = []; + this.interval = null; + }, + _each: function(iterator) { + this.effects._each(iterator); + }, + add: function(effect) { + var timestamp = new Date().getTime(); + + var position = (typeof effect.options.queue == 'string') ? + effect.options.queue : effect.options.queue.position; + + switch(position) { + case 'front': + // move unstarted effects after this effect + this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) { + e.startOn += effect.finishOn; + e.finishOn += effect.finishOn; + }); + break; + case 'with-last': + timestamp = this.effects.pluck('startOn').max() || timestamp; + break; + case 'end': + // start effect after last queued effect has finished + timestamp = this.effects.pluck('finishOn').max() || timestamp; + break; + } + + effect.startOn += timestamp; + effect.finishOn += timestamp; + + if(!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit)) + this.effects.push(effect); + + if(!this.interval) + this.interval = setInterval(this.loop.bind(this), 15); + }, + remove: function(effect) { + this.effects = this.effects.reject(function(e) { return e==effect }); + if(this.effects.length == 0) { + clearInterval(this.interval); + this.interval = null; + } + }, + loop: function() { + var timePos = new Date().getTime(); + for(var i=0, len=this.effects.length;i= this.startOn) { + if(timePos >= this.finishOn) { + this.render(1.0); + this.cancel(); + this.event('beforeFinish'); + if(this.finish) this.finish(); + this.event('afterFinish'); + return; + } + var pos = (timePos - this.startOn) / this.totalTime, + frame = Math.round(pos * this.totalFrames); + if(frame > this.currentFrame) { + this.render(pos); + this.currentFrame = frame; + } + } + }, + cancel: function() { + if(!this.options.sync) + Effect.Queues.get(typeof this.options.queue == 'string' ? + 'global' : this.options.queue.scope).remove(this); + this.state = 'finished'; + }, + event: function(eventName) { + if(this.options[eventName + 'Internal']) this.options[eventName + 'Internal'](this); + if(this.options[eventName]) this.options[eventName](this); + }, + inspect: function() { + var data = $H(); + for(property in this) + if(typeof this[property] != 'function') data[property] = this[property]; + return '#'; + } +} + +Effect.Parallel = Class.create(); +Object.extend(Object.extend(Effect.Parallel.prototype, Effect.Base.prototype), { + initialize: function(effects) { + this.effects = effects || []; + this.start(arguments[1]); + }, + update: function(position) { + this.effects.invoke('render', position); + }, + finish: function(position) { + this.effects.each( function(effect) { + effect.render(1.0); + effect.cancel(); + effect.event('beforeFinish'); + if(effect.finish) effect.finish(position); + effect.event('afterFinish'); + }); + } +}); + +Effect.Event = Class.create(); +Object.extend(Object.extend(Effect.Event.prototype, Effect.Base.prototype), { + initialize: function() { + var options = Object.extend({ + duration: 0 + }, arguments[0] || {}); + this.start(options); + }, + update: Prototype.emptyFunction +}); + +Effect.Opacity = Class.create(); +Object.extend(Object.extend(Effect.Opacity.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + // make this work on IE on elements without 'layout' + if(Prototype.Browser.IE && (!this.element.currentStyle.hasLayout)) + this.element.setStyle({zoom: 1}); + var options = Object.extend({ + from: this.element.getOpacity() || 0.0, + to: 1.0 + }, arguments[1] || {}); + this.start(options); + }, + update: function(position) { + this.element.setOpacity(position); + } +}); + +Effect.Move = Class.create(); +Object.extend(Object.extend(Effect.Move.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + x: 0, + y: 0, + mode: 'relative' + }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Bug in Opera: Opera returns the "real" position of a static element or + // relative element that does not have top/left explicitly set. + // ==> Always set top and left for position relative elements in your stylesheets + // (to 0 if you do not need them) + this.element.makePositioned(); + this.originalLeft = parseFloat(this.element.getStyle('left') || '0'); + this.originalTop = parseFloat(this.element.getStyle('top') || '0'); + if(this.options.mode == 'absolute') { + // absolute movement, so we need to calc deltaX and deltaY + this.options.x = this.options.x - this.originalLeft; + this.options.y = this.options.y - this.originalTop; + } + }, + update: function(position) { + this.element.setStyle({ + left: Math.round(this.options.x * position + this.originalLeft) + 'px', + top: Math.round(this.options.y * position + this.originalTop) + 'px' + }); + } +}); + +// for backwards compatibility +Effect.MoveBy = function(element, toTop, toLeft) { + return new Effect.Move(element, + Object.extend({ x: toLeft, y: toTop }, arguments[3] || {})); +}; + +Effect.Scale = Class.create(); +Object.extend(Object.extend(Effect.Scale.prototype, Effect.Base.prototype), { + initialize: function(element, percent) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + scaleX: true, + scaleY: true, + scaleContent: true, + scaleFromCenter: false, + scaleMode: 'box', // 'box' or 'contents' or {} with provided values + scaleFrom: 100.0, + scaleTo: percent + }, arguments[2] || {}); + this.start(options); + }, + setup: function() { + this.restoreAfterFinish = this.options.restoreAfterFinish || false; + this.elementPositioning = this.element.getStyle('position'); + + this.originalStyle = {}; + ['top','left','width','height','fontSize'].each( function(k) { + this.originalStyle[k] = this.element.style[k]; + }.bind(this)); + + this.originalTop = this.element.offsetTop; + this.originalLeft = this.element.offsetLeft; + + var fontSize = this.element.getStyle('font-size') || '100%'; + ['em','px','%','pt'].each( function(fontSizeType) { + if(fontSize.indexOf(fontSizeType)>0) { + this.fontSize = parseFloat(fontSize); + this.fontSizeType = fontSizeType; + } + }.bind(this)); + + this.factor = (this.options.scaleTo - this.options.scaleFrom)/100; + + this.dims = null; + if(this.options.scaleMode=='box') + this.dims = [this.element.offsetHeight, this.element.offsetWidth]; + if(/^content/.test(this.options.scaleMode)) + this.dims = [this.element.scrollHeight, this.element.scrollWidth]; + if(!this.dims) + this.dims = [this.options.scaleMode.originalHeight, + this.options.scaleMode.originalWidth]; + }, + update: function(position) { + var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position); + if(this.options.scaleContent && this.fontSize) + this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType }); + this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale); + }, + finish: function(position) { + if(this.restoreAfterFinish) this.element.setStyle(this.originalStyle); + }, + setDimensions: function(height, width) { + var d = {}; + if(this.options.scaleX) d.width = Math.round(width) + 'px'; + if(this.options.scaleY) d.height = Math.round(height) + 'px'; + if(this.options.scaleFromCenter) { + var topd = (height - this.dims[0])/2; + var leftd = (width - this.dims[1])/2; + if(this.elementPositioning == 'absolute') { + if(this.options.scaleY) d.top = this.originalTop-topd + 'px'; + if(this.options.scaleX) d.left = this.originalLeft-leftd + 'px'; + } else { + if(this.options.scaleY) d.top = -topd + 'px'; + if(this.options.scaleX) d.left = -leftd + 'px'; + } + } + this.element.setStyle(d); + } +}); + +Effect.Highlight = Class.create(); +Object.extend(Object.extend(Effect.Highlight.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ startcolor: '#ffff99' }, arguments[1] || {}); + this.start(options); + }, + setup: function() { + // Prevent executing on elements not in the layout flow + if(this.element.getStyle('display')=='none') { this.cancel(); return; } + // Disable background image during the effect + this.oldStyle = {}; + if (!this.options.keepBackgroundImage) { + this.oldStyle.backgroundImage = this.element.getStyle('background-image'); + this.element.setStyle({backgroundImage: 'none'}); + } + if(!this.options.endcolor) + this.options.endcolor = this.element.getStyle('background-color').parseColor('#ffffff'); + if(!this.options.restorecolor) + this.options.restorecolor = this.element.getStyle('background-color'); + // init color calculations + this._base = $R(0,2).map(function(i){ return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this)); + this._delta = $R(0,2).map(function(i){ return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] }.bind(this)); + }, + update: function(position) { + this.element.setStyle({backgroundColor: $R(0,2).inject('#',function(m,v,i){ + return m+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart()); }.bind(this)) }); + }, + finish: function() { + this.element.setStyle(Object.extend(this.oldStyle, { + backgroundColor: this.options.restorecolor + })); + } +}); + +Effect.ScrollTo = Class.create(); +Object.extend(Object.extend(Effect.ScrollTo.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + this.start(arguments[1] || {}); + }, + setup: function() { + Position.prepare(); + var offsets = Position.cumulativeOffset(this.element); + if(this.options.offset) offsets[1] += this.options.offset; + var max = window.innerHeight ? + window.height - window.innerHeight : + document.body.scrollHeight - + (document.documentElement.clientHeight ? + document.documentElement.clientHeight : document.body.clientHeight); + this.scrollStart = Position.deltaY; + this.delta = (offsets[1] > max ? max : offsets[1]) - this.scrollStart; + }, + update: function(position) { + Position.prepare(); + window.scrollTo(Position.deltaX, + this.scrollStart + (position*this.delta)); + } +}); + +/* ------------- combination effects ------------- */ + +Effect.Fade = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + var options = Object.extend({ + from: element.getOpacity() || 1.0, + to: 0.0, + afterFinishInternal: function(effect) { + if(effect.options.to!=0) return; + effect.element.hide().setStyle({opacity: oldOpacity}); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Appear = function(element) { + element = $(element); + var options = Object.extend({ + from: (element.getStyle('display') == 'none' ? 0.0 : element.getOpacity() || 0.0), + to: 1.0, + // force Safari to render floated elements properly + afterFinishInternal: function(effect) { + effect.element.forceRerendering(); + }, + beforeSetup: function(effect) { + effect.element.setOpacity(effect.options.from).show(); + }}, arguments[1] || {}); + return new Effect.Opacity(element,options); +} + +Effect.Puff = function(element) { + element = $(element); + var oldStyle = { + opacity: element.getInlineOpacity(), + position: element.getStyle('position'), + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height + }; + return new Effect.Parallel( + [ new Effect.Scale(element, 200, + { sync: true, scaleFromCenter: true, scaleContent: true, restoreAfterFinish: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 } ) ], + Object.extend({ duration: 1.0, + beforeSetupInternal: function(effect) { + Position.absolutize(effect.effects[0].element) + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().setStyle(oldStyle); } + }, arguments[1] || {}) + ); +} + +Effect.BlindUp = function(element) { + element = $(element); + element.makeClipping(); + return new Effect.Scale(element, 0, + Object.extend({ scaleContent: false, + scaleX: false, + restoreAfterFinish: true, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }, arguments[1] || {}) + ); +} + +Effect.BlindDown = function(element) { + element = $(element); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: 0, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping(); + } + }, arguments[1] || {})); +} + +Effect.SwitchOff = function(element) { + element = $(element); + var oldOpacity = element.getInlineOpacity(); + return new Effect.Appear(element, Object.extend({ + duration: 0.4, + from: 0, + transition: Effect.Transitions.flicker, + afterFinishInternal: function(effect) { + new Effect.Scale(effect.element, 1, { + duration: 0.3, scaleFromCenter: true, + scaleX: false, scaleContent: false, restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: oldOpacity}); + } + }) + } + }, arguments[1] || {})); +} + +Effect.DropOut = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left'), + opacity: element.getInlineOpacity() }; + return new Effect.Parallel( + [ new Effect.Move(element, {x: 0, y: 100, sync: true }), + new Effect.Opacity(element, { sync: true, to: 0.0 }) ], + Object.extend( + { duration: 0.5, + beforeSetup: function(effect) { + effect.effects[0].element.makePositioned(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle); + } + }, arguments[1] || {})); +} + +Effect.Shake = function(element) { + element = $(element); + var oldStyle = { + top: element.getStyle('top'), + left: element.getStyle('left') }; + return new Effect.Move(element, + { x: 20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) { + new Effect.Move(effect.element, + { x: -20, y: 0, duration: 0.05, afterFinishInternal: function(effect) { + effect.element.undoPositioned().setStyle(oldStyle); + }}) }}) }}) }}) }}) }}); +} + +Effect.SlideDown = function(element) { + element = $(element).cleanWhitespace(); + // SlideDown need to have the content of the element wrapped in a container element with fixed height! + var oldInnerBottom = element.down().getStyle('bottom'); + var elementDimensions = element.getDimensions(); + return new Effect.Scale(element, 100, Object.extend({ + scaleContent: false, + scaleX: false, + scaleFrom: window.opera ? 0 : 1, + scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width}, + restoreAfterFinish: true, + afterSetup: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().setStyle({height: '0px'}).show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.undoClipping().undoPositioned(); + effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom}); } + }, arguments[1] || {}) + ); +} + +Effect.SlideUp = function(element) { + element = $(element).cleanWhitespace(); + var oldInnerBottom = element.down().getStyle('bottom'); + return new Effect.Scale(element, window.opera ? 0 : 1, + Object.extend({ scaleContent: false, + scaleX: false, + scaleMode: 'box', + scaleFrom: 100, + restoreAfterFinish: true, + beforeStartInternal: function(effect) { + effect.element.makePositioned(); + effect.element.down().makePositioned(); + if(window.opera) effect.element.setStyle({top: ''}); + effect.element.makeClipping().show(); + }, + afterUpdateInternal: function(effect) { + effect.element.down().setStyle({bottom: + (effect.dims[0] - effect.element.clientHeight) + 'px' }); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().undoPositioned().setStyle({bottom: oldInnerBottom}); + effect.element.down().undoPositioned(); + } + }, arguments[1] || {}) + ); +} + +// Bug in opera makes the TD containing this element expand for a instance after finish +Effect.Squish = function(element) { + return new Effect.Scale(element, window.opera ? 1 : 0, { + restoreAfterFinish: true, + beforeSetup: function(effect) { + effect.element.makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping(); + } + }); +} + +Effect.Grow = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.full + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var initialMoveX, initialMoveY; + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + initialMoveX = initialMoveY = moveX = moveY = 0; + break; + case 'top-right': + initialMoveX = dims.width; + initialMoveY = moveY = 0; + moveX = -dims.width; + break; + case 'bottom-left': + initialMoveX = moveX = 0; + initialMoveY = dims.height; + moveY = -dims.height; + break; + case 'bottom-right': + initialMoveX = dims.width; + initialMoveY = dims.height; + moveX = -dims.width; + moveY = -dims.height; + break; + case 'center': + initialMoveX = dims.width / 2; + initialMoveY = dims.height / 2; + moveX = -dims.width / 2; + moveY = -dims.height / 2; + break; + } + + return new Effect.Move(element, { + x: initialMoveX, + y: initialMoveY, + duration: 0.01, + beforeSetup: function(effect) { + effect.element.hide().makeClipping().makePositioned(); + }, + afterFinishInternal: function(effect) { + new Effect.Parallel( + [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, from: 0.0, transition: options.opacityTransition }), + new Effect.Move(effect.element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }), + new Effect.Scale(effect.element, 100, { + scaleMode: { originalHeight: dims.height, originalWidth: dims.width }, + sync: true, scaleFrom: window.opera ? 1 : 0, transition: options.scaleTransition, restoreAfterFinish: true}) + ], Object.extend({ + beforeSetup: function(effect) { + effect.effects[0].element.setStyle({height: '0px'}).show(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle); + } + }, options) + ) + } + }); +} + +Effect.Shrink = function(element) { + element = $(element); + var options = Object.extend({ + direction: 'center', + moveTransition: Effect.Transitions.sinoidal, + scaleTransition: Effect.Transitions.sinoidal, + opacityTransition: Effect.Transitions.none + }, arguments[1] || {}); + var oldStyle = { + top: element.style.top, + left: element.style.left, + height: element.style.height, + width: element.style.width, + opacity: element.getInlineOpacity() }; + + var dims = element.getDimensions(); + var moveX, moveY; + + switch (options.direction) { + case 'top-left': + moveX = moveY = 0; + break; + case 'top-right': + moveX = dims.width; + moveY = 0; + break; + case 'bottom-left': + moveX = 0; + moveY = dims.height; + break; + case 'bottom-right': + moveX = dims.width; + moveY = dims.height; + break; + case 'center': + moveX = dims.width / 2; + moveY = dims.height / 2; + break; + } + + return new Effect.Parallel( + [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: options.opacityTransition }), + new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, transition: options.scaleTransition, restoreAfterFinish: true}), + new Effect.Move(element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }) + ], Object.extend({ + beforeStartInternal: function(effect) { + effect.effects[0].element.makePositioned().makeClipping(); + }, + afterFinishInternal: function(effect) { + effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle); } + }, options) + ); +} + +Effect.Pulsate = function(element) { + element = $(element); + var options = arguments[1] || {}; + var oldOpacity = element.getInlineOpacity(); + var transition = options.transition || Effect.Transitions.sinoidal; + var reverser = function(pos){ return transition(1-Effect.Transitions.pulse(pos, options.pulses)) }; + reverser.bind(transition); + return new Effect.Opacity(element, + Object.extend(Object.extend({ duration: 2.0, from: 0, + afterFinishInternal: function(effect) { effect.element.setStyle({opacity: oldOpacity}); } + }, options), {transition: reverser})); +} + +Effect.Fold = function(element) { + element = $(element); + var oldStyle = { + top: element.style.top, + left: element.style.left, + width: element.style.width, + height: element.style.height }; + element.makeClipping(); + return new Effect.Scale(element, 5, Object.extend({ + scaleContent: false, + scaleX: false, + afterFinishInternal: function(effect) { + new Effect.Scale(element, 1, { + scaleContent: false, + scaleY: false, + afterFinishInternal: function(effect) { + effect.element.hide().undoClipping().setStyle(oldStyle); + } }); + }}, arguments[1] || {})); +}; + +Effect.Morph = Class.create(); +Object.extend(Object.extend(Effect.Morph.prototype, Effect.Base.prototype), { + initialize: function(element) { + this.element = $(element); + if(!this.element) throw(Effect._elementDoesNotExistError); + var options = Object.extend({ + style: {} + }, arguments[1] || {}); + if (typeof options.style == 'string') { + if(options.style.indexOf(':') == -1) { + var cssText = '', selector = '.' + options.style; + $A(document.styleSheets).reverse().each(function(styleSheet) { + if (styleSheet.cssRules) cssRules = styleSheet.cssRules; + else if (styleSheet.rules) cssRules = styleSheet.rules; + $A(cssRules).reverse().each(function(rule) { + if (selector == rule.selectorText) { + cssText = rule.style.cssText; + throw $break; + } + }); + if (cssText) throw $break; + }); + this.style = cssText.parseStyle(); + options.afterFinishInternal = function(effect){ + effect.element.addClassName(effect.options.style); + effect.transforms.each(function(transform) { + if(transform.style != 'opacity') + effect.element.style[transform.style] = ''; + }); + } + } else this.style = options.style.parseStyle(); + } else this.style = $H(options.style) + this.start(options); + }, + setup: function(){ + function parseColor(color){ + if(!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff'; + color = color.parseColor(); + return $R(0,2).map(function(i){ + return parseInt( color.slice(i*2+1,i*2+3), 16 ) + }); + } + this.transforms = this.style.map(function(pair){ + var property = pair[0], value = pair[1], unit = null; + + if(value.parseColor('#zzzzzz') != '#zzzzzz') { + value = value.parseColor(); + unit = 'color'; + } else if(property == 'opacity') { + value = parseFloat(value); + if(Prototype.Browser.IE && (!this.element.currentStyle.hasLayout)) + this.element.setStyle({zoom: 1}); + } else if(Element.CSS_LENGTH.test(value)) { + var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/); + value = parseFloat(components[1]); + unit = (components.length == 3) ? components[2] : null; + } + + var originalValue = this.element.getStyle(property); + return { + style: property.camelize(), + originalValue: unit=='color' ? parseColor(originalValue) : parseFloat(originalValue || 0), + targetValue: unit=='color' ? parseColor(value) : value, + unit: unit + }; + }.bind(this)).reject(function(transform){ + return ( + (transform.originalValue == transform.targetValue) || + ( + transform.unit != 'color' && + (isNaN(transform.originalValue) || isNaN(transform.targetValue)) + ) + ) + }); + }, + update: function(position) { + var style = {}, transform, i = this.transforms.length; + while(i--) + style[(transform = this.transforms[i]).style] = + transform.unit=='color' ? '#'+ + (Math.round(transform.originalValue[0]+ + (transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart() + + (Math.round(transform.originalValue[1]+ + (transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart() + + (Math.round(transform.originalValue[2]+ + (transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart() : + transform.originalValue + Math.round( + ((transform.targetValue - transform.originalValue) * position) * 1000)/1000 + transform.unit; + this.element.setStyle(style, true); + } +}); + +Effect.Transform = Class.create(); +Object.extend(Effect.Transform.prototype, { + initialize: function(tracks){ + this.tracks = []; + this.options = arguments[1] || {}; + this.addTracks(tracks); + }, + addTracks: function(tracks){ + tracks.each(function(track){ + var data = $H(track).values().first(); + this.tracks.push($H({ + ids: $H(track).keys().first(), + effect: Effect.Morph, + options: { style: data } + })); + }.bind(this)); + return this; + }, + play: function(){ + return new Effect.Parallel( + this.tracks.map(function(track){ + var elements = [$(track.ids) || $$(track.ids)].flatten(); + return elements.map(function(e){ return new track.effect(e, Object.extend({ sync:true }, track.options)) }); + }).flatten(), + this.options + ); + } +}); + +Element.CSS_PROPERTIES = $w( + 'backgroundColor backgroundPosition borderBottomColor borderBottomStyle ' + + 'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth ' + + 'borderRightColor borderRightStyle borderRightWidth borderSpacing ' + + 'borderTopColor borderTopStyle borderTopWidth bottom clip color ' + + 'fontSize fontWeight height left letterSpacing lineHeight ' + + 'marginBottom marginLeft marginRight marginTop maxHeight '+ + 'maxWidth minHeight minWidth opacity outlineColor outlineOffset ' + + 'outlineWidth paddingBottom paddingLeft paddingRight paddingTop ' + + 'right textIndent top width wordSpacing zIndex'); + +Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/; + +String.prototype.parseStyle = function(){ + var element = document.createElement('div'); + element.innerHTML = '

      '; + var style = element.childNodes[0].style, styleRules = $H(); + + Element.CSS_PROPERTIES.each(function(property){ + if(style[property]) styleRules[property] = style[property]; + }); + if(Prototype.Browser.IE && this.indexOf('opacity') > -1) { + styleRules.opacity = this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]; + } + return styleRules; +}; + +Element.morph = function(element, style) { + new Effect.Morph(element, Object.extend({ style: style }, arguments[2] || {})); + return element; +}; + +['getInlineOpacity','forceRerendering','setContentZoom', + 'collectTextNodes','collectTextNodesIgnoreClass','morph'].each( + function(f) { Element.Methods[f] = Element[f]; } +); + +Element.Methods.visualEffect = function(element, effect, options) { + s = effect.dasherize().camelize(); + effect_class = s.charAt(0).toUpperCase() + s.substring(1); + new Effect[effect_class](element, options); + return $(element); +}; + +Element.addMethods(); \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js b/dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js new file mode 100644 index 0000000000..13f91cd6fb --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js @@ -0,0 +1,58 @@ +// script.aculo.us scriptaculous.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +var Scriptaculous = { + Version: '1.7.1_beta2', + require: function(libraryName) { + // inserting via DOM fails in Safari 2.0, so brute force approach + document.write(''); + }, + REQUIRED_PROTOTYPE: '1.5.1', + load: function() { + function convertVersionString(versionString){ + var r = versionString.split('.'); + return parseInt(r[0])*100000 + parseInt(r[1])*1000 + parseInt(r[2]); + } + + if((typeof Prototype=='undefined') || + (typeof Element == 'undefined') || + (typeof Element.Methods=='undefined') || + (convertVersionString(Prototype.Version) < + convertVersionString(Scriptaculous.REQUIRED_PROTOTYPE))) + throw("script.aculo.us requires the Prototype JavaScript framework >= " + + Scriptaculous.REQUIRED_PROTOTYPE); + + $A(document.getElementsByTagName("script")).findAll( function(s) { + return (s.src && s.src.match(/scriptaculous\.js(\?.*)?$/)) + }).each( function(s) { + var path = s.src.replace(/scriptaculous\.js(\?.*)?$/,''); + var includes = s.src.match(/\?.*load=([a-z,]*)/); + (includes ? includes[1] : 'builder,effects,dragdrop,controls,slider,sound').split(',').each( + function(include) { Scriptaculous.require(path+include+'.js') }); + }); + } +} + +Scriptaculous.load(); \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/slider.js b/dom/tests/mochitest/ajax/scriptaculous/src/slider.js new file mode 100644 index 0000000000..b9c96bfbd6 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/slider.js @@ -0,0 +1,277 @@ +// script.aculo.us slider.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Marty Haught, Thomas Fuchs +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +if(!Control) var Control = {}; +Control.Slider = Class.create(); + +// options: +// axis: 'vertical', or 'horizontal' (default) +// +// callbacks: +// onChange(value) +// onSlide(value) +Control.Slider.prototype = { + initialize: function(handle, track, options) { + var slider = this; + + if(handle instanceof Array) { + this.handles = handle.collect( function(e) { return $(e) }); + } else { + this.handles = [$(handle)]; + } + + this.track = $(track); + this.options = options || {}; + + this.axis = this.options.axis || 'horizontal'; + this.increment = this.options.increment || 1; + this.step = parseInt(this.options.step || '1'); + this.range = this.options.range || $R(0,1); + + this.value = 0; // assure backwards compat + this.values = this.handles.map( function() { return 0 }); + this.spans = this.options.spans ? this.options.spans.map(function(s){ return $(s) }) : false; + this.options.startSpan = $(this.options.startSpan || null); + this.options.endSpan = $(this.options.endSpan || null); + + this.restricted = this.options.restricted || false; + + this.maximum = this.options.maximum || this.range.end; + this.minimum = this.options.minimum || this.range.start; + + // Will be used to align the handle onto the track, if necessary + this.alignX = parseInt(this.options.alignX || '0'); + this.alignY = parseInt(this.options.alignY || '0'); + + this.trackLength = this.maximumOffset() - this.minimumOffset(); + + this.handleLength = this.isVertical() ? + (this.handles[0].offsetHeight != 0 ? + this.handles[0].offsetHeight : this.handles[0].style.height.replace(/px$/,"")) : + (this.handles[0].offsetWidth != 0 ? this.handles[0].offsetWidth : + this.handles[0].style.width.replace(/px$/,"")); + + this.active = false; + this.dragging = false; + this.disabled = false; + + if(this.options.disabled) this.setDisabled(); + + // Allowed values array + this.allowedValues = this.options.values ? this.options.values.sortBy(Prototype.K) : false; + if(this.allowedValues) { + this.minimum = this.allowedValues.min(); + this.maximum = this.allowedValues.max(); + } + + this.eventMouseDown = this.startDrag.bindAsEventListener(this); + this.eventMouseUp = this.endDrag.bindAsEventListener(this); + this.eventMouseMove = this.update.bindAsEventListener(this); + + // Initialize handles in reverse (make sure first handle is active) + this.handles.each( function(h,i) { + i = slider.handles.length-1-i; + slider.setValue(parseFloat( + (slider.options.sliderValue instanceof Array ? + slider.options.sliderValue[i] : slider.options.sliderValue) || + slider.range.start), i); + Element.makePositioned(h); // fix IE + Event.observe(h, "mousedown", slider.eventMouseDown); + }); + + Event.observe(this.track, "mousedown", this.eventMouseDown); + Event.observe(document, "mouseup", this.eventMouseUp); + Event.observe(document, "mousemove", this.eventMouseMove); + + this.initialized = true; + }, + dispose: function() { + var slider = this; + Event.stopObserving(this.track, "mousedown", this.eventMouseDown); + Event.stopObserving(document, "mouseup", this.eventMouseUp); + Event.stopObserving(document, "mousemove", this.eventMouseMove); + this.handles.each( function(h) { + Event.stopObserving(h, "mousedown", slider.eventMouseDown); + }); + }, + setDisabled: function(){ + this.disabled = true; + }, + setEnabled: function(){ + this.disabled = false; + }, + getNearestValue: function(value){ + if(this.allowedValues){ + if(value >= this.allowedValues.max()) return(this.allowedValues.max()); + if(value <= this.allowedValues.min()) return(this.allowedValues.min()); + + var offset = Math.abs(this.allowedValues[0] - value); + var newValue = this.allowedValues[0]; + this.allowedValues.each( function(v) { + var currentOffset = Math.abs(v - value); + if(currentOffset <= offset){ + newValue = v; + offset = currentOffset; + } + }); + return newValue; + } + if(value > this.range.end) return this.range.end; + if(value < this.range.start) return this.range.start; + return value; + }, + setValue: function(sliderValue, handleIdx){ + if(!this.active) { + this.activeHandleIdx = handleIdx || 0; + this.activeHandle = this.handles[this.activeHandleIdx]; + this.updateStyles(); + } + handleIdx = handleIdx || this.activeHandleIdx || 0; + if(this.initialized && this.restricted) { + if((handleIdx>0) && (sliderValuethis.values[handleIdx+1])) + sliderValue = this.values[handleIdx+1]; + } + sliderValue = this.getNearestValue(sliderValue); + this.values[handleIdx] = sliderValue; + this.value = this.values[0]; // assure backwards compat + + this.handles[handleIdx].style[this.isVertical() ? 'top' : 'left'] = + this.translateToPx(sliderValue); + + this.drawSpans(); + if(!this.dragging || !this.event) this.updateFinished(); + }, + setValueBy: function(delta, handleIdx) { + this.setValue(this.values[handleIdx || this.activeHandleIdx || 0] + delta, + handleIdx || this.activeHandleIdx || 0); + }, + translateToPx: function(value) { + return Math.round( + ((this.trackLength-this.handleLength)/(this.range.end-this.range.start)) * + (value - this.range.start)) + "px"; + }, + translateToValue: function(offset) { + return ((offset/(this.trackLength-this.handleLength) * + (this.range.end-this.range.start)) + this.range.start); + }, + getRange: function(range) { + var v = this.values.sortBy(Prototype.K); + range = range || 0; + return $R(v[range],v[range+1]); + }, + minimumOffset: function(){ + return(this.isVertical() ? this.alignY : this.alignX); + }, + maximumOffset: function(){ + return(this.isVertical() ? + (this.track.offsetHeight != 0 ? this.track.offsetHeight : + this.track.style.height.replace(/px$/,"")) - this.alignY : + (this.track.offsetWidth != 0 ? this.track.offsetWidth : + this.track.style.width.replace(/px$/,"")) - this.alignY); + }, + isVertical: function(){ + return (this.axis == 'vertical'); + }, + drawSpans: function() { + var slider = this; + if(this.spans) + $R(0, this.spans.length-1).each(function(r) { slider.setSpan(slider.spans[r], slider.getRange(r)) }); + if(this.options.startSpan) + this.setSpan(this.options.startSpan, + $R(0, this.values.length>1 ? this.getRange(0).min() : this.value )); + if(this.options.endSpan) + this.setSpan(this.options.endSpan, + $R(this.values.length>1 ? this.getRange(this.spans.length-1).max() : this.value, this.maximum)); + }, + setSpan: function(span, range) { + if(this.isVertical()) { + span.style.top = this.translateToPx(range.start); + span.style.height = this.translateToPx(range.end - range.start + this.range.start); + } else { + span.style.left = this.translateToPx(range.start); + span.style.width = this.translateToPx(range.end - range.start + this.range.start); + } + }, + updateStyles: function() { + this.handles.each( function(h){ Element.removeClassName(h, 'selected') }); + Element.addClassName(this.activeHandle, 'selected'); + }, + startDrag: function(event) { + if(Event.isLeftClick(event)) { + if(!this.disabled){ + this.active = true; + + var handle = Event.element(event); + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + var track = handle; + if(track==this.track) { + var offsets = Position.cumulativeOffset(this.track); + this.event = event; + this.setValue(this.translateToValue( + (this.isVertical() ? pointer[1]-offsets[1] : pointer[0]-offsets[0])-(this.handleLength/2) + )); + var offsets = Position.cumulativeOffset(this.activeHandle); + this.offsetX = (pointer[0] - offsets[0]); + this.offsetY = (pointer[1] - offsets[1]); + } else { + // find the handle (prevents issues with Safari) + while((this.handles.indexOf(handle) == -1) && handle.parentNode) + handle = handle.parentNode; + + if(this.handles.indexOf(handle)!=-1) { + this.activeHandle = handle; + this.activeHandleIdx = this.handles.indexOf(this.activeHandle); + this.updateStyles(); + + var offsets = Position.cumulativeOffset(this.activeHandle); + this.offsetX = (pointer[0] - offsets[0]); + this.offsetY = (pointer[1] - offsets[1]); + } + } + } + Event.stop(event); + } + }, + update: function(event) { + if(this.active) { + if(!this.dragging) this.dragging = true; + this.draw(event); + if(Prototype.Browser.WebKit) window.scrollBy(0,0); + Event.stop(event); + } + }, + draw: function(event) { + var pointer = [Event.pointerX(event), Event.pointerY(event)]; + var offsets = Position.cumulativeOffset(this.track); + pointer[0] -= this.offsetX + offsets[0]; + pointer[1] -= this.offsetY + offsets[1]; + this.event = event; + this.setValue(this.translateToValue( this.isVertical() ? pointer[1] : pointer[0] )); + if(this.initialized && this.options.onSlide) + this.options.onSlide(this.values.length>1 ? this.values : this.value, this); + }, + endDrag: function(event) { + if(this.active && this.dragging) { + this.finishDrag(event, true); + Event.stop(event); + } + this.active = false; + this.dragging = false; + }, + finishDrag: function(event, success) { + this.active = false; + this.dragging = false; + this.updateFinished(); + }, + updateFinished: function() { + if(this.initialized && this.options.onChange) + this.options.onChange(this.values.length>1 ? this.values : this.value, this); + this.event = null; + } +} \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/sound.js b/dom/tests/mochitest/ajax/scriptaculous/src/sound.js new file mode 100644 index 0000000000..46618d9012 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/sound.js @@ -0,0 +1,60 @@ +// script.aculo.us sound.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// +// Based on code created by Jules Gravinese (http://www.webveteran.com/) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +Sound = { + tracks: {}, + _enabled: true, + template: + new Template(''), + enable: function(){ + Sound._enabled = true; + }, + disable: function(){ + Sound._enabled = false; + }, + play: function(url){ + if(!Sound._enabled) return; + var options = Object.extend({ + track: 'global', url: url, replace: false + }, arguments[1] || {}); + + if(options.replace && this.tracks[options.track]) { + $R(0, this.tracks[options.track].id).each(function(id){ + var sound = $('sound_'+options.track+'_'+id); + sound.Stop && sound.Stop(); + sound.remove(); + }) + this.tracks[options.track] = null; + } + + if(!this.tracks[options.track]) + this.tracks[options.track] = { id: 0 } + else + this.tracks[options.track].id++; + + options.id = this.tracks[options.track].id; + if (Prototype.Browser.IE) { + var sound = document.createElement('bgsound'); + sound.setAttribute('id','sound_'+options.track+'_'+options.id); + sound.setAttribute('src',options.url); + sound.setAttribute('loop','1'); + sound.setAttribute('autostart','true'); + $$('body')[0].appendChild(sound); + } + else + new Insertion.Bottom($$('body')[0], Sound.template.evaluate(options)); + } +}; + +if(Prototype.Browser.Gecko && navigator.userAgent.indexOf("Win") > 0){ + if(navigator.plugins && $A(navigator.plugins).detect(function(p){ return p.name.indexOf('QuickTime') != -1 })) + Sound.template = new Template('') + else + Sound.play = function(){} +} diff --git a/dom/tests/mochitest/ajax/scriptaculous/src/unittest.js b/dom/tests/mochitest/ajax/scriptaculous/src/unittest.js new file mode 100644 index 0000000000..9844b1ce8a --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/src/unittest.js @@ -0,0 +1,586 @@ +// script.aculo.us unittest.js v1.7.1_beta2, Tue May 15 15:15:45 EDT 2007 + +// Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +// (c) 2005-2007 Jon Tirsen (http://www.tirsen.com) +// (c) 2005-2007 Michael Schuerig (http://www.schuerig.de/michael/) +// +// script.aculo.us is freely distributable under the terms of an MIT-style license. +// For details, see the script.aculo.us web site: http://script.aculo.us/ + +// experimental, Firefox-only +Event.simulateMouse = function(element, eventName) { + var options = Object.extend({ + pointerX: 0, + pointerY: 0, + buttons: 0, + ctrlKey: false, + altKey: false, + shiftKey: false, + metaKey: false + }, arguments[2] || {}); + var oEvent = document.createEvent("MouseEvents"); + oEvent.initMouseEvent(eventName, true, true, document.defaultView, + options.buttons, options.pointerX, options.pointerY, options.pointerX, options.pointerY, + options.ctrlKey, options.altKey, options.shiftKey, options.metaKey, 0, $(element)); + + if(this.mark) Element.remove(this.mark); + this.mark = document.createElement('div'); + this.mark.appendChild(document.createTextNode(" ")); + document.body.appendChild(this.mark); + this.mark.style.position = 'absolute'; + this.mark.style.top = options.pointerY + "px"; + this.mark.style.left = options.pointerX + "px"; + this.mark.style.width = "5px"; + this.mark.style.height = "5px;"; + this.mark.style.borderTop = "1px solid red;" + this.mark.style.borderLeft = "1px solid red;" + + if(this.step) + alert('['+new Date().getTime().toString()+'] '+eventName+'/'+Test.Unit.inspect(options)); + + $(element).dispatchEvent(oEvent); +}; + +// Note: Due to a fix in Firefox 1.0.5/6 that probably fixed "too much", this doesn't work in 1.0.6 or DP2. +// You need to downgrade to 1.0.4 for now to get this working +// See https://bugzilla.mozilla.org/show_bug.cgi?id=289940 for the fix that fixed too much +Event.simulateKey = function(element, eventName) { + var options = Object.extend({ + ctrlKey: false, + altKey: false, + shiftKey: false, + metaKey: false, + keyCode: 0, + charCode: 0 + }, arguments[2] || {}); + + var oEvent = document.createEvent("KeyboardEvent"); + oEvent.initKeyEvent(eventName, true, true, window, + options.ctrlKey, options.altKey, options.shiftKey, options.metaKey, + options.keyCode, options.charCode ); + $(element).dispatchEvent(oEvent); +}; + +Event.simulateKeys = function(element, command) { + for(var i=0; i' + + '' + + '' + + '' + + '
      StatusTestMessage
      '; + this.logsummary = $('logsummary') + this.loglines = $('loglines'); + }, + _toHTML: function(txt) { + return txt.escapeHTML().replace(/\n/g,"
      "); + }, + addLinksToResults: function(){ + $$("tr.failed .nameCell").each( function(td){ // todo: limit to children of this.log + td.title = "Run only this test" + Event.observe(td, 'click', function(){ window.location.search = "?tests=" + td.innerHTML;}); + }); + $$("tr.passed .nameCell").each( function(td){ // todo: limit to children of this.log + td.title = "Run all tests" + Event.observe(td, 'click', function(){ window.location.search = "";}); + }); + } +} + +Test.Unit.Runner = Class.create(); +Test.Unit.Runner.prototype = { + initialize: function(testcases) { + this.options = Object.extend({ + testLog: 'testlog' + }, arguments[1] || {}); + this.options.resultsURL = this.parseResultsURLQueryParameter(); + this.options.tests = this.parseTestsQueryParameter(); + if (this.options.testLog) { + this.options.testLog = $(this.options.testLog) || null; + } + if(this.options.tests) { + this.tests = []; + for(var i = 0; i < this.options.tests.length; i++) { + if(/^test/.test(this.options.tests[i])) { + this.tests.push(new Test.Unit.Testcase(this.options.tests[i], testcases[this.options.tests[i]], testcases["setup"], testcases["teardown"])); + } + } + } else { + if (this.options.test) { + this.tests = [new Test.Unit.Testcase(this.options.test, testcases[this.options.test], testcases["setup"], testcases["teardown"])]; + } else { + this.tests = []; + for(var testcase in testcases) { + if(/^test/.test(testcase)) { + this.tests.push( + new Test.Unit.Testcase( + this.options.context ? ' -> ' + this.options.titles[testcase] : testcase, + testcases[testcase], testcases["setup"], testcases["teardown"] + )); + } + } + } + } + this.currentTest = 0; + this.logger = new Test.Unit.Logger(this.options.testLog); + setTimeout(this.runTests.bind(this), 1000); + }, + parseResultsURLQueryParameter: function() { + return window.location.search.parseQuery()["resultsURL"]; + }, + parseTestsQueryParameter: function(){ + if (window.location.search.parseQuery()["tests"]){ + return window.location.search.parseQuery()["tests"].split(','); + }; + }, + // Returns: + // "ERROR" if there was an error, + // "FAILURE" if there was a failure, or + // "SUCCESS" if there was neither + getResult: function() { + var hasFailure = false; + for(var i=0;i 0) { + return "ERROR"; + } + if (this.tests[i].failures > 0) { + hasFailure = true; + } + } + if (hasFailure) { + return "FAILURE"; + } else { + return "SUCCESS"; + } + }, + postResults: function() { + if (this.options.resultsURL) { + new Ajax.Request(this.options.resultsURL, + { method: 'get', parameters: 'result=' + this.getResult(), asynchronous: false }); + } + }, + runTests: function() { + var test = this.tests[this.currentTest]; + if (!test) { + // finished! + this.postResults(); + this.logger.summary(this.summary()); + return; + } + if(!test.isWaiting) { + this.logger.start(test.name); + } + test.run(); + if(test.isWaiting) { + this.logger.message("Waiting for " + test.timeToWait + "ms"); + setTimeout(this.runTests.bind(this), test.timeToWait || 1000); + } else { + this.logger.finish(test.status(), test.summary()); + this.currentTest++; + // tail recursive, hopefully the browser will skip the stackframe + this.runTests(); + } + }, + summary: function() { + var assertions = 0; + var failures = 0; + var errors = 0; + var messages = []; + for(var i=0;i 0) return 'failed'; + if (this.errors > 0) return 'error'; + return 'passed'; + }, + assert: function(expression) { + var message = arguments[1] || 'assert: got "' + Test.Unit.inspect(expression) + '"'; + try { expression ? this.pass() : + this.fail(message); } + catch(e) { this.error(e); } + }, + assertEqual: function(expected, actual) { + var message = arguments[2] || "assertEqual"; + try { (expected == actual) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertInspect: function(expected, actual) { + var message = arguments[2] || "assertInspect"; + try { (expected == actual.inspect()) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertEnumEqual: function(expected, actual) { + var message = arguments[2] || "assertEnumEqual"; + try { $A(expected).length == $A(actual).length && + expected.zip(actual).all(function(pair) { return pair[0] == pair[1] }) ? + this.pass() : this.fail(message + ': expected ' + Test.Unit.inspect(expected) + + ', actual ' + Test.Unit.inspect(actual)); } + catch(e) { this.error(e); } + }, + assertNotEqual: function(expected, actual) { + var message = arguments[2] || "assertNotEqual"; + try { (expected != actual) ? this.pass() : + this.fail(message + ': got "' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertIdentical: function(expected, actual) { + var message = arguments[2] || "assertIdentical"; + try { (expected === actual) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertNotIdentical: function(expected, actual) { + var message = arguments[2] || "assertNotIdentical"; + try { !(expected === actual) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertNull: function(obj) { + var message = arguments[1] || 'assertNull' + try { (obj==null) ? this.pass() : + this.fail(message + ': got "' + Test.Unit.inspect(obj) + '"'); } + catch(e) { this.error(e); } + }, + assertMatch: function(expected, actual) { + var message = arguments[2] || 'assertMatch'; + var regex = new RegExp(expected); + try { (regex.exec(actual)) ? this.pass() : + this.fail(message + ' : regex: "' + Test.Unit.inspect(expected) + ' did not match: ' + Test.Unit.inspect(actual) + '"'); } + catch(e) { this.error(e); } + }, + assertHidden: function(element) { + var message = arguments[1] || 'assertHidden'; + this.assertEqual("none", element.style.display, message); + }, + assertNotNull: function(object) { + var message = arguments[1] || 'assertNotNull'; + this.assert(object != null, message); + }, + assertType: function(expected, actual) { + var message = arguments[2] || 'assertType'; + try { + (actual.constructor == expected) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + (actual.constructor) + '"'); } + catch(e) { this.error(e); } + }, + assertNotOfType: function(expected, actual) { + var message = arguments[2] || 'assertNotOfType'; + try { + (actual.constructor != expected) ? this.pass() : + this.fail(message + ': expected "' + Test.Unit.inspect(expected) + + '", actual "' + (actual.constructor) + '"'); } + catch(e) { this.error(e); } + }, + assertInstanceOf: function(expected, actual) { + var message = arguments[2] || 'assertInstanceOf'; + try { + (actual instanceof expected) ? this.pass() : + this.fail(message + ": object was not an instance of the expected type"); } + catch(e) { this.error(e); } + }, + assertNotInstanceOf: function(expected, actual) { + var message = arguments[2] || 'assertNotInstanceOf'; + try { + !(actual instanceof expected) ? this.pass() : + this.fail(message + ": object was an instance of the not expected type"); } + catch(e) { this.error(e); } + }, + assertRespondsTo: function(method, obj) { + var message = arguments[2] || 'assertRespondsTo'; + try { + (obj[method] && typeof obj[method] == 'function') ? this.pass() : + this.fail(message + ": object doesn't respond to [" + method + "]"); } + catch(e) { this.error(e); } + }, + assertReturnsTrue: function(method, obj) { + var message = arguments[2] || 'assertReturnsTrue'; + try { + var m = obj[method]; + if(!m) m = obj['is'+method.charAt(0).toUpperCase()+method.slice(1)]; + m() ? this.pass() : + this.fail(message + ": method returned false"); } + catch(e) { this.error(e); } + }, + assertReturnsFalse: function(method, obj) { + var message = arguments[2] || 'assertReturnsFalse'; + try { + var m = obj[method]; + if(!m) m = obj['is'+method.charAt(0).toUpperCase()+method.slice(1)]; + !m() ? this.pass() : + this.fail(message + ": method returned true"); } + catch(e) { this.error(e); } + }, + assertRaise: function(exceptionName, method) { + var message = arguments[2] || 'assertRaise'; + try { + method(); + this.fail(message + ": exception expected but none was raised"); } + catch(e) { + ((exceptionName == null) || (e.name==exceptionName)) ? this.pass() : this.error(e); + } + }, + assertElementsMatch: function() { + var expressions = $A(arguments), elements = $A(expressions.shift()); + if (elements.length != expressions.length) { + this.fail('assertElementsMatch: size mismatch: ' + elements.length + ' elements, ' + expressions.length + ' expressions'); + return false; + } + elements.zip(expressions).all(function(pair, index) { + var element = $(pair.first()), expression = pair.last(); + if (element.match(expression)) return true; + this.fail('assertElementsMatch: (in index ' + index + ') expected ' + expression.inspect() + ' but got ' + element.inspect()); + }.bind(this)) && this.pass(); + }, + assertElementMatches: function(element, expression) { + this.assertElementsMatch([element], expression); + }, + benchmark: function(operation, iterations) { + var startAt = new Date(); + (iterations || 1).times(operation); + var timeTaken = ((new Date())-startAt); + this.info((arguments[2] || 'Operation') + ' finished ' + + iterations + ' iterations in ' + (timeTaken/1000)+'s' ); + return timeTaken; + }, + _isVisible: function(element) { + element = $(element); + if(!element.parentNode) return true; + this.assertNotNull(element); + if(element.style && Element.getStyle(element, 'display') == 'none') + return false; + + return this._isVisible(element.parentNode); + }, + assertNotVisible: function(element) { + this.assert(!this._isVisible(element), Test.Unit.inspect(element) + " was not hidden and didn't have a hidden parent either. " + ("" || arguments[1])); + }, + assertVisible: function(element) { + this.assert(this._isVisible(element), Test.Unit.inspect(element) + " was not visible. " + ("" || arguments[1])); + }, + benchmark: function(operation, iterations) { + var startAt = new Date(); + (iterations || 1).times(operation); + var timeTaken = ((new Date())-startAt); + this.info((arguments[2] || 'Operation') + ' finished ' + + iterations + ' iterations in ' + (timeTaken/1000)+'s' ); + return timeTaken; + } +} + +Test.Unit.Testcase = Class.create(); +Object.extend(Object.extend(Test.Unit.Testcase.prototype, Test.Unit.Assertions.prototype), { + initialize: function(name, test, setup, teardown) { + Test.Unit.Assertions.prototype.initialize.bind(this)(); + this.name = name; + + if(typeof test == 'string') { + test = test.gsub(/(\.should[^\(]+\()/,'#{0}this,'); + test = test.gsub(/(\.should[^\(]+)\(this,\)/,'#{1}(this)'); + this.test = function() { + eval('with(this){'+test+'}'); + } + } else { + this.test = test || function() {}; + } + + this.setup = setup || function() {}; + this.teardown = teardown || function() {}; + this.isWaiting = false; + this.timeToWait = 1000; + }, + wait: function(time, nextPart) { + this.isWaiting = true; + this.test = nextPart; + this.timeToWait = time; + }, + run: function() { + try { + try { + if (!this.isWaiting) this.setup.bind(this)(); + this.isWaiting = false; + this.test.bind(this)(); + } finally { + if(!this.isWaiting) { + this.teardown.bind(this)(); + } + } + } + catch(e) { this.error(e); } + } +}); + +// *EXPERIMENTAL* BDD-style testing to please non-technical folk +// This draws many ideas from RSpec http://rspec.rubyforge.org/ + +Test.setupBDDExtensionMethods = function(){ + var METHODMAP = { + shouldEqual: 'assertEqual', + shouldNotEqual: 'assertNotEqual', + shouldEqualEnum: 'assertEnumEqual', + shouldBeA: 'assertType', + shouldNotBeA: 'assertNotOfType', + shouldBeAn: 'assertType', + shouldNotBeAn: 'assertNotOfType', + shouldBeNull: 'assertNull', + shouldNotBeNull: 'assertNotNull', + + shouldBe: 'assertReturnsTrue', + shouldNotBe: 'assertReturnsFalse', + shouldRespondTo: 'assertRespondsTo' + }; + Test.BDDMethods = {}; + for(m in METHODMAP) { + Test.BDDMethods[m] = eval( + 'function(){'+ + 'var args = $A(arguments);'+ + 'var scope = args.shift();'+ + 'scope.'+METHODMAP[m]+'.apply(scope,(args || []).concat([this])); }'); + } + [Array.prototype, String.prototype, Number.prototype].each( + function(p){ Object.extend(p, Test.BDDMethods) } + ); +} + +Test.context = function(name, spec, log){ + Test.setupBDDExtensionMethods(); + + var compiledSpec = {}; + var titles = {}; + for(specName in spec) { + switch(specName){ + case "setup": + case "teardown": + compiledSpec[specName] = spec[specName]; + break; + default: + var testName = 'test'+specName.gsub(/\s+/,'-').camelize(); + var body = spec[specName].toString().split('\n').slice(1); + if(/^\{/.test(body[0])) body = body.slice(1); + body.pop(); + body = body.map(function(statement){ + return statement.strip() + }); + compiledSpec[testName] = body.join('\n'); + titles[testName] = specName; + } + } + new Test.Unit.Runner(compiledSpec, { titles: titles, testLog: log || 'testlog', context: name }); +}; + +if ( parent.SimpleTest && parent.runAJAXTest ) (function(){ + var finish = Test.Unit.Logger.prototype.finish; + Test.Unit.Logger.prototype.finish = function(status,summary){ + var match = summary.match(/(\d+).*(\d+).*(\d+)/) + var fail = parseInt(match[2]) + parseInt(match[3]); + var pass = match[1] - fail; + + for ( var i = 0; i < pass; i++ ) + parent.SimpleTest.ok( true, `${this.testName}: ${summary}` ); + + for ( var i = 0; i < fail; i++ ) + parent.SimpleTest.ok( false, `${this.testName}: ${summary}` ); + + return finish.apply( this, arguments ); + }; + + // Intentionally overwrite (to stop the Ajax request) + Test.Unit.Runner.prototype.postResults = parent.runAJAXTest; + + Ajax.InPlaceEditor.prototype.onFailure = function(){}; +})(); diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_result.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_result.html new file mode 100644 index 0000000000..55dcbeae1c --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_result.html @@ -0,0 +1 @@ +Server received: To be edited \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_text.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_text.html new file mode 100644 index 0000000000..a6f35d1324 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_inplaceeditor_text.html @@ -0,0 +1 @@ +Text from server \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_updater_result.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_updater_result.html new file mode 100644 index 0000000000..5f11f56ce8 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_ajax_updater_result.html @@ -0,0 +1,20 @@ +Test text + + + +more test text + + + + + +even more test text + + some other test text + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result.html new file mode 100644 index 0000000000..f03b34ffc7 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result.html @@ -0,0 +1,11 @@ +
        +
      • test1
      • test2
      • +
      • test3
      • +
      • BOLD
      • + +
      • (GET ME NOT)(GET <ME> INSTEAD)
      • + +
      • Here we have a link which should work
      • + +
      • Here we have some international ©∏Á®Äç†∑rß
      • +
      \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result_nobr.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result_nobr.html new file mode 100644 index 0000000000..742ff18f1c --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/_autocomplete_result_nobr.html @@ -0,0 +1 @@ +
      • test1
      • test2
      • test3
      • BOLD
      • (GET ME NOT)(GET <ME> INSTEAD)
      • Here we have a link which should work
      • Here we have some international ©∏Á®Äç†∑rß
      \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_autocompleter_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_autocompleter_test.html new file mode 100644 index 0000000000..69c1fadc78 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_autocompleter_test.html @@ -0,0 +1,232 @@ + + + + script.aculo.us Unit test file + + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for Ajax.Autocompleter in controls.js. +

      + + +
      + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_inplaceeditor_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_inplaceeditor_test.html new file mode 100644 index 0000000000..4104d9959d --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/ajax_inplaceeditor_test.html @@ -0,0 +1,152 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for Ajax.InPlaceEditor in controls.js +

      + + +
      + +

      To be edited

      +edit + +
      First line
      Second line
      Third line
      + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/bdd_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/bdd_test.html new file mode 100644 index 0000000000..02cb10bff7 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/bdd_test.html @@ -0,0 +1,138 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      + + +
      + +
      initial
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/builder_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/builder_test.html new file mode 100644 index 0000000000..3475198385 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/builder_test.html @@ -0,0 +1,258 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for builder.js +

      + + +
      + +
      + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/dragdrop_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/dragdrop_test.html new file mode 100644 index 0000000000..686bd0f6f9 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/dragdrop_test.html @@ -0,0 +1,131 @@ + + + + script.aculo.us Unit test file + + + + + + + + + +

      script.aculo.us Unit test file

      +

      + Test of drag & drop functions in dragdrop.js +

      + + +
      + +

      p_test

      +

      p_test2

      +

      p_test3

      +img_text +
      droppable_test
      + +
      div_test
      +
      div_absolute_test
      +
      div_absolute_inline_test
      + +
      +
      droppable_test
      +
      droppable_test
      +
      + +
      +
      droppable_test
      +
      + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/effects_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/effects_test.html new file mode 100644 index 0000000000..4fb6296589 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/effects_test.html @@ -0,0 +1,250 @@ + + + + script.aculo.us Unit test file + + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for effects.js +

      + + +
      + + +
      + +
      Well
      +
      You know
      +
      Whoo-hoo!
      + +
      ERROR MESSAGE
      +
      SECOND ERROR MESSAGE
      +
      THIRD ERROR MESSAGE
      + +
        +
      • Lorem ipsum dolor sit amet, consectetur adipisicing elit,
      • +
      • sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
      • +
      • Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
      • +
      • nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
      • +
      • reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
      • +
      + +
      ROTFL
      + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/element_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/element_test.html new file mode 100644 index 0000000000..88fcb3f417 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/element_test.html @@ -0,0 +1,104 @@ + + + + script.aculo.us Unit test file + + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for Element extensions in effects.js +

      + + +
      + + +
      + +
      + + +
      + +
      blah
      + +
      + + + +
      +
      + + +op2 +op2 +op3 +op3 + + +
      + First class + Second class + First and Second class + Third class Nested First class + +
      123
      • 4
      + +
      + +
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/icon.png b/dom/tests/mochitest/ajax/scriptaculous/test/unit/icon.png new file mode 100644 index 0000000000..f752986b7e Binary files /dev/null and b/dom/tests/mochitest/ajax/scriptaculous/test/unit/icon.png differ diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/loading_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/loading_test.html new file mode 100644 index 0000000000..d36f96ccc1 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/loading_test.html @@ -0,0 +1,41 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Test dynamic loading in scriptaculous.js +

      + + +
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/position_clone_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/position_clone_test.html new file mode 100644 index 0000000000..0644c631b5 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/position_clone_test.html @@ -0,0 +1,312 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for Postion.clone (to be moved to Prototype) +

      + + +
      + + + + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/slider_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/slider_test.html new file mode 100644 index 0000000000..018b45d078 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/slider_test.html @@ -0,0 +1,438 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for slider.js +

      + +
      +
      +
      + +
      +
      +
      + +
      +
      +
      + +
      + 1 + 2 + 3 +
      + +
      + 1 + 2 + 3 +
      + +
      +
      1
      +
      2
      +
      3
      + +
      +
      +
      + +
      +
      1
      +
      2
      +
      3
      + +
      +
      +
      + +
      +
      1
      +
      2
      +
      3
      + +
      +
      + +
      +
      +
      + + +
      + + +
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/sortable_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/sortable_test.html new file mode 100644 index 0000000000..c2bafd0b9d --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/sortable_test.html @@ -0,0 +1,205 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Test of sortable functions in dragdrop.js +

      + + +
      + + +
        +
      • item 1
      • +
      • item 1
        • !!!
      • +
      • item 1
      • +
      • item 1
      • + +
      + +
      +
      item 4
      item 5
      + img + +
      + +
      + +
      + + +
        +
      • item 1
      • +
      • item 1 +
          +
        • !!!
        • +
        +
      • +
      • item 1
      • +
      • item 1
      • + +
      + + +
        +
      • item 1
      • +
      • item 1
        • !!!
      • +
      + +
        +
      • item 1
      • +
      • item 1
        • !!!
      • +
      + + + + + diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/string_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/string_test.html new file mode 100644 index 0000000000..995dba496c --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/string_test.html @@ -0,0 +1,67 @@ + + + + script.aculo.us Unit test file + + + + + + + +

      script.aculo.us Unit test file

      +

      + Tests for String.prototype extensions in effects.js +

      + + +
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test/unit/unit_test.html b/dom/tests/mochitest/ajax/scriptaculous/test/unit/unit_test.html new file mode 100644 index 0000000000..39c078959c --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test/unit/unit_test.html @@ -0,0 +1,154 @@ + + + + script.aculo.us Unit test file + + + + + + + + +

      script.aculo.us Unit test file

      +

      + This is a preliminary version mostly for testing the unittest library. +

      + + +
      + + +
      + +
      + + + +
      +
      + +
      • x1
      • x2
      +
      • x1
      • x2
      + +
      XXXX
      + +
      testcss1
      testcss1
      + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/ajax/scriptaculous/test_Scriptaculous.html b/dom/tests/mochitest/ajax/scriptaculous/test_Scriptaculous.html new file mode 100644 index 0000000000..f0bf2cbe65 --- /dev/null +++ b/dom/tests/mochitest/ajax/scriptaculous/test_Scriptaculous.html @@ -0,0 +1,15 @@ + + + + Test for Scriptaculous + + + + + + + + + + + diff --git a/dom/tests/mochitest/beacon/beacon-frame.html b/dom/tests/mochitest/beacon/beacon-frame.html new file mode 100644 index 0000000000..f50e04e90a --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-frame.html @@ -0,0 +1,24 @@ + + + + Inner frame performing a basic sendBeacon from within an iframe + + + + + + + diff --git a/dom/tests/mochitest/beacon/beacon-handler.sjs b/dom/tests/mochitest/beacon/beacon-handler.sjs new file mode 100644 index 0000000000..a1e851ac5b --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-handler.sjs @@ -0,0 +1,149 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* 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/. */ + +const CC = Components.Constructor; +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); + +function DEBUG(str) { + // dump("********** " + str + "\n"); +} + +function setOurState(data) { + x = { + data, + QueryInterface(iid) { + return this; + }, + }; + x.wrappedJSObject = x; + setObjectState("beacon-handler", x); + DEBUG("our state is " + data); +} + +function getOurState() { + var data; + getObjectState("beacon-handler", function (x) { + // x can be null if no one has set any state yet + if (x) { + data = x.wrappedJSObject.data; + } + }); + return data; +} + +function handleRequest(request, response) { + DEBUG("Entered request handler"); + response.setHeader("Cache-Control", "no-cache", false); + + function finishControlResponse(response) { + DEBUG("********* sending out the control GET response"); + var data = getState("beaconData"); + var mimetype = getState("beaconMimetype"); + DEBUG("GET was sending : " + data + "\n"); + DEBUG("GET was sending : " + mimetype + "\n"); + var result = { + data, + mimetype, + }; + response.write(JSON.stringify(result)); + setOurState(null); + } + + if (request.method == "GET") { + DEBUG(" ------------ GET --------------- "); + response.setHeader("Content-Type", "application/json", false); + switch (request.queryString) { + case "getLastBeaconCors": + // Allow CORS responses of the last beacon + var originHeader = request.getHeader("origin"); + response.setHeader( + "Access-Control-Allow-Headers", + "content-type", + false + ); + response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); + response.setHeader("Access-Control-Allow-Origin", originHeader, false); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + // fallthrough + case "getLastBeacon": + var state = getOurState(); + if (state === "unblocked") { + finishControlResponse(response); + } else { + DEBUG("GET has arrived, but POST has not, blocking response!"); + setOurState(response); + response.processAsync(); + } + break; + default: + response.setStatusLine(request.httpVersion, 400, "Bad Request"); + break; + } + return; + } + + if (request.method == "POST") { + DEBUG(" ------------ POST --------------- "); + var body = new BinaryInputStream(request.bodyInputStream); + var avail; + var bytes = []; + + while ((avail = body.available()) > 0) { + Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } + + var data = ""; + for (var i = 0; i < bytes.length; i++) { + // We are only passing strings at this point. + if (bytes[i] < 32) { + continue; + } + var charcode = String.fromCharCode(bytes[i]); + data += charcode; + } + + var mimetype = ""; + if (request.hasHeader("Content-Type")) { + mimetype = request.getHeader("Content-Type"); + } + + // check to see if this is form data. + if (mimetype.indexOf("multipart/form-data") != -1) { + // trim the mime type to make testing easier. + mimetype = "multipart/form-data"; + // Extract only the form-data name. + + var pattern = /; name=\"(.+)\";/; + data = data.split(pattern)[1]; + } + + DEBUG("********** POST was sending : " + data + "\n"); + DEBUG("********** POST was sending : " + mimetype + "\n"); + setState("beaconData", data); + setState("beaconMimetype", mimetype); + + response.setHeader("Content-Type", "text/plain", false); + response.write("ok"); + + var blockedResponse = getOurState(); + if (typeof blockedResponse == "object" && blockedResponse) { + DEBUG("GET is already pending, finishing!"); + finishControlResponse(blockedResponse); + blockedResponse.finish(); + } else { + DEBUG("GET has not arrived, marking it as unblocked"); + setOurState("unblocked"); + } + + return; + } + + response.setStatusLine(request.httpVersion, 402, "Bad Request"); +} diff --git a/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs b/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs new file mode 100644 index 0000000000..96304187a8 --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs @@ -0,0 +1,45 @@ +/* + * TestSever customized specifically for the needs of: + * Bug 1280692 - navigator.sendBeacon() should not send origin header + */ + +function handleRequest(request, response) { + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/plain", false); + + // case XHR-REQUEST: the xhr-request tries to query the + // stored header from the beacon request. + if (request.queryString == "queryheader") { + var header = getState("originHeader"); + // if the beacon already stored the header - return. + if (header) { + response.write(header); + setState("originHeader", ""); + return; + } + // otherwise wait for the beacon request + response.processAsync(); + setObjectState("xhr-response", response); + return; + } + + // case BEACON-REQUEST: get the beacon header and + // store the header on the server. + var header = "reset"; + try { + header = request.getHeader("origin"); + } catch (e) { + header = "no-header"; + } + setState("originHeader", header); + + // if there is an xhr-request waiting, return the header now. + getObjectState("xhr-response", function (xhrResponse) { + if (!xhrResponse) { + return; + } + setState("originHeader", ""); + xhrResponse.write(header); + xhrResponse.finish(); + }); +} diff --git a/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs b/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs new file mode 100644 index 0000000000..c675049225 --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs @@ -0,0 +1,37 @@ +function handleRequest(request, response) { + response.setHeader("Cache-Control", "no-cache, must-revalidate", false); + + if (request.queryString === "verify") { + var preflightState = getState("preflight"); + response.write(preflightState === "done" ? "green" : "red"); + return; + } + + var originHeader = request.getHeader("origin"); + response.setHeader("Access-Control-Allow-Headers", "content-type", false); + response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); + response.setHeader("Access-Control-Allow-Origin", originHeader, false); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + + if (request.queryString === "beacon") { + if (request.method == "OPTIONS") { + setState("preflight", "done"); + response.setStatusLine(null, 200, "OK"); + return; + } + response.setStatusLine(null, 200, "OK"); + response.write("DONE"); + return; + } + + if (request.queryString === "fail") { + if (request.method == "OPTIONS") { + setState("preflight", "done"); + response.setStatusLine(null, 400, "Bad Request"); + return; + } + setState("preflight", "oops"); + response.setStatusLine(null, 200, "OK"); + response.write("DONE"); + } +} diff --git a/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs b/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs new file mode 100644 index 0000000000..5496353588 --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs @@ -0,0 +1,46 @@ +/* + * TestSever customized specifically for the needs of: + * Bug 1280692 - sendBeacon() should follow 30x redirect + * + * Here is a sequence of the test: + * [1] sendBeacon (identified by the queryString 'beacon') which gets redirected + * [2] redirected sendBeacon (identified by the queryString 'redirected') which + * updates the state idniciating that redirected sendBeacon succeeds. + * [3] xhr request (identified by the queryString 'verifyRedirectDidSucceed') + * which checks if the state was not changed from 'reset' to 'gree'. If the channel + * woulnd't be blocked correctly the redirected channel would set the state to 'red'. + * + */ + +function handleRequest(request, response) { + response.setHeader("Cache-Control", "no-cache, must-revalidate", false); + + // [Sequence 3] + if (request.queryString === "verifyRedirectDidSucceed") { + var redirectState = getState("redirectState"); + response.write(redirectState); + return; + } + + // [Sequence 1] + if (request.queryString === "beacon") { + setState("redirectState", "reset"); + var newLocation = + "http://mochi.test:8888/tests/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs?redirected"; + response.setStatusLine("1.1", 302, "Found"); + response.setHeader("Location", newLocation, false); + return; + } + + // [Sequence 2] + if (request.queryString === "redirected") { + setState("redirectState", "green"); + response.setStatusLine(null, 200, "OK"); + return; + } + + // we should never get here, but just in case let's + // set the state to something unexpected + setState("redirectState", "red"); + response.setStatusLine(null, 200, "OK"); +} diff --git a/dom/tests/mochitest/beacon/beacon-set-cookie.sjs b/dom/tests/mochitest/beacon/beacon-set-cookie.sjs new file mode 100644 index 0000000000..e2dce0b3c6 --- /dev/null +++ b/dom/tests/mochitest/beacon/beacon-set-cookie.sjs @@ -0,0 +1,10 @@ +function handleRequest(request, response) { + response.setHeader( + "Set-Cookie", + "cookie=" + request.host + "~" + Math.random() + ); + response.setHeader("Content-Type", "text/plain", false); + response.setHeader("Cache-Control", "no-cache", false); + + response.setStatusLine(request.httpVersion, 200, "OK"); +} diff --git a/dom/tests/mochitest/beacon/chrome.toml b/dom/tests/mochitest/beacon/chrome.toml new file mode 100644 index 0000000000..92a95b0515 --- /dev/null +++ b/dom/tests/mochitest/beacon/chrome.toml @@ -0,0 +1,15 @@ +[DEFAULT] +skip-if = ["os == 'android'"] + +["test_beaconCookies.html"] +skip-if = ["(verify && !debug && (os == 'win'))"] +support-files = [ + "beacon-set-cookie.sjs", + "file_beaconCookies.html", +] + +["test_beaconWithSafelistedContentType.html"] +support-files = [ + "beacon-handler.sjs", + "file_beaconSafelist.html", +] diff --git a/dom/tests/mochitest/beacon/file_beaconCookies.html b/dom/tests/mochitest/beacon/file_beaconCookies.html new file mode 100644 index 0000000000..aeecb2263e --- /dev/null +++ b/dom/tests/mochitest/beacon/file_beaconCookies.html @@ -0,0 +1,8 @@ + + diff --git a/dom/tests/mochitest/beacon/file_beaconSafelist.html b/dom/tests/mochitest/beacon/file_beaconSafelist.html new file mode 100644 index 0000000000..0079ed5074 --- /dev/null +++ b/dom/tests/mochitest/beacon/file_beaconSafelist.html @@ -0,0 +1,11 @@ + + diff --git a/dom/tests/mochitest/beacon/mochitest.toml b/dom/tests/mochitest/beacon/mochitest.toml new file mode 100644 index 0000000000..84e85fdbf2 --- /dev/null +++ b/dom/tests/mochitest/beacon/mochitest.toml @@ -0,0 +1,37 @@ +[DEFAULT] +support-files = [ + "beacon-frame.html", + "beacon-handler.sjs", + "beacon-preflight-handler.sjs", + "beacon-originheader-handler.sjs", + "beacon-redirect-handler.sjs", +] + +["test_beacon.html"] + +["test_beaconContentPolicy.html"] + +["test_beaconFrame.html"] +skip-if = [ + "http3", + "http2", +] + +["test_beaconOriginHeader.html"] +skip-if = [ + "verify", + "http3", + "http2", +] + +["test_beaconPreflightWithCustomContentType.html"] +skip-if = [ + "http3", + "http2", +] + +["test_beaconRedirect.html"] +skip-if = [ + "http3", + "http2", +] diff --git a/dom/tests/mochitest/beacon/test_beacon.html b/dom/tests/mochitest/beacon/test_beacon.html new file mode 100644 index 0000000000..4df99cfe8e --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beacon.html @@ -0,0 +1,60 @@ + + + + + Test whether sendBeacon fails for non-HTTP URIs and syntactically incorrect calls + + + + +Mozilla Bug 936340 +

      + +
      +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/beacon/test_beaconContentPolicy.html b/dom/tests/mochitest/beacon/test_beaconContentPolicy.html new file mode 100644 index 0000000000..07f1080681 --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconContentPolicy.html @@ -0,0 +1,103 @@ + + + + + Test that sendBeacon obeys content policy directives + + + + +Mozilla Bug 936340 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/beacon/test_beaconCookies.html b/dom/tests/mochitest/beacon/test_beaconCookies.html new file mode 100644 index 0000000000..5e634664eb --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconCookies.html @@ -0,0 +1,84 @@ + + + + + Test whether sendBeacon sets cookies + + + + +Mozilla Bug 936340 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/beacon/test_beaconFrame.html b/dom/tests/mochitest/beacon/test_beaconFrame.html new file mode 100644 index 0000000000..940cb9ecf6 --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconFrame.html @@ -0,0 +1,118 @@ + + + + + Test for beacon + + + + +Mozilla Bug 936340 +

      + +
      +
      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/beacon/test_beaconOriginHeader.html b/dom/tests/mochitest/beacon/test_beaconOriginHeader.html new file mode 100644 index 0000000000..177ca94dba --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconOriginHeader.html @@ -0,0 +1,66 @@ + + + + Bug 1280692 - navigator.sendBeacon() should send origin header + + + + + +

      + + + + + + diff --git a/dom/tests/mochitest/beacon/test_beaconPreflightWithCustomContentType.html b/dom/tests/mochitest/beacon/test_beaconPreflightWithCustomContentType.html new file mode 100644 index 0000000000..d1007b78c5 --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconPreflightWithCustomContentType.html @@ -0,0 +1,57 @@ + + + + + Test for Bug 1210302 + + + + +Mozilla Bug 936340 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/beacon/test_beaconRedirect.html b/dom/tests/mochitest/beacon/test_beaconRedirect.html new file mode 100644 index 0000000000..210b7a1e98 --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconRedirect.html @@ -0,0 +1,57 @@ + + + + Bug 1280692 - sendBeacon() should follow 30x redirect + + + + + +

      + + + + + + diff --git a/dom/tests/mochitest/beacon/test_beaconWithSafelistedContentType.html b/dom/tests/mochitest/beacon/test_beaconWithSafelistedContentType.html new file mode 100644 index 0000000000..054732c8fd --- /dev/null +++ b/dom/tests/mochitest/beacon/test_beaconWithSafelistedContentType.html @@ -0,0 +1,101 @@ + + + + + Test for Bug 1557386 + + + + +Mozilla Bug 1557386 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/bug289714.sjs b/dom/tests/mochitest/bugs/bug289714.sjs new file mode 100644 index 0000000000..ac0f1d1f47 --- /dev/null +++ b/dom/tests/mochitest/bugs/bug289714.sjs @@ -0,0 +1,16 @@ +// Send a payload that's over 32k in size, which for a plain response should be +// large enough to ensure that OnDataAvailable is called more than once (and so +// the XHR will be triggered to send more than one "loading" event if desired). + +function handleRequest(request, response) { + // Send 81920 bytes of こんにちは in Shift-JIS encoding, framed in XML. + let data = + "" + + new Array(1 << 13).join("\x82\xb1\x82\xf1\x82\xc9\x82\xbf\x82\xcd") + + ""; + response.processAsync(); + response.setHeader("Content-Type", "text/xml", false); + response.setHeader("Content-Length", "" + data.length, false); + response.write(data, data.length); + response.finish(); +} diff --git a/dom/tests/mochitest/bugs/bug346659-echoer.html b/dom/tests/mochitest/bugs/bug346659-echoer.html new file mode 100644 index 0000000000..bc6f6a9031 --- /dev/null +++ b/dom/tests/mochitest/bugs/bug346659-echoer.html @@ -0,0 +1,4 @@ + diff --git a/dom/tests/mochitest/bugs/bug346659-opener-echoer.html b/dom/tests/mochitest/bugs/bug346659-opener-echoer.html new file mode 100644 index 0000000000..fde456a36a --- /dev/null +++ b/dom/tests/mochitest/bugs/bug346659-opener-echoer.html @@ -0,0 +1,6 @@ + diff --git a/dom/tests/mochitest/bugs/bug346659-opener.html b/dom/tests/mochitest/bugs/bug346659-opener.html new file mode 100644 index 0000000000..d9d6128047 --- /dev/null +++ b/dom/tests/mochitest/bugs/bug346659-opener.html @@ -0,0 +1,9 @@ + + + diff --git a/dom/tests/mochitest/bugs/bug346659-parent-echoer.html b/dom/tests/mochitest/bugs/bug346659-parent-echoer.html new file mode 100644 index 0000000000..3096153725 --- /dev/null +++ b/dom/tests/mochitest/bugs/bug346659-parent-echoer.html @@ -0,0 +1,5 @@ + diff --git a/dom/tests/mochitest/bugs/bug346659-parent.html b/dom/tests/mochitest/bugs/bug346659-parent.html new file mode 100644 index 0000000000..7d675cf20e --- /dev/null +++ b/dom/tests/mochitest/bugs/bug346659-parent.html @@ -0,0 +1,11 @@ + + + + diff --git a/dom/tests/mochitest/bugs/bug458091_child.html b/dom/tests/mochitest/bugs/bug458091_child.html new file mode 100644 index 0000000000..2173e9e6d8 --- /dev/null +++ b/dom/tests/mochitest/bugs/bug458091_child.html @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/dom/tests/mochitest/bugs/child_bug260264.html b/dom/tests/mochitest/bugs/child_bug260264.html new file mode 100644 index 0000000000..e8f7d578b9 --- /dev/null +++ b/dom/tests/mochitest/bugs/child_bug260264.html @@ -0,0 +1,11 @@ + + + + + + + + diff --git a/dom/tests/mochitest/bugs/devicemotion_inner.html b/dom/tests/mochitest/bugs/devicemotion_inner.html new file mode 100644 index 0000000000..c3ceb858b4 --- /dev/null +++ b/dom/tests/mochitest/bugs/devicemotion_inner.html @@ -0,0 +1,10 @@ + + + + + + diff --git a/dom/tests/mochitest/bugs/devicemotion_outer.html b/dom/tests/mochitest/bugs/devicemotion_outer.html new file mode 100644 index 0000000000..43bcb6028a --- /dev/null +++ b/dom/tests/mochitest/bugs/devicemotion_outer.html @@ -0,0 +1,19 @@ + + + + + + diff --git a/dom/tests/mochitest/bugs/file1_bug414291.html b/dom/tests/mochitest/bugs/file1_bug414291.html new file mode 100644 index 0000000000..0d8be9d052 --- /dev/null +++ b/dom/tests/mochitest/bugs/file1_bug414291.html @@ -0,0 +1 @@ + diff --git a/dom/tests/mochitest/bugs/file2_bug414291.html b/dom/tests/mochitest/bugs/file2_bug414291.html new file mode 100644 index 0000000000..fdb590c807 --- /dev/null +++ b/dom/tests/mochitest/bugs/file2_bug414291.html @@ -0,0 +1 @@ + diff --git a/dom/tests/mochitest/bugs/file3_bug414291.html b/dom/tests/mochitest/bugs/file3_bug414291.html new file mode 100644 index 0000000000..e9095f76e1 --- /dev/null +++ b/dom/tests/mochitest/bugs/file3_bug414291.html @@ -0,0 +1 @@ + diff --git a/dom/tests/mochitest/bugs/file_bug593174_1.html b/dom/tests/mochitest/bugs/file_bug593174_1.html new file mode 100644 index 0000000000..ec455fcf22 --- /dev/null +++ b/dom/tests/mochitest/bugs/file_bug593174_1.html @@ -0,0 +1,5 @@ + + +Nothing to see here. Move along. + + diff --git a/dom/tests/mochitest/bugs/file_bug593174_2.html b/dom/tests/mochitest/bugs/file_bug593174_2.html new file mode 100644 index 0000000000..080b016d7c --- /dev/null +++ b/dom/tests/mochitest/bugs/file_bug593174_2.html @@ -0,0 +1,30 @@ + + +Page 2 has an iframe of its own. + + + + + + diff --git a/dom/tests/mochitest/bugs/file_bug809290_b1.html b/dom/tests/mochitest/bugs/file_bug809290_b1.html new file mode 100644 index 0000000000..3a3863a61c --- /dev/null +++ b/dom/tests/mochitest/bugs/file_bug809290_b1.html @@ -0,0 +1,14 @@ + + + + + + + diff --git a/dom/tests/mochitest/bugs/test_bug1022869.html b/dom/tests/mochitest/bugs/test_bug1022869.html new file mode 100644 index 0000000000..da618d48cd --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1022869.html @@ -0,0 +1,39 @@ + + + + + + Test for Bug 1022869 + + + + + + +Mozilla Bug 1022869 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug1112040.html b/dom/tests/mochitest/bugs/test_bug1112040.html new file mode 100644 index 0000000000..69680a8b93 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1112040.html @@ -0,0 +1,32 @@ + + + + + Test for Bug 1112040 + + + + + + +Mozilla Bug 1112040 +

      +

      +
      + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug1160342_marquee.html b/dom/tests/mochitest/bugs/test_bug1160342_marquee.html new file mode 100644 index 0000000000..6fa2f8997b --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1160342_marquee.html @@ -0,0 +1,288 @@ + + + + + Test for Bug 411103 + + + + +Mozilla Bug 1160342 +

      +
      +marquee +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug1171215.html b/dom/tests/mochitest/bugs/test_bug1171215.html new file mode 100644 index 0000000000..edd4f5d824 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1171215.html @@ -0,0 +1,66 @@ + + + + + + Test for Bug 1022869 + + + + + +Mozilla Bug 1022869 + + diff --git a/dom/tests/mochitest/bugs/test_bug132255.html b/dom/tests/mochitest/bugs/test_bug132255.html new file mode 100644 index 0000000000..31a4016285 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug132255.html @@ -0,0 +1,39 @@ + + + + + Test for Bug 132255 + + + + + +Mozilla Bug 132255 +

      + + +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug1530292.html b/dom/tests/mochitest/bugs/test_bug1530292.html new file mode 100644 index 0000000000..3761c21cd1 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1530292.html @@ -0,0 +1,47 @@ + + + + + + Test for Bug 1530292 + + + + + +Mozilla Bug 1530292 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug1551425_reference_to_childnodes_nodelist_keeps_childnodes_alive.html b/dom/tests/mochitest/bugs/test_bug1551425_reference_to_childnodes_nodelist_keeps_childnodes_alive.html new file mode 100644 index 0000000000..be2e297f17 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1551425_reference_to_childnodes_nodelist_keeps_childnodes_alive.html @@ -0,0 +1,37 @@ + + + + + + + Test for bug 1551425: check reference to childNodes' NodeList keeps the + child nodes alive. + + + + + +Mozilla bug 1551425 +

      + + +
      +  
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug159849.html b/dom/tests/mochitest/bugs/test_bug159849.html new file mode 100644 index 0000000000..0cb1c07bdf --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug159849.html @@ -0,0 +1,44 @@ + + + + + Test for Bug 159849 + + + + +Mozilla Bug 159849 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug1774135.html b/dom/tests/mochitest/bugs/test_bug1774135.html new file mode 100644 index 0000000000..6d511e75ec --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug1774135.html @@ -0,0 +1,114 @@ + + + +Test for Bug 1774135 + + + + +Mozilla Bug 1774135 +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/bugs/test_bug260264.html b/dom/tests/mochitest/bugs/test_bug260264.html new file mode 100644 index 0000000000..9259320b4b --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug260264.html @@ -0,0 +1,198 @@ + + + + + Test for Bug 260264 + + + + + + +Mozilla Bug 260264 +

      + link +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug260264_nested.html b/dom/tests/mochitest/bugs/test_bug260264_nested.html new file mode 100644 index 0000000000..1021220275 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug260264_nested.html @@ -0,0 +1,138 @@ + + + + + Test for Bug 260264 + + + + + +Mozilla Bug 260264 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug265203.html b/dom/tests/mochitest/bugs/test_bug265203.html new file mode 100644 index 0000000000..94f56c0164 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug265203.html @@ -0,0 +1,108 @@ + + + + + Test for Bug 265203 + + + + + +Mozilla Bug 265203 +

      +MozillaFirefox
      +
      + + + + + + + + + + + + + +
      MozillaFirefox
      MozillaFirefox
      +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug289714.html b/dom/tests/mochitest/bugs/test_bug289714.html new file mode 100644 index 0000000000..11d28347ef --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug289714.html @@ -0,0 +1,44 @@ + + + + + Test for Bug 289714 + + + + +Mozilla Bug 289714 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug291377.html b/dom/tests/mochitest/bugs/test_bug291377.html new file mode 100644 index 0000000000..321fdf7571 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug291377.html @@ -0,0 +1,40 @@ + + + + + Test for Bug 291377 + + + + +Mozilla Bug 291377 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug304459.html b/dom/tests/mochitest/bugs/test_bug304459.html new file mode 100644 index 0000000000..766ae4a284 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug304459.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 304459 + + + + +Mozilla Bug 304459 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug308856.html b/dom/tests/mochitest/bugs/test_bug308856.html new file mode 100644 index 0000000000..b954a63a1c --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug308856.html @@ -0,0 +1,42 @@ + + + + + Test for Bug 308856 + + + + +Mozilla Bug 308856 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug327891.html b/dom/tests/mochitest/bugs/test_bug327891.html new file mode 100644 index 0000000000..4e2e95ea61 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug327891.html @@ -0,0 +1,33 @@ + + + + + Test for Bug 327891 + + + + +Mozilla Bug 327891 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug333983.html b/dom/tests/mochitest/bugs/test_bug333983.html new file mode 100644 index 0000000000..c3ace11dbc --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug333983.html @@ -0,0 +1,35 @@ + + + + + Test for Bug 333983 + + + + +Mozilla Bug 333983 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug335976.xhtml b/dom/tests/mochitest/bugs/test_bug335976.xhtml new file mode 100644 index 0000000000..d219f7115c --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug335976.xhtml @@ -0,0 +1,68 @@ + + + + Test for Bug 335976 + + + + +Mozilla Bug 335976 +

      + + + +
      +
      + +
      +
      + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug342448.html b/dom/tests/mochitest/bugs/test_bug342448.html new file mode 100644 index 0000000000..5fd35c1f0f --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug342448.html @@ -0,0 +1,36 @@ + + + + + Test for Bug 342448 + + + + + + +Mozilla Bug 342448 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug345521.html b/dom/tests/mochitest/bugs/test_bug345521.html new file mode 100644 index 0000000000..8a396f0d1e --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug345521.html @@ -0,0 +1,36 @@ + + + + + Test for Bug 345521 + + + + +Mozilla Bug 345521 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug346659.html b/dom/tests/mochitest/bugs/test_bug346659.html new file mode 100644 index 0000000000..20684fa32d --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug346659.html @@ -0,0 +1,207 @@ + + + + + Test for Bug 346659 + + + + +Mozilla Bug 346659 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug369306.html b/dom/tests/mochitest/bugs/test_bug369306.html new file mode 100644 index 0000000000..596a74f3bb --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug369306.html @@ -0,0 +1,137 @@ + + + + + Test for Bug 369306 + + + + + +Mozilla Bug 369306 +

      +
      +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug370098.html b/dom/tests/mochitest/bugs/test_bug370098.html new file mode 100644 index 0000000000..29614a4372 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug370098.html @@ -0,0 +1,50 @@ + + + + + Test for Bug 370098 + + + + +Mozilla Bug 370098 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug377539.html b/dom/tests/mochitest/bugs/test_bug377539.html new file mode 100644 index 0000000000..50148e77b5 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug377539.html @@ -0,0 +1,55 @@ + + + + + + Testcase for bug 377539 + + + + + +Mozilla Bug 377539 + +

      + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug384122.html b/dom/tests/mochitest/bugs/test_bug384122.html new file mode 100644 index 0000000000..81dc3907e0 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug384122.html @@ -0,0 +1,32 @@ + + + + + Test for Bug 384122 + + + + +Mozilla Bug 384122 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug389366.html b/dom/tests/mochitest/bugs/test_bug389366.html new file mode 100644 index 0000000000..82d493c5ea --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug389366.html @@ -0,0 +1,65 @@ + + + + + Test for Bug 389366 + + + + +Mozilla Bug 389366 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug393974.html b/dom/tests/mochitest/bugs/test_bug393974.html new file mode 100644 index 0000000000..fe14355bf6 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug393974.html @@ -0,0 +1,68 @@ + + + + + Test for Bug 393974 + + + + +Mozilla Bug 393974 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug394769.html b/dom/tests/mochitest/bugs/test_bug394769.html new file mode 100644 index 0000000000..73bff1b07b --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug394769.html @@ -0,0 +1,42 @@ + + + + + + Test for Bug 394769 + + + + +Mozilla Bug 394769 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug396843.html b/dom/tests/mochitest/bugs/test_bug396843.html new file mode 100644 index 0000000000..bd9dede189 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug396843.html @@ -0,0 +1,240 @@ + + + + + Test for Bug 396843 + + + + +Mozilla Bug 396843 +

      + +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug400204.html b/dom/tests/mochitest/bugs/test_bug400204.html new file mode 100644 index 0000000000..0364ec4008 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug400204.html @@ -0,0 +1,64 @@ + + + + + Test for Bug 400204 + + + + +Mozilla Bug 400204 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug404748.html b/dom/tests/mochitest/bugs/test_bug404748.html new file mode 100644 index 0000000000..1e9b33427b --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug404748.html @@ -0,0 +1,31 @@ + + + + + Test for Bug 404748 + + + + +Mozilla Bug 404748 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug414291.html b/dom/tests/mochitest/bugs/test_bug414291.html new file mode 100644 index 0000000000..f87b5e0dc5 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug414291.html @@ -0,0 +1,28 @@ + + + + + Test for Bug 414291 + + + + +Mozilla Bug 414291 + + + + diff --git a/dom/tests/mochitest/bugs/test_bug42976.html b/dom/tests/mochitest/bugs/test_bug42976.html new file mode 100644 index 0000000000..d5f66d456c --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug42976.html @@ -0,0 +1,81 @@ + + + + + Test for Bug 42976 + + + + +Mozilla Bug 42976 +

      +
      + ; + + + + + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug430276.html b/dom/tests/mochitest/bugs/test_bug430276.html new file mode 100644 index 0000000000..907ab0795e --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug430276.html @@ -0,0 +1,41 @@ + + + + + Test for Bug 430276 + + + + +Mozilla Bug 430276 +

      + +
      +
      +
      + +
      + +
      + +
      + + + + diff --git a/dom/tests/mochitest/bugs/test_bug456151.html b/dom/tests/mochitest/bugs/test_bug456151.html new file mode 100644 index 0000000000..7b0cb22776 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug456151.html @@ -0,0 +1,73 @@ + + + + + Test for Bug 456151 + + + + + + +Mozilla Bug 456151 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug458091.html b/dom/tests/mochitest/bugs/test_bug458091.html new file mode 100644 index 0000000000..2bb6bc5404 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug458091.html @@ -0,0 +1,100 @@ + + + + + Test for Bug 458091 + + + + + +Mozilla Bug 458091 + + +
      +Javascript Link
      +HTTP Link
      +Target Link
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug459848.html b/dom/tests/mochitest/bugs/test_bug459848.html new file mode 100644 index 0000000000..495711fdb7 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug459848.html @@ -0,0 +1,60 @@ + + + + + Test for Bug 459848 + + + + +Mozilla Bug 459848 +

      + +
      +
      +
      + + + + diff --git a/dom/tests/mochitest/bugs/test_bug465263.html b/dom/tests/mochitest/bugs/test_bug465263.html new file mode 100644 index 0000000000..a7c95b5177 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug465263.html @@ -0,0 +1,49 @@ + + + + + Test for Bug 465263 + + + + +Mozilla Bug 465263 +

      + + + + +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug484775.html b/dom/tests/mochitest/bugs/test_bug484775.html new file mode 100644 index 0000000000..31edf0447e --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug484775.html @@ -0,0 +1,55 @@ + + + + + Test for Bug 484775 + + + + + +Mozilla Bug 484775 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug492925.html b/dom/tests/mochitest/bugs/test_bug492925.html new file mode 100644 index 0000000000..d7a067611f --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug492925.html @@ -0,0 +1,45 @@ + + + + + Test for Bug 492925 + + + + + +Mozilla Bug 492925 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug49312.html b/dom/tests/mochitest/bugs/test_bug49312.html new file mode 100644 index 0000000000..14e6d56287 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug49312.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 49312 + + + + + +Mozilla Bug 49312 +

      + +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug495219.html b/dom/tests/mochitest/bugs/test_bug495219.html new file mode 100644 index 0000000000..8fd04862e9 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug495219.html @@ -0,0 +1,27 @@ + + + + + Test for Bug 495219 + + + + +Mozilla + Bug 495219 + + + + diff --git a/dom/tests/mochitest/bugs/test_bug529328.html b/dom/tests/mochitest/bugs/test_bug529328.html new file mode 100644 index 0000000000..231234f4db --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug529328.html @@ -0,0 +1,122 @@ + + + + + Test for Bug 529328 + + + + +Mozilla Bug 529328 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug531176.html b/dom/tests/mochitest/bugs/test_bug531176.html new file mode 100644 index 0000000000..f091c0d475 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug531176.html @@ -0,0 +1,66 @@ + + + + + Test for Bug 531176 + + + + +Mozilla Bug 531176 +

      + +
      +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug531542.html b/dom/tests/mochitest/bugs/test_bug531542.html new file mode 100644 index 0000000000..89dcd702a4 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug531542.html @@ -0,0 +1,40 @@ + + + + + Test for Bug 531542 + + + + +Mozilla Bug 531542 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug534149.html b/dom/tests/mochitest/bugs/test_bug534149.html new file mode 100644 index 0000000000..8c1a8b7e4d --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug534149.html @@ -0,0 +1,85 @@ + + + + + Test for Bug 534149 + + + + +Mozilla Bug 534149 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug541530.html b/dom/tests/mochitest/bugs/test_bug541530.html new file mode 100644 index 0000000000..f43dba8aa9 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug541530.html @@ -0,0 +1,94 @@ + + + + + Test for Bug 411103 + + + + +Mozilla Bug 541530 +

      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug545314.html b/dom/tests/mochitest/bugs/test_bug545314.html new file mode 100644 index 0000000000..09bf74fb4e --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug545314.html @@ -0,0 +1,29 @@ + + + + + Test for Bug 545314 + + + + +Mozilla Bug 545314 +

      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug548828.html b/dom/tests/mochitest/bugs/test_bug548828.html new file mode 100644 index 0000000000..83602e6637 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug548828.html @@ -0,0 +1,37 @@ + + + + + Test for Bug 548828 + + + + + +Mozilla Bug 548828 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug558973.html b/dom/tests/mochitest/bugs/test_bug558973.html new file mode 100644 index 0000000000..9208e3c587 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug558973.html @@ -0,0 +1,42 @@ + + + + + Test for Bug 558973 + + + + +Mozilla Bug 558973 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug562433.html b/dom/tests/mochitest/bugs/test_bug562433.html new file mode 100644 index 0000000000..e7fa9da4e7 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug562433.html @@ -0,0 +1,35 @@ + + + + + Test for Bug 562433 + + + + +Mozilla Bug 562433 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug563487.html b/dom/tests/mochitest/bugs/test_bug563487.html new file mode 100644 index 0000000000..eeb90bc961 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug563487.html @@ -0,0 +1,34 @@ + + + + + + + Test for Bug 563487 + + + + +Mozilla Bug 563487 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug581072.html b/dom/tests/mochitest/bugs/test_bug581072.html new file mode 100644 index 0000000000..3878bed0a7 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug581072.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 581072 + + + + +Mozilla Bug 581072 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug583225.html b/dom/tests/mochitest/bugs/test_bug583225.html new file mode 100644 index 0000000000..2923bc52bd --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug583225.html @@ -0,0 +1,41 @@ + + + + + Test for Bug 583225 + + + + +Mozilla Bug 583225 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug585240.html b/dom/tests/mochitest/bugs/test_bug585240.html new file mode 100644 index 0000000000..829f4684ae --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug585240.html @@ -0,0 +1,33 @@ + + + + + Test for Bug 585240 + + + + +Mozilla Bug 585240 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug585819.html b/dom/tests/mochitest/bugs/test_bug585819.html new file mode 100644 index 0000000000..7efe8fc800 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug585819.html @@ -0,0 +1,38 @@ + + + + + Test for Bug 585819 + + + + + +Mozilla Bug 585819 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug593174.html b/dom/tests/mochitest/bugs/test_bug593174.html new file mode 100644 index 0000000000..8c24aaf06a --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug593174.html @@ -0,0 +1,85 @@ + + + + + Test for Bug 593174 + + + + +Mozilla Bug 593174 + + + + + + + diff --git a/dom/tests/mochitest/bugs/test_bug61098.html b/dom/tests/mochitest/bugs/test_bug61098.html new file mode 100644 index 0000000000..9502a28749 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug61098.html @@ -0,0 +1,370 @@ + + + + + Test for Bug 61098 + + + + + + +Mozilla Bug 61098 +

      +

      + +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug612267.html b/dom/tests/mochitest/bugs/test_bug612267.html new file mode 100644 index 0000000000..65e3660be1 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug612267.html @@ -0,0 +1,27 @@ + + + + + Test for Bug 393974 + + + + +Mozilla Bug 612267 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug617296.html b/dom/tests/mochitest/bugs/test_bug617296.html new file mode 100644 index 0000000000..23f0ebf14b --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug617296.html @@ -0,0 +1,27 @@ + + + + + Test for Bug 617296 + + + + +Mozilla Bug 617296 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug620947.html b/dom/tests/mochitest/bugs/test_bug620947.html new file mode 100644 index 0000000000..fdca09af24 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug620947.html @@ -0,0 +1,31 @@ + + + + + Test for Bug 620947 + + + + +Mozilla Bug 620947 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug622361.html b/dom/tests/mochitest/bugs/test_bug622361.html new file mode 100644 index 0000000000..a8855fc853 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug622361.html @@ -0,0 +1,53 @@ + + + + + + + + + + diff --git a/dom/tests/mochitest/bugs/test_bug633133.html b/dom/tests/mochitest/bugs/test_bug633133.html new file mode 100644 index 0000000000..19c61dbfee --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug633133.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 633133 + + + + +Mozilla Bug 633133 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug642026.html b/dom/tests/mochitest/bugs/test_bug642026.html new file mode 100644 index 0000000000..6f24b2120c --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug642026.html @@ -0,0 +1,56 @@ + + + + + Test for Bug 642026 + + + + +Mozilla Bug 642026 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug648465.html b/dom/tests/mochitest/bugs/test_bug648465.html new file mode 100644 index 0000000000..4ea76555ae --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug648465.html @@ -0,0 +1,33 @@ + + + + + Test for Bug 648465 + + + + + + Mozilla Bug 648465 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug654137.html b/dom/tests/mochitest/bugs/test_bug654137.html new file mode 100644 index 0000000000..1a1c739764 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug654137.html @@ -0,0 +1,25 @@ + + + + + Test for Bug 654137 + + + + +Mozilla Bug 654137 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug664737.html b/dom/tests/mochitest/bugs/test_bug664737.html new file mode 100644 index 0000000000..423004b2fc --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug664737.html @@ -0,0 +1,39 @@ + + + + + + Test for Bug 664737 + + + + +Mozilla Bug 664737 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug665548.html b/dom/tests/mochitest/bugs/test_bug665548.html new file mode 100644 index 0000000000..9d31b32c0a --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug665548.html @@ -0,0 +1,28 @@ + + + + + Test for Bug 665548 + + + + +Mozilla Bug 665548 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug684544.html b/dom/tests/mochitest/bugs/test_bug684544.html new file mode 100644 index 0000000000..d069db1969 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug684544.html @@ -0,0 +1,54 @@ + + + + + Test for Bug + + + + +Mozilla Bug +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug691707.html b/dom/tests/mochitest/bugs/test_bug691707.html new file mode 100644 index 0000000000..c567cbefad --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug691707.html @@ -0,0 +1,36 @@ + + + + + + Test for Bug 691707 + + + + +Mozilla Bug 691707 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug698061.html b/dom/tests/mochitest/bugs/test_bug698061.html new file mode 100644 index 0000000000..f023ca0ad8 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug698061.html @@ -0,0 +1,40 @@ + + + + + Test for Bug 698061 + + + + +Mozilla Bug 698061 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug698551.html b/dom/tests/mochitest/bugs/test_bug698551.html new file mode 100644 index 0000000000..a6b73b4efd --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug698551.html @@ -0,0 +1,39 @@ + + + + + Test for Bug 698551 + + + + +Mozilla Bug 698551 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug707749.html b/dom/tests/mochitest/bugs/test_bug707749.html new file mode 100644 index 0000000000..b3243ce83f --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug707749.html @@ -0,0 +1,34 @@ + + + + + Test for Bug 707749 + + + + +Mozilla Bug 707749 +

      + +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug740811.html b/dom/tests/mochitest/bugs/test_bug740811.html new file mode 100644 index 0000000000..cf614de0c8 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug740811.html @@ -0,0 +1,27 @@ + + + + + + Test for Bug 740811 + + + + +Mozilla Bug 740811 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug743615.html b/dom/tests/mochitest/bugs/test_bug743615.html new file mode 100644 index 0000000000..19dbb233dd --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug743615.html @@ -0,0 +1,83 @@ + + + + + + Test for Bug 743615 + + + + + +Mozilla Bug 743615 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug755320.html b/dom/tests/mochitest/bugs/test_bug755320.html new file mode 100644 index 0000000000..4dcfe8e840 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug755320.html @@ -0,0 +1,30 @@ + + + + + Test for Bug 755320 + + + + +Mozilla Bug 755320 + + + + + + + + diff --git a/dom/tests/mochitest/bugs/test_bug777628.html b/dom/tests/mochitest/bugs/test_bug777628.html new file mode 100644 index 0000000000..8a00cbd1df --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug777628.html @@ -0,0 +1,42 @@ + + + + + + Test for Bug 743615 + + + + + +Mozilla Bug 777628 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug809290.html b/dom/tests/mochitest/bugs/test_bug809290.html new file mode 100644 index 0000000000..f6ac91dff6 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug809290.html @@ -0,0 +1,54 @@ + + + + + + Test for Bug 809290 + + + + +Mozilla Bug 809290 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_bug817476.html b/dom/tests/mochitest/bugs/test_bug817476.html new file mode 100644 index 0000000000..1be29166a3 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug817476.html @@ -0,0 +1,45 @@ + + + + + + Test for Bug 817476 + + + + +Mozilla Bug 817476 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug823173.html b/dom/tests/mochitest/bugs/test_bug823173.html new file mode 100644 index 0000000000..bd2c2fa96e --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug823173.html @@ -0,0 +1,30 @@ + + + + + + Test for Bug 823173 + + + + +Mozilla Bug 823173 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug848088.html b/dom/tests/mochitest/bugs/test_bug848088.html new file mode 100644 index 0000000000..24c43c421a --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug848088.html @@ -0,0 +1,48 @@ + + + + + + Test for Bug 848088 + + + + + +Mozilla Bug 848088 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug850517.html b/dom/tests/mochitest/bugs/test_bug850517.html new file mode 100644 index 0000000000..82b209966f --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug850517.html @@ -0,0 +1,47 @@ + + + + + + Test for Bug 850517 + + + + + +Mozilla Bug 850517 +

      + + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug857555.html b/dom/tests/mochitest/bugs/test_bug857555.html new file mode 100644 index 0000000000..b72d1573e4 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug857555.html @@ -0,0 +1,33 @@ + + + + + + Test for Bug 857555 + + + + + +Mozilla Bug 857555 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug862540.html b/dom/tests/mochitest/bugs/test_bug862540.html new file mode 100644 index 0000000000..27e77dc0ef --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug862540.html @@ -0,0 +1,31 @@ + + + + + + Test for Bug 862540 + + + + + +Mozilla Bug 862540 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug873229.html b/dom/tests/mochitest/bugs/test_bug873229.html new file mode 100644 index 0000000000..c245275159 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug873229.html @@ -0,0 +1,83 @@ + + + + + + Test for Bug 873229 + + + + + + +Mozilla Bug 873229 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug876098.html b/dom/tests/mochitest/bugs/test_bug876098.html new file mode 100644 index 0000000000..4c4fa41a57 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug876098.html @@ -0,0 +1,52 @@ + + + + + + Test for Bug 876098 + + + + + +Mozilla Bug 876098 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_bug927901.html b/dom/tests/mochitest/bugs/test_bug927901.html new file mode 100644 index 0000000000..c012a062db --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug927901.html @@ -0,0 +1,40 @@ + + + + + + Test for Bug 927901 + + + + + +Mozilla Bug 927901 +

      + +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_devicemotion_multiple_listeners.html b/dom/tests/mochitest/bugs/test_devicemotion_multiple_listeners.html new file mode 100644 index 0000000000..7b0b8ff731 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_devicemotion_multiple_listeners.html @@ -0,0 +1,35 @@ + + + + + Test for Bug 673472 + + + + + +Mozilla Bug 673472 +
      +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_domparser_after_blank.html b/dom/tests/mochitest/bugs/test_domparser_after_blank.html new file mode 100644 index 0000000000..d8ea6e09f9 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_domparser_after_blank.html @@ -0,0 +1,33 @@ + + + + Test for creating DOMParser() after docoment.write() blanks the page + + + + +Mozilla Bug 820841 +

      + +
      +
      +
      + + + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_instanceof_error_message.html b/dom/tests/mochitest/bugs/test_instanceof_error_message.html new file mode 100644 index 0000000000..05dfa602f7 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_instanceof_error_message.html @@ -0,0 +1,111 @@ + + + + + + Test for Bug 1530413 + + + + + +Mozilla Bug 1530413 +

      + +
      +
      + + \ No newline at end of file diff --git a/dom/tests/mochitest/bugs/test_navigator_buildID.html b/dom/tests/mochitest/bugs/test_navigator_buildID.html new file mode 100644 index 0000000000..231bd99c23 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_navigator_buildID.html @@ -0,0 +1,93 @@ + + + + + Test for Bug 583181 + + + + + +Mozilla Bug 583181 +

      + +
      +
      +
      + + + + +Mozilla Bug 1348409 + +

      + Here's some text to search for: fhqwhgads! A hovercraft full of eels! +

      + +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_onerror_message.html b/dom/tests/mochitest/bugs/test_onerror_message.html new file mode 100644 index 0000000000..476c02d978 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_onerror_message.html @@ -0,0 +1,97 @@ + + + + + + Test for Bug 743049 + + + + +Mozilla Bug 743049 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_postmessage.html b/dom/tests/mochitest/bugs/test_postmessage.html new file mode 100644 index 0000000000..8dee4ec4a5 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_postmessage.html @@ -0,0 +1,65 @@ + + + + + Test for Bug 1574017 + + + + + + +Mozilla Bug 1574017 +

      + +
      +
      + + + diff --git a/dom/tests/mochitest/bugs/test_protochains.html b/dom/tests/mochitest/bugs/test_protochains.html new file mode 100644 index 0000000000..62be36d118 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_protochains.html @@ -0,0 +1,59 @@ + + + + + + Test for Bug 817420 + + + + +Mozilla Bug 817420 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_resize_move_windows.html b/dom/tests/mochitest/bugs/test_resize_move_windows.html new file mode 100644 index 0000000000..11b2d90f21 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_resize_move_windows.html @@ -0,0 +1,349 @@ + + + + + Test for Bug 565541 + + + + +Mozilla Bug 565541 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_sizetocontent_clamp.html b/dom/tests/mochitest/bugs/test_sizetocontent_clamp.html new file mode 100644 index 0000000000..3ed3f55ec6 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_sizetocontent_clamp.html @@ -0,0 +1,80 @@ + + + + + + Test for Bug 764240 + + + + + +Mozilla Bug 764240 +

      +
      + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_toJSON.html b/dom/tests/mochitest/bugs/test_toJSON.html new file mode 100644 index 0000000000..77eaccb1d1 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_toJSON.html @@ -0,0 +1,71 @@ + + + + + + Test for Bug 760851 + + + + + +Mozilla Bug 760851 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/bugs/test_window_bar.html b/dom/tests/mochitest/bugs/test_window_bar.html new file mode 100644 index 0000000000..7c5a1f38a6 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_window_bar.html @@ -0,0 +1,151 @@ + + + + + Test for Bug 642338 + + + + +Mozilla Bug 642338 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/bugs/utils_bug260264.js b/dom/tests/mochitest/bugs/utils_bug260264.js new file mode 100644 index 0000000000..dfb0eb45a0 --- /dev/null +++ b/dom/tests/mochitest/bugs/utils_bug260264.js @@ -0,0 +1,69 @@ +const ALLOW_ACTION = SpecialPowers.Ci.nsIPermissionManager.ALLOW_ACTION; +const DENY_ACTION = SpecialPowers.Ci.nsIPermissionManager.DENY_ACTION; +const UNKNOWN_ACTION = SpecialPowers.Ci.nsIPermissionManager.UNKNOWN_ACTION; +const PROMPT_ACTION = SpecialPowers.Ci.nsIPermissionManager.PROMPT_ACTION; + +/** + * Dispatches |handler| to |element|, as if fired in response to |event|. + */ +function send(element, event, handler) { + function unique_handler() { + return handler.apply(this, arguments); + } + element.addEventListener(event, unique_handler); + try { + sendMouseEvent({ type: event }, element.id); + } finally { + element.removeEventListener(event, unique_handler); + } +} + +/** + * Because it's not nice to leave popup windows open after the tests are + * finished, we need a foolproof way to close some/all window.opened windows. + */ +(function (originalOpen) { + var wins = []; + (window.open = function () { + var win = originalOpen.apply(window, arguments); + if (win) { + wins[wins.length] = win; + } + return win; + }).close = function (n) { + var promises = []; + if (arguments.length < 1) { + n = wins.length; + } + while (n-- > 0) { + var win = wins.pop(); + if (win) { + let openedBrowsingContextID = SpecialPowers.getBrowsingContextID(win); + promises.push( + (function (openedWindow) { + return new Promise(function (resolve) { + let observer = { + observe(subject) { + if (subject.id == openedBrowsingContextID) { + SpecialPowers.removeObserver( + observer, + "browsing-context-discarded" + ); + SimpleTest.executeSoon(resolve); + } + }, + }; + + SpecialPowers.addObserver(observer, "browsing-context-discarded"); + }); + })(win) + ); + win.close(); + } else { + promises.push(Promise.resolve()); + break; + } + } + return Promise.all(promises); + }; +})(window.open); diff --git a/dom/tests/mochitest/bugs/utils_bug743615.js b/dom/tests/mochitest/bugs/utils_bug743615.js new file mode 100644 index 0000000000..24b3a77a4c --- /dev/null +++ b/dom/tests/mochitest/bugs/utils_bug743615.js @@ -0,0 +1,30 @@ +function makePattern(len, start, inc) { + var pattern = []; + while (len) { + pattern.push(start); + start = (start + inc) % 256; + --len; + } + return pattern; +} + +function setPattern(imageData, pattern) { + if (pattern.length != imageData.data.length) { + throw Error("Invalid pattern"); + } + for (var i = 0; i < pattern.length; ++i) { + imageData.data[i] = pattern[i]; + } +} + +function checkPattern(imageData, pattern) { + if (pattern.length != imageData.data.length) { + throw Error("Invalid pattern"); + } + for (var i = 0; i < pattern.length; ++i) { + if (imageData.data[i] != pattern[i]) { + return false; + } + } + return true; +} diff --git a/dom/tests/mochitest/bugs/window_bug1171215.html b/dom/tests/mochitest/bugs/window_bug1171215.html new file mode 100644 index 0000000000..f196457b18 --- /dev/null +++ b/dom/tests/mochitest/bugs/window_bug1171215.html @@ -0,0 +1,86 @@ + + + + + + Test for Bug 1022869 + + + + + + diff --git a/dom/tests/mochitest/bugs/worker_bug743615.js b/dom/tests/mochitest/bugs/worker_bug743615.js new file mode 100644 index 0000000000..16c5617bd2 --- /dev/null +++ b/dom/tests/mochitest/bugs/worker_bug743615.js @@ -0,0 +1,44 @@ +importScripts("utils_bug743615.js"); + +self.onmessage = function onMessage(evt) { + // Check the pattern that was sent. + var imageData = evt.data.imageData; + var pattern = evt.data.pattern; + var statusMessage = checkPattern(imageData, pattern) + ? "PASS" + : "Got corrupt typed array in worker"; + + // Check against the interface object. + if (!(imageData instanceof ImageData)) { + statusMessage += ", Bad interface object in worker"; + } + + // Check the getters. + if (imageData.width * imageData.height != imageData.data.length / 4) { + statusMessage += ", Bad ImageData getters in worker: "; + statusMessage += [imageData.width, imageData.height].join(", "); + } + + // Make sure that writing to .data is a no-op when not in strict mode. + var origData = imageData.data; + var threw = false; + try { + imageData.data = []; + imageData.width = 2; + imageData.height = 2; + } catch (e) { + threw = true; + } + if (threw || imageData.data !== origData) { + statusMessage = statusMessage + ", Should silently ignore sets"; + } + + // Send back a new pattern. + pattern = makePattern(imageData.data.length, 99, 2); + setPattern(imageData, pattern); + self.postMessage({ + statusMessage, + imageData, + pattern, + }); +}; diff --git a/dom/tests/mochitest/chrome/489127.html b/dom/tests/mochitest/chrome/489127.html new file mode 100644 index 0000000000..3198edf195 --- /dev/null +++ b/dom/tests/mochitest/chrome/489127.html @@ -0,0 +1,268 @@ + +nsIDOMWindowUtils::nodesFromRect test - bug 489127 + + + + + +

      +
      + + +
      + + + + +

      + + +

      + + +

      + + +

      + + +
      + + + +

      A / A
      A

      + +
      text
      + +
      text
      + +
      + +
      +
      +
      +
      + diff --git a/dom/tests/mochitest/chrome/DOMWindowCreated_chrome.xhtml b/dom/tests/mochitest/chrome/DOMWindowCreated_chrome.xhtml new file mode 100644 index 0000000000..22da59813b --- /dev/null +++ b/dom/tests/mochitest/chrome/DOMWindowCreated_chrome.xhtml @@ -0,0 +1,33 @@ + + + + + + + + + + diff --git a/dom/tests/mochitest/chrome/DOMWindowCreated_content.html b/dom/tests/mochitest/chrome/DOMWindowCreated_content.html new file mode 100644 index 0000000000..acb6b0582e --- /dev/null +++ b/dom/tests/mochitest/chrome/DOMWindowCreated_content.html @@ -0,0 +1,9 @@ + + + DOMWindowCreated helper + + + +

      DOMWindowCreated Helper

      diff --git a/dom/tests/mochitest/chrome/child_focus_frame.html b/dom/tests/mochitest/chrome/child_focus_frame.html new file mode 100644 index 0000000000..d7f0ff63cd --- /dev/null +++ b/dom/tests/mochitest/chrome/child_focus_frame.html @@ -0,0 +1,57 @@ + + + + + + +
      + +
      +
      + +

      + +

      +
      +
      + This is a scrollable area with some sufficiently long text contained within it. +
      + + +1 +2 +Link 3 +
      + + + +
      +
      + This is a scrollable area with some sufficiently long text contained within it. + This is a scrollable area with some sufficiently long text contained within it. + +
      + + + + Button 5 + + + +
      +Options + One + +
      +
      abc
      + + + +s + + + + diff --git a/dom/tests/mochitest/chrome/chrome.toml b/dom/tests/mochitest/chrome/chrome.toml new file mode 100644 index 0000000000..186b381e7d --- /dev/null +++ b/dom/tests/mochitest/chrome/chrome.toml @@ -0,0 +1,132 @@ +[DEFAULT] +skip-if = ["os == 'android'"] +support-files = [ + "489127.html", + "DOMWindowCreated_chrome.xhtml", + "DOMWindowCreated_content.html", + "child_focus_frame.html", + "file_clipboard_events_chrome.html", + "file_DOM_element_instanceof.xhtml", + "file_bug800817.xhtml", + "file_bug830858.xhtml", + "file_bug1224790-1_modal.xhtml", + "file_bug1224790-1_nonmodal.xhtml", + "file_bug1224790-2_modal.xhtml", + "file_bug1224790-2_nonmodal.xhtml", + "file_popup_blocker_chrome.html", + "file_subscript_bindings.js", + "focus_frameset.html", + "focus_window2.xhtml", + "focus_dialog.xhtml", + "queryCaretRectUnix.html", + "queryCaretRectWin.html", + "selectAtPoint.html", + "selectAtPoint-innerframe.html", + "sizemode_attribute.xhtml", + "window_activation.xhtml", + "window_callback_wrapping.xhtml", + "window_docshell_swap.xhtml", + "window_focus.xhtml", + "window_focus_inner.xhtml", + "window_focus_docnav.xhtml", + "!/dom/tests/mochitest/general/file_clonewrapper.html", + "!/dom/tests/mochitest/general/file_moving_nodeList.html", + "!/dom/tests/mochitest/general/file_moving_xhr.html", + "!/dom/tests/mochitest/geolocation/network_geolocation.sjs", +] + +["test_DOMWindowCreated.xhtml"] + +["test_DOM_element_instanceof.xhtml"] + +["test_activation.xhtml"] +tags = "fullscreen" + +["test_bug800817.xhtml"] + +["test_bug830858.xhtml"] + +["test_bug1224790-1.xhtml"] +tags = "openwindow" +skip-if = ["os != 'mac'"] + +["test_bug1224790-2.xhtml"] +tags = "openwindow" +skip-if = ["os != 'mac'"] + +["test_callback_wrapping.xhtml"] + +["test_clipboard_events_chrome.html"] + +["test_clonewrapper.xhtml"] + +["test_cyclecollector.xhtml"] + +["test_docshell_swap.xhtml"] + +["test_elements_proto.xhtml"] + +["test_focus.xhtml"] +skip-if = [ + "os == 'linux'", # bug 1296622, Bug 1605253 + "os == 'mac' && !debug", # Bug 1828622 + "os == 'win' && !debug", # Bug 1828622 +] + +["test_focus_dialog.xhtml"] + +["test_focus_docnav.xhtml"] + +["test_focused_link_scroll.xhtml"] + +["test_geolocation.xhtml"] + +["test_getTransformTo.html"] + +["test_indexedSetter.html"] + +["test_intlUtils_getDisplayNames.html"] + +["test_intlUtils_isAppLocaleRTL.html"] + +["test_moving_nodeList.xhtml"] + +["test_moving_xhr.xhtml"] + +["test_nodesFromPoint.html"] + +["test_nodesFromRect.html"] + +["test_parsingMode.html"] + +["test_popup_blocker_chrome.xhtml"] + +["test_queryCaretRect.html"] + +["test_resize_move_windows.xhtml"] +support-files = [ + "file_resize_move_windows_1.html", + "file_resize_move_windows_2.html", +] +# disabled on linux for timeouts--bug-834716 +skip-if = ["os == 'linux'"] + +["test_sandbox_bindings.xhtml"] + +["test_sandbox_eventhandler.xhtml"] + +["test_sandbox_image.xhtml"] + +["test_sandbox_postMessage.html"] + +["test_selectAtPoint.html"] + +["test_sizemode_attribute.xhtml"] +tags = "fullscreen" +skip-if = ["os != 'win'"] + +["test_subscript_bindings.xhtml"] + +["test_window_getRegionalPrefsLocales.html"] + +["test_xray_event_constructor.xhtml"] diff --git a/dom/tests/mochitest/chrome/file_DOM_element_instanceof.xhtml b/dom/tests/mochitest/chrome/file_DOM_element_instanceof.xhtml new file mode 100644 index 0000000000..92290016f0 --- /dev/null +++ b/dom/tests/mochitest/chrome/file_DOM_element_instanceof.xhtml @@ -0,0 +1,32 @@ + + + + + + + + diff --git a/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xhtml b/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xhtml new file mode 100644 index 0000000000..2093ba9c67 --- /dev/null +++ b/dom/tests/mochitest/chrome/file_bug1224790-1_modal.xhtml @@ -0,0 +1,34 @@ + + + + + + + + + diff --git a/dom/tests/mochitest/chrome/file_bug1224790-1_nonmodal.xhtml b/dom/tests/mochitest/chrome/file_bug1224790-1_nonmodal.xhtml new file mode 100644 index 0000000000..01995a916c --- /dev/null +++ b/dom/tests/mochitest/chrome/file_bug1224790-1_nonmodal.xhtml @@ -0,0 +1,28 @@ + + + + + + + diff --git a/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xhtml b/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xhtml new file mode 100644 index 0000000000..74906a05f8 --- /dev/null +++ b/dom/tests/mochitest/chrome/file_bug1224790-2_modal.xhtml @@ -0,0 +1,36 @@ + + + + + + + + + diff --git a/dom/tests/mochitest/chrome/file_bug1224790-2_nonmodal.xhtml b/dom/tests/mochitest/chrome/file_bug1224790-2_nonmodal.xhtml new file mode 100644 index 0000000000..5e3c737676 --- /dev/null +++ b/dom/tests/mochitest/chrome/file_bug1224790-2_nonmodal.xhtml @@ -0,0 +1,42 @@ + + + + + + + diff --git a/dom/tests/mochitest/chrome/file_bug800817.xhtml b/dom/tests/mochitest/chrome/file_bug800817.xhtml new file mode 100644 index 0000000000..bcd64b3ca7 --- /dev/null +++ b/dom/tests/mochitest/chrome/file_bug800817.xhtml @@ -0,0 +1,79 @@ + + + + + + + + +
      + +
      Lorem ipsum dolor sit amet, at duo debet graeci, vivendum vulputate per ut. Ne labore incorrupte vix. Cu copiosae postulant tincidunt ius, in illud appetere contentiones eos.
      + +
      + +t + + + diff --git a/dom/tests/mochitest/chrome/sizemode_attribute.xhtml b/dom/tests/mochitest/chrome/sizemode_attribute.xhtml new file mode 100644 index 0000000000..76e2a422b2 --- /dev/null +++ b/dom/tests/mochitest/chrome/sizemode_attribute.xhtml @@ -0,0 +1,86 @@ + + + + + + + + + + + + diff --git a/dom/tests/mochitest/chrome/test_DOMWindowCreated.xhtml b/dom/tests/mochitest/chrome/test_DOMWindowCreated.xhtml new file mode 100644 index 0000000000..4ad119b7f5 --- /dev/null +++ b/dom/tests/mochitest/chrome/test_DOMWindowCreated.xhtml @@ -0,0 +1,29 @@ + + + + + + + + + +

      +

      + +
      +
      + + + + +
      diff --git a/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xhtml b/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xhtml new file mode 100644 index 0000000000..9efdaab158 --- /dev/null +++ b/dom/tests/mochitest/chrome/test_DOM_element_instanceof.xhtml @@ -0,0 +1,34 @@ + + + + + + + diff --git a/dom/tests/mochitest/chrome/test_activation.xhtml b/dom/tests/mochitest/chrome/test_activation.xhtml new file mode 100644 index 0000000000..2bc5a7d98d --- /dev/null +++ b/dom/tests/mochitest/chrome/test_activation.xhtml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/chrome/test_bug1224790-1.xhtml b/dom/tests/mochitest/chrome/test_bug1224790-1.xhtml new file mode 100644 index 0000000000..9f2c345f5c --- /dev/null +++ b/dom/tests/mochitest/chrome/test_bug1224790-1.xhtml @@ -0,0 +1,69 @@ + + + + + + + + + + Mozilla Bug 1224790 + + +

      + + + + + +
      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/button.xhtml b/dom/tests/mochitest/dom-level2-html/files/button.xhtml new file mode 100644 index 0000000000..3136988242 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/button.xhtml @@ -0,0 +1,24 @@ + + + + +NIST DOM HTML Test - Button + + +
      +

      + +

      +
      + + + + +
      + +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/button.xml b/dom/tests/mochitest/dom-level2-html/files/button.xml new file mode 100644 index 0000000000..3136988242 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/button.xml @@ -0,0 +1,24 @@ + + + + +NIST DOM HTML Test - Button + + +
      +

      + +

      +
      + + + + +
      + +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/collection.html b/dom/tests/mochitest/dom-level2-html/files/collection.html new file mode 100644 index 0000000000..885202df4e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/collection.html @@ -0,0 +1,79 @@ + + + + +NIST DOM HTML Test - SELECT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      +
      +

      + +

      +
      +

      + +

      +

      + +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/collection.xhtml b/dom/tests/mochitest/dom-level2-html/files/collection.xhtml new file mode 100644 index 0000000000..9da52c1ec5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/collection.xhtml @@ -0,0 +1,82 @@ + + + + +NIST DOM HTML Test - BR + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      +
      +

      + +

      +
      +

      + +

      +

      + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/collection.xml b/dom/tests/mochitest/dom-level2-html/files/collection.xml new file mode 100644 index 0000000000..9da52c1ec5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/collection.xml @@ -0,0 +1,82 @@ + + + + +NIST DOM HTML Test - BR + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      +
      +

      + +

      +
      +

      + +

      +

      + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/directory.html b/dom/tests/mochitest/dom-level2-html/files/directory.html new file mode 100644 index 0000000000..0e2f460916 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/directory.html @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - Directory + + + +
    5. DIR item number 1.
    6. +
    7. DIR item number 2.
    8. +
    9. DIR item number 3.
    10. +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/directory.xhtml b/dom/tests/mochitest/dom-level2-html/files/directory.xhtml new file mode 100644 index 0000000000..bf70ef8453 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/directory.xhtml @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - Directory + + + +
    11. DIR item number 1.
    12. +
    13. DIR item number 2.
    14. +
    15. DIR item number 3.
    16. +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/directory.xml b/dom/tests/mochitest/dom-level2-html/files/directory.xml new file mode 100644 index 0000000000..bf70ef8453 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/directory.xml @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - Directory + + + +
    17. DIR item number 1.
    18. +
    19. DIR item number 2.
    20. +
    21. DIR item number 3.
    22. +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/div.html b/dom/tests/mochitest/dom-level2-html/files/div.html new file mode 100644 index 0000000000..6b83646216 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/div.html @@ -0,0 +1,10 @@ + + + + +NIST DOM HTML Test - DIV + + +
      The DIV element is a generic block container. This text should be centered.
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/div.xhtml b/dom/tests/mochitest/dom-level2-html/files/div.xhtml new file mode 100644 index 0000000000..7a1059a38e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/div.xhtml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - DIV + + +
      The DIV element is a generic block container. This text should be centered.
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/div.xml b/dom/tests/mochitest/dom-level2-html/files/div.xml new file mode 100644 index 0000000000..7a1059a38e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/div.xml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - DIV + + +
      The DIV element is a generic block container. This text should be centered.
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/dl.html b/dom/tests/mochitest/dom-level2-html/files/dl.html new file mode 100644 index 0000000000..5dec3affe3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/dl.html @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - DL + + +
      +
      Accountant
      +
      56,000
      +
      Female
      +
      1230 North Ave. Dallas, Texas 98551
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/dl.xhtml b/dom/tests/mochitest/dom-level2-html/files/dl.xhtml new file mode 100644 index 0000000000..72c6475d40 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/dl.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - DL + + +
      +
      Accountant
      +
      56,000
      +
      Female
      +
      1230 North Ave. Dallas, Texas 98551
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/dl.xml b/dom/tests/mochitest/dom-level2-html/files/dl.xml new file mode 100644 index 0000000000..72c6475d40 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/dl.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - DL + + +
      +
      Accountant
      +
      56,000
      +
      Female
      +
      1230 North Ave. Dallas, Texas 98551
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/document-with-applet.html b/dom/tests/mochitest/dom-level2-html/files/document-with-applet.html new file mode 100644 index 0000000000..4e6025b2d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/document-with-applet.html @@ -0,0 +1,36 @@ + + + + +NIST DOM HTML Test - DOCUMENT + + +
      +

      + + + +

      +
      +

      + +Domain +Domain + +

      +

      +DTS IMAGE LOGO +

      +

      + + + + + + +

      +

      +View Submit Button +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/document.html b/dom/tests/mochitest/dom-level2-html/files/document.html new file mode 100644 index 0000000000..530b92f189 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/document.html @@ -0,0 +1,34 @@ + + + + +NIST DOM HTML Test - DOCUMENT + + +
      +

      + + + +

      +
      +

      + +Domain +Domain + +

      +

      +DTS IMAGE LOGO +

      +

      + + + + +

      +

      +View Submit Button +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/document.xhtml b/dom/tests/mochitest/dom-level2-html/files/document.xhtml new file mode 100644 index 0000000000..3cc6ccf10f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/document.xhtml @@ -0,0 +1,39 @@ + + + + +NIST DOM HTML Test - DOCUMENT + + +
      +

      + + + +

      +
      +

      + +Domain +Domain + +

      +

      +DTS IMAGE LOGO +

      +

      + + + + + + +

      +

      +View Submit Button +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/document.xml b/dom/tests/mochitest/dom-level2-html/files/document.xml new file mode 100644 index 0000000000..3cc6ccf10f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/document.xml @@ -0,0 +1,39 @@ + + + + +NIST DOM HTML Test - DOCUMENT + + +
      +

      + + + +

      +
      +

      + +Domain +Domain + +

      +

      +DTS IMAGE LOGO +

      +

      + + + + + + +

      +

      +View Submit Button +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/element.html b/dom/tests/mochitest/dom-level2-html/files/element.html new file mode 100644 index 0000000000..a0c198e815 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/element.html @@ -0,0 +1,81 @@ + + + + +NIST DOM HTML Test - Element + + +
      + +
      +
      +

      Test Lists

      +
      +
      +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      +
      +Bold +
      +
      +
      DT element
      +
      +
      +Bidirectional algorithm overide + +
      +Italicized +
      + +
      +Teletype +
      +Subscript +
      +SuperScript +
      +Strike Through (S) +
      +Strike Through (STRIKE) +
      +Small +
      +Big +
      +Emphasis +
      +Strong +
      + + 10 Computer Code Fragment 20 Temp = 10 + Temp = 20 + *2 + Temp + Citation + +
      +Temp +
      +NIST +
      +
      Gaithersburg, MD 20899
      +
      +Not +
      + +
      +Underlined + + diff --git a/dom/tests/mochitest/dom-level2-html/files/element.xhtml b/dom/tests/mochitest/dom-level2-html/files/element.xhtml new file mode 100644 index 0000000000..ee996015d1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/element.xhtml @@ -0,0 +1,83 @@ + + + + +NIST DOM HTML Test - Element + + +
      + +
      +
      +

      Test Lists

      +
      +
      +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      +
      +Bold +
      +
      +
      DT element
      +
      +
      +Bidirectional algorithm overide + +
      +Italicized +
      + +
      +Teletype +
      +Subscript +
      +SuperScript +
      +Strike Through (S) +
      +Strike Through (STRIKE) +
      +Small +
      +Big +
      +Emphasis +
      +Strong +
      + + 10 Computer Code Fragment 20 Temp = 10 + Temp = 20 + *2 + Temp + Citation + +
      +Temp +
      +NIST +
      +
      Gaithersburg, MD 20899
      +
      +Not +
      + +
      +Underlined + + diff --git a/dom/tests/mochitest/dom-level2-html/files/element.xml b/dom/tests/mochitest/dom-level2-html/files/element.xml new file mode 100644 index 0000000000..ee996015d1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/element.xml @@ -0,0 +1,83 @@ + + + + +NIST DOM HTML Test - Element + + +
      + +
      +
      +

      Test Lists

      +
      +
      +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      +
      +Bold +
      +
      +
      DT element
      +
      +
      +Bidirectional algorithm overide + +
      +Italicized +
      + +
      +Teletype +
      +Subscript +
      +SuperScript +
      +Strike Through (S) +
      +Strike Through (STRIKE) +
      +Small +
      +Big +
      +Emphasis +
      +Strong +
      + + 10 Computer Code Fragment 20 Temp = 10 + Temp = 20 + *2 + Temp + Citation + +
      +Temp +
      +NIST +
      +
      Gaithersburg, MD 20899
      +
      +Not +
      + +
      +Underlined + + diff --git a/dom/tests/mochitest/dom-level2-html/files/fieldset.html b/dom/tests/mochitest/dom-level2-html/files/fieldset.html new file mode 100644 index 0000000000..312ea44208 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/fieldset.html @@ -0,0 +1,23 @@ + + + + +NIST DOM HTML Test - FieldSet + + +
      +
      +All data entered must be valid +
      +
      + + + + +
      +
      +All data entered must be valid +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/fieldset.xhtml b/dom/tests/mochitest/dom-level2-html/files/fieldset.xhtml new file mode 100644 index 0000000000..dcfeba133e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/fieldset.xhtml @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - FieldSet + + +
      +
      +All data entered must be valid +
      +
      + + + + +
      +
      +All data entered must be valid +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/fieldset.xml b/dom/tests/mochitest/dom-level2-html/files/fieldset.xml new file mode 100644 index 0000000000..dcfeba133e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/fieldset.xml @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - FieldSet + + +
      +
      +All data entered must be valid +
      +
      + + + + +
      +
      +All data entered must be valid +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/font.html b/dom/tests/mochitest/dom-level2-html/files/font.html new file mode 100644 index 0000000000..894e442417 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/font.html @@ -0,0 +1,10 @@ + + + + +NIST DOM HTML Test - Font + + +Test Tables + + diff --git a/dom/tests/mochitest/dom-level2-html/files/font.xhtml b/dom/tests/mochitest/dom-level2-html/files/font.xhtml new file mode 100644 index 0000000000..818db76bc9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/font.xhtml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - BaseFont + + +Test Tables + + diff --git a/dom/tests/mochitest/dom-level2-html/files/font.xml b/dom/tests/mochitest/dom-level2-html/files/font.xml new file mode 100644 index 0000000000..818db76bc9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/font.xml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - BaseFont + + +Test Tables + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form.html b/dom/tests/mochitest/dom-level2-html/files/form.html new file mode 100644 index 0000000000..d8bf02424c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form.html @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form.xhtml b/dom/tests/mochitest/dom-level2-html/files/form.xhtml new file mode 100644 index 0000000000..40d6bf0faf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form.xhtml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form.xml b/dom/tests/mochitest/dom-level2-html/files/form.xml new file mode 100644 index 0000000000..40d6bf0faf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form.xml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form2.html b/dom/tests/mochitest/dom-level2-html/files/form2.html new file mode 100644 index 0000000000..c44b6726d5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form2.html @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form2.xhtml b/dom/tests/mochitest/dom-level2-html/files/form2.xhtml new file mode 100644 index 0000000000..e639432bfc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form2.xhtml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form2.xml b/dom/tests/mochitest/dom-level2-html/files/form2.xml new file mode 100644 index 0000000000..e639432bfc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form2.xml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - FORM + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form3.html b/dom/tests/mochitest/dom-level2-html/files/form3.html new file mode 100644 index 0000000000..543d09efb4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form3.html @@ -0,0 +1,17 @@ + + + + +FORM3 + + +
      +

      + + + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form3.xhtml b/dom/tests/mochitest/dom-level2-html/files/form3.xhtml new file mode 100644 index 0000000000..48f5019cba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form3.xhtml @@ -0,0 +1,18 @@ + + + + +FORM3 + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/form3.xml b/dom/tests/mochitest/dom-level2-html/files/form3.xml new file mode 100644 index 0000000000..bbed66fbe9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/form3.xml @@ -0,0 +1,18 @@ + + + + +FORM3 + + +
      +

      + + + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame.html b/dom/tests/mochitest/dom-level2-html/files/frame.html new file mode 100644 index 0000000000..41182c9be3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame.html @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - FRAME + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame.xhtml b/dom/tests/mochitest/dom-level2-html/files/frame.xhtml new file mode 100644 index 0000000000..bbe00fac1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - FRAME + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame.xml b/dom/tests/mochitest/dom-level2-html/files/frame.xml new file mode 100644 index 0000000000..bbe00fac1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - FRAME + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame2.html b/dom/tests/mochitest/dom-level2-html/files/frame2.html new file mode 100644 index 0000000000..6030ec5f54 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame2.html @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - FRAME2 + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame2.xhtml b/dom/tests/mochitest/dom-level2-html/files/frame2.xhtml new file mode 100644 index 0000000000..09008eb864 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame2.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - FRAME2 + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frame2.xml b/dom/tests/mochitest/dom-level2-html/files/frame2.xml new file mode 100644 index 0000000000..615f234068 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frame2.xml @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - FRAME2 + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frameset.html b/dom/tests/mochitest/dom-level2-html/files/frameset.html new file mode 100644 index 0000000000..f208fe0559 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frameset.html @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - FRAMESET + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frameset.xhtml b/dom/tests/mochitest/dom-level2-html/files/frameset.xhtml new file mode 100644 index 0000000000..2035bd9c80 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frameset.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - FRAMESET + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/frameset.xml b/dom/tests/mochitest/dom-level2-html/files/frameset.xml new file mode 100644 index 0000000000..2035bd9c80 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/frameset.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - FRAMESET + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/heading.html b/dom/tests/mochitest/dom-level2-html/files/heading.html new file mode 100644 index 0000000000..90d388c0f6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/heading.html @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - HEADING + + +

      Head Element 1

      +

      Head Element 2

      +

      Head Element 3

      +

      Head Element 4

      +
      Head Element 5
      +
      Head Element 6
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/heading.xhtml b/dom/tests/mochitest/dom-level2-html/files/heading.xhtml new file mode 100644 index 0000000000..3fda259f19 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/heading.xhtml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - HEADING + + +

      Head Element 1

      +

      Head Element 2

      +

      Head Element 3

      +

      Head Element 4

      +
      Head Element 5
      +
      Head Element 6
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/heading.xml b/dom/tests/mochitest/dom-level2-html/files/heading.xml new file mode 100644 index 0000000000..3fda259f19 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/heading.xml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - HEADING + + +

      Head Element 1

      +

      Head Element 2

      +

      Head Element 3

      +

      Head Element 4

      +
      Head Element 5
      +
      Head Element 6
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/hr.html b/dom/tests/mochitest/dom-level2-html/files/hr.html new file mode 100644 index 0000000000..9c4faccd0b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/hr.html @@ -0,0 +1,11 @@ + + + + +NIST DOM HTML Test - HR + + +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/hr.xhtml b/dom/tests/mochitest/dom-level2-html/files/hr.xhtml new file mode 100644 index 0000000000..685de35151 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/hr.xhtml @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - HR + + +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/hr.xml b/dom/tests/mochitest/dom-level2-html/files/hr.xml new file mode 100644 index 0000000000..685de35151 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/hr.xml @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - HR + + +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/html.html b/dom/tests/mochitest/dom-level2-html/files/html.html new file mode 100644 index 0000000000..2c91731e45 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/html.html @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - Html + + +

      Hello, World.

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/html.xhtml b/dom/tests/mochitest/dom-level2-html/files/html.xhtml new file mode 100644 index 0000000000..f07d2c1387 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/html.xhtml @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - Html + + +

      Hello, World.

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/html.xml b/dom/tests/mochitest/dom-level2-html/files/html.xml new file mode 100644 index 0000000000..f07d2c1387 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/html.xml @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - Html + + +

      Hello, World.

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe.html b/dom/tests/mochitest/dom-level2-html/files/iframe.html new file mode 100644 index 0000000000..0a44fc3354 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe.html @@ -0,0 +1,10 @@ + + + + +NIST DOM HTML Test - IFRAME + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe.xhtml b/dom/tests/mochitest/dom-level2-html/files/iframe.xhtml new file mode 100644 index 0000000000..93326c8178 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe.xhtml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - IFRAME + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe.xml b/dom/tests/mochitest/dom-level2-html/files/iframe.xml new file mode 100644 index 0000000000..93326c8178 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe.xml @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - IFRAME + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe2.html b/dom/tests/mochitest/dom-level2-html/files/iframe2.html new file mode 100644 index 0000000000..7f302b8433 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe2.html @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - IFRAME2 + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe2.xhtml b/dom/tests/mochitest/dom-level2-html/files/iframe2.xhtml new file mode 100644 index 0000000000..a1b1011396 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe2.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - IFRAME2 + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/iframe2.xml b/dom/tests/mochitest/dom-level2-html/files/iframe2.xml new file mode 100644 index 0000000000..a1b1011396 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/iframe2.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - IFRAME2 + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/img.html b/dom/tests/mochitest/dom-level2-html/files/img.html new file mode 100644 index 0000000000..b4e8b270eb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/img.html @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - IMG + + +

      +DTS IMAGE LOGO +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/img.xhtml b/dom/tests/mochitest/dom-level2-html/files/img.xhtml new file mode 100644 index 0000000000..40e3695b9c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/img.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - IMG + + +

      +DTS IMAGE LOGO +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/img.xml b/dom/tests/mochitest/dom-level2-html/files/img.xml new file mode 100644 index 0000000000..40e3695b9c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/img.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - IMG + + +

      +DTS IMAGE LOGO +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/index.html b/dom/tests/mochitest/dom-level2-html/files/index.html new file mode 100644 index 0000000000..ee49e443c4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/index.html @@ -0,0 +1,216 @@ + + + + Index of /2004/04/ecmascript/level2/html/files + + +

      Index of /2004/04/ecmascript/level2/html/files

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      [ICO]NameLast modifiedSizeDescription

      [DIR]Parent Directory  -
      [TXT]anchor.html05-Apr-2004 14:39 490 NIST DOM HTML Test - Anchor
      [   ]anchor.xhtml05-Apr-2004 14:39 530
      [   ]anchor.xml05-Apr-2004 14:39 530
      [TXT]anchor2.html05-Apr-2004 14:39 367 NIST DOM HTML Test - Anchor
      [   ]anchor2.xhtml05-Apr-2004 14:39 367
      [   ]anchor2.xml05-Apr-2004 14:39 367
      [TXT]applet.html05-Apr-2004 14:39 446 NIST DOM HTML Test - Applet
      [   ]applet.xhtml05-Apr-2004 14:39 487
      [   ]applet.xml05-Apr-2004 14:39 487
      [TXT]applet2.html05-Apr-2004 14:39 432 NIST DOM HTML Test - Applet
      [   ]applet2.xhtml05-Apr-2004 14:39 473
      [   ]applet2.xml05-Apr-2004 14:39 473
      [TXT]area.html05-Apr-2004 14:39 405 NIST DOM HTML Test - Area
      [   ]area.xhtml05-Apr-2004 14:39 448
      [   ]area.xml05-Apr-2004 14:39 448
      [TXT]area2.html05-Apr-2004 14:39 400 NIST DOM HTML Test - Area
      [   ]area2.xhtml05-Apr-2004 14:39 401
      [   ]area2.xml05-Apr-2004 14:39 401
      [TXT]base.html05-Apr-2004 14:39 292 NIST DOM HTML Test - Base
      [   ]base.xhtml05-Apr-2004 14:39 321
      [   ]base.xml05-Apr-2004 14:39 321
      [TXT]base2.html05-Apr-2004 14:39 544 NIST DOM HTML Test - Base2
      [   ]base2.xhtml05-Apr-2004 14:39 542
      [   ]base2.xml05-Apr-2004 14:39 542
      [TXT]body.html05-Apr-2004 14:39 379 NIST DOM HTML Test - Body
      [   ]body.xhtml05-Apr-2004 14:39 476
      [   ]body.xml05-Apr-2004 14:39 476
      [TXT]br.html05-Apr-2004 14:39 274 NIST DOM HTML Test - BR
      [   ]br.xhtml05-Apr-2004 14:39 315
      [   ]br.xml05-Apr-2004 14:39 315
      [TXT]button.html05-Apr-2004 14:39 550 NIST DOM HTML Test - Button
      [   ]button.xhtml05-Apr-2004 14:39 592
      [   ]button.xml05-Apr-2004 14:39 592
      [TXT]collection.html05-Apr-2004 14:39 2.1KNIST DOM HTML Test - SELECT
      [   ]collection.xhtml05-Apr-2004 14:39 2.2K
      [   ]collection.xml05-Apr-2004 14:39 2.2K
      [TXT]directory.html05-Apr-2004 14:39 369 NIST DOM HTML Test - Directory
      [   ]directory.xhtml05-Apr-2004 14:39 409
      [   ]directory.xml05-Apr-2004 14:39 409
      [TXT]div.html05-Apr-2004 14:39 351 NIST DOM HTML Test - DIV
      [   ]div.xhtml05-Apr-2004 14:39 391
      [   ]div.xml05-Apr-2004 14:39 391
      [TXT]dl.html05-Apr-2004 14:39 373 NIST DOM HTML Test - DL
      [   ]dl.xhtml05-Apr-2004 14:39 413
      [   ]dl.xml05-Apr-2004 14:39 413
      [TXT]document.html05-Apr-2004 14:39 1.5KNIST DOM HTML Test - DOCUMENT
      [   ]document.xhtml05-Apr-2004 14:39 1.6K
      [   ]document.xml05-Apr-2004 14:39 1.6K
      [TXT]element.html05-Apr-2004 14:39 3.5KNIST DOM HTML Test - Element
      [   ]element.xhtml05-Apr-2004 14:39 3.5K
      [   ]element.xml05-Apr-2004 14:39 3.5K
      [TXT]fieldset.html05-Apr-2004 14:39 505 NIST DOM HTML Test - FieldSet
      [   ]fieldset.xhtml05-Apr-2004 14:39 545
      [   ]fieldset.xml05-Apr-2004 14:39 545
      [TXT]font.html05-Apr-2004 14:39 322 NIST DOM HTML Test - Font
      [   ]font.xhtml05-Apr-2004 14:39 366
      [   ]font.xml05-Apr-2004 14:39 366
      [TXT]form.html05-Apr-2004 14:39 544 NIST DOM HTML Test - FORM
      [   ]form.xhtml05-Apr-2004 14:39 594
      [   ]form.xml05-Apr-2004 14:39 594
      [TXT]form2.html05-Apr-2004 14:39 613 NIST DOM HTML Test - FORM
      [   ]form2.xhtml05-Apr-2004 14:39 611
      [   ]form2.xml05-Apr-2004 14:39 611
      [TXT]form3.html05-Apr-2004 14:39 433 FORM3
      [   ]form3.xhtml05-Apr-2004 14:39 489
      [   ]form3.xml05-Apr-2004 14:39 471
      [TXT]frame.html05-Apr-2004 14:39 524 NIST DOM HTML Test - FRAME
      [   ]frame.xhtml05-Apr-2004 14:39 522
      [   ]frame.xml05-Apr-2004 14:39 522
      [TXT]frame2.html05-Apr-2004 14:39 560 NIST DOM HTML Test - FRAME2
      [   ]frame2.xhtml05-Apr-2004 14:39 558
      [   ]frame2.xml05-Apr-2004 14:39 518
      [TXT]frameset.html05-Apr-2004 14:39 403 NIST DOM HTML Test - FRAMESET
      [   ]frameset.xhtml05-Apr-2004 14:39 402
      [   ]frameset.xml05-Apr-2004 14:39 402
      [TXT]heading.html05-Apr-2004 14:39 483 NIST DOM HTML Test - HEADING
      [   ]heading.xhtml05-Apr-2004 14:39 521
      [   ]heading.xml05-Apr-2004 14:39 521
      [TXT]hr.html05-Apr-2004 14:39 309 NIST DOM HTML Test - HR
      [   ]hr.xhtml05-Apr-2004 14:39 348
      [   ]hr.xml05-Apr-2004 14:39 348
      [TXT]html.html05-Apr-2004 14:39 321 NIST DOM HTML Test - Html
      [   ]html.xhtml05-Apr-2004 14:39 300
      [   ]html.xml05-Apr-2004 14:39 300
      [TXT]iframe.html05-Apr-2004 14:39 431 NIST DOM HTML Test - IFRAME
      [   ]iframe.xhtml05-Apr-2004 14:39 471
      [   ]iframe.xml05-Apr-2004 14:39 471
      [TXT]iframe2.html05-Apr-2004 14:39 499 NIST DOM HTML Test - IFRAME2
      [   ]iframe2.xhtml05-Apr-2004 14:39 539
      [   ]iframe2.xml05-Apr-2004 14:39 539
      [TXT]img.html05-Apr-2004 14:39 454 NIST DOM HTML Test - IMG
      [   ]img.xhtml05-Apr-2004 14:39 494
      [   ]img.xml05-Apr-2004 14:39 494
      [TXT]input.html05-Apr-2004 14:39 1.7KNIST DOM HTML Test - INPUT
      [   ]input.xhtml05-Apr-2004 14:39 1.7K
      [   ]input.xml05-Apr-2004 14:39 1.7K
      [TXT]isindex.html05-Apr-2004 14:39 389 NIST DOM HTML Test - ISINDEX
      [   ]isindex.xhtml05-Apr-2004 14:39 430
      [   ]isindex.xml05-Apr-2004 14:39 430
      [TXT]label.html05-Apr-2004 14:39 572 NIST DOM HTML Test - LABEL
      [   ]label.xhtml05-Apr-2004 14:39 612
      [   ]label.xml05-Apr-2004 14:39 612
      [TXT]legend.html05-Apr-2004 14:39 599 NIST DOM HTML Test - LEGEND
      [   ]legend.xhtml05-Apr-2004 14:39 638
      [   ]legend.xml05-Apr-2004 14:39 638
      [TXT]li.html05-Apr-2004 14:39 401 NIST DOM HTML Test - LI
      [   ]li.xhtml05-Apr-2004 14:39 441
      [   ]li.xml05-Apr-2004 14:39 441
      [TXT]link.html05-Apr-2004 14:39 492 NIST DOM HTML Test - LINK
      [   ]link.xhtml05-Apr-2004 14:39 535
      [   ]link.xml05-Apr-2004 14:39 535
      [TXT]link2.html05-Apr-2004 14:39 548 NIST DOM HTML Test - LINK
      [   ]link2.xhtml05-Apr-2004 14:39 552
      [   ]link2.xml05-Apr-2004 14:39 552
      [TXT]map.html05-Apr-2004 14:39 479 NIST DOM HTML Test - MAP
      [   ]map.xhtml05-Apr-2004 14:39 523
      [   ]map.xml05-Apr-2004 14:39 523
      [TXT]menu.html05-Apr-2004 14:39 346 NIST DOM HTML Test - MENU
      [   ]menu.xhtml05-Apr-2004 14:39 386
      [   ]menu.xml05-Apr-2004 14:39 386
      [TXT]meta.html05-Apr-2004 14:39 283 NIST DOM HTML Test - META
      [   ]meta.xhtml05-Apr-2004 14:39 393
      [   ]meta.xml05-Apr-2004 14:39 393
      [TXT]mod.html05-Apr-2004 14:39 558 NIST DOM HTML Test - MOD
      [   ]mod.xhtml05-Apr-2004 14:39 599
      [   ]mod.xml05-Apr-2004 14:39 599
      [TXT]object.html05-Apr-2004 14:39 669 NIST DOM HTML Test - OBJECT
      [   ]object.xhtml05-Apr-2004 14:39 709
      [   ]object.xml05-Apr-2004 14:39 709
      [TXT]object2.html05-Apr-2004 14:39 666 NIST DOM HTML Test - OBJECT
      [   ]object2.xhtml05-Apr-2004 14:39 707
      [   ]object2.xml05-Apr-2004 14:39 707
      [TXT]olist.html05-Apr-2004 14:39 502 NIST DOM HTML Test - OLIST
      [   ]olist.xhtml05-Apr-2004 14:39 542
      [   ]olist.xml05-Apr-2004 14:39 542
      [TXT]optgroup.html05-Apr-2004 14:39 587 NIST DOM HTML Test - OPTGROUP
      [   ]optgroup.xhtml05-Apr-2004 14:39 628
      [   ]optgroup.xml05-Apr-2004 14:39 628
      [TXT]option.html05-Apr-2004 14:39 836 NIST DOM HTML Test - OPTION
      [   ]option.xhtml05-Apr-2004 14:39 858
      [   ]option.xml05-Apr-2004 14:39 858
      [TXT]optionscollection.html05-Apr-2004 14:39 847 NIST DOM HTML Test - OPTIONSCOLLECTION
      [   ]optionscollection.xhtml05-Apr-2004 14:39 869
      [   ]optionscollection.xml05-Apr-2004 14:39 869
      [TXT]paragraph.html05-Apr-2004 14:39 284 NIST DOM HTML Test - PARAGRAPH
      [   ]paragraph.xhtml05-Apr-2004 14:39 324
      [   ]paragraph.xml05-Apr-2004 14:39 324
      [TXT]param.html05-Apr-2004 14:39 343 NIST DOM HTML Test - PARAM
      [   ]param.xhtml05-Apr-2004 14:39 386
      [   ]param.xml05-Apr-2004 14:39 386
      [TXT]pre.html05-Apr-2004 14:39 549 NIST DOM HTML Test - PRE
      [   ]pre.xhtml05-Apr-2004 14:39 565
      [   ]pre.xml05-Apr-2004 14:39 565
      [TXT]quote.html05-Apr-2004 14:39 440 NIST DOM HTML Test - QUOTE
      [   ]quote.xhtml05-Apr-2004 14:39 481
      [   ]quote.xml05-Apr-2004 14:39 481
      [IMG]right.png05-Apr-2004 14:39 137
      [TXT]script.html05-Apr-2004 14:39 359 NIST DOM HTML Test - SCRIPT
      [   ]script.xhtml05-Apr-2004 14:39 399
      [   ]script.xml05-Apr-2004 14:39 399
      [TXT]select.html05-Apr-2004 14:39 1.0KNIST DOM HTML Test - SELECT
      [   ]select.xhtml05-Apr-2004 14:39 1.0K
      [   ]select.xml05-Apr-2004 14:39 1.0K
      [TXT]style.html05-Apr-2004 14:39 319 NIST DOM HTML Test - STYLE
      [   ]style.xhtml05-Apr-2004 14:39 356
      [   ]style.xml05-Apr-2004 14:39 356
      [TXT]table.html05-Apr-2004 14:39 1.9KNIST DOM HTML Test - TABLE
      [   ]table.xhtml05-Apr-2004 14:39 1.9K
      [   ]table.xml05-Apr-2004 14:39 1.9K
      [TXT]table1.html05-Apr-2004 14:39 336 NIST DOM HTML Test - TABLE
      [   ]table1.xhtml05-Apr-2004 14:39 378
      [   ]table1.xml05-Apr-2004 14:39 378
      [TXT]tablecaption.html05-Apr-2004 14:39 435 NIST DOM HTML Test - TABLECAPTION
      [   ]tablecaption.xhtml05-Apr-2004 14:39 453
      [   ]tablecaption.xml05-Apr-2004 14:39 453
      [TXT]tablecell.html05-Apr-2004 14:39 909 NIST DOM HTML Test - TABLECELL
      [   ]tablecell.xhtml05-Apr-2004 14:39 944
      [   ]tablecell.xml05-Apr-2004 14:39 944
      [TXT]tablecol.html05-Apr-2004 14:39 629 NIST DOM HTML Test - TABLECOL
      [   ]tablecol.xhtml05-Apr-2004 14:39 656
      [   ]tablecol.xml05-Apr-2004 14:39 656
      [TXT]tablerow.html05-Apr-2004 14:39 1.7KNIST DOM HTML Test - TABLEROW
      [   ]tablerow.xhtml05-Apr-2004 14:39 1.8K
      [   ]tablerow.xml05-Apr-2004 14:39 1.8K
      [TXT]tablesection.html05-Apr-2004 14:39 1.8KNIST DOM HTML Test - TABLESECTION
      [   ]tablesection.xhtml05-Apr-2004 14:39 1.9K
      [   ]tablesection.xml05-Apr-2004 14:39 1.9K
      [TXT]textarea.html05-Apr-2004 14:39 938 NIST DOM HTML Test - TEXTAREA
      [   ]textarea.xhtml05-Apr-2004 14:39 951
      [   ]textarea.xml05-Apr-2004 14:39 951
      [TXT]title.html05-Apr-2004 14:39 266 NIST DOM HTML Test - TITLE
      [   ]title.xhtml05-Apr-2004 14:39 294
      [   ]title.xml05-Apr-2004 14:39 294
      [TXT]ulist.html05-Apr-2004 14:39 619 NIST DOM HTML Test - ULIST
      [   ]ulist.xhtml05-Apr-2004 14:39 659
      [   ]ulist.xml05-Apr-2004 14:39 659
      [IMG]w3c_main.png05-Apr-2004 14:39 5.8K
      [   ]xhtml-lat1.ent05-Apr-2004 14:39 11K
      [   ]xhtml-special.ent05-Apr-2004 14:39 4.0K
      [   ]xhtml-symbol.ent05-Apr-2004 14:39 14K
      [TXT]xhtml1-frameset.dtd05-Apr-2004 14:39 32K
      [TXT]xhtml1-strict.dtd05-Apr-2004 14:39 25K
      [TXT]xhtml1-transitional.dtd05-Apr-2004 14:39 31K

      + diff --git a/dom/tests/mochitest/dom-level2-html/files/input.html b/dom/tests/mochitest/dom-level2-html/files/input.html new file mode 100644 index 0000000000..c36e87d504 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/input.html @@ -0,0 +1,60 @@ + + + + +NIST DOM HTML Test - INPUT + + + + + + +
      Under a FORM control +
      + + + + + + + + + + + + + + + + + + + + + +
      + + + +
      +ReHire +
      +NewHire +
      Hours available to work +EarlyMornings +
      +Afternoon +
      +Evenings +
      +Closing +
      +
      + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/input.xhtml b/dom/tests/mochitest/dom-level2-html/files/input.xhtml new file mode 100644 index 0000000000..b7704ad10e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/input.xhtml @@ -0,0 +1,62 @@ + + + + +NIST DOM HTML Test - INPUT + + + + + + +
      Under a FORM control +
      + + + + + + + + + + + + + + + + + + + + + +
      + + + +
      + +
      + +
      Hours available to work + +
      + +
      + +
      + +
      +
      + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/input.xml b/dom/tests/mochitest/dom-level2-html/files/input.xml new file mode 100644 index 0000000000..b7704ad10e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/input.xml @@ -0,0 +1,62 @@ + + + + +NIST DOM HTML Test - INPUT + + + + + + +
      Under a FORM control +
      + + + + + + + + + + + + + + + + + + + + + +
      + + + +
      + +
      + +
      Hours available to work + +
      + +
      + +
      + +
      +
      + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/isindex.html b/dom/tests/mochitest/dom-level2-html/files/isindex.html new file mode 100644 index 0000000000..0fd50ceae2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/isindex.html @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - ISINDEX + + +
      + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/isindex.xhtml b/dom/tests/mochitest/dom-level2-html/files/isindex.xhtml new file mode 100644 index 0000000000..a48d9a5851 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/isindex.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - ISINDEX + + +
      + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/isindex.xml b/dom/tests/mochitest/dom-level2-html/files/isindex.xml new file mode 100644 index 0000000000..a48d9a5851 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/isindex.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - ISINDEX + + +
      + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/label.html b/dom/tests/mochitest/dom-level2-html/files/label.html new file mode 100644 index 0000000000..d0abc044ba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/label.html @@ -0,0 +1,21 @@ + + + + +NIST DOM HTML Test - LABEL + + +
      +

      + + +

      +
      +

      + + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/label.xhtml b/dom/tests/mochitest/dom-level2-html/files/label.xhtml new file mode 100644 index 0000000000..902584fdeb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/label.xhtml @@ -0,0 +1,22 @@ + + + + +NIST DOM HTML Test - LABEL + + +
      +

      + + +

      +
      +

      + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/label.xml b/dom/tests/mochitest/dom-level2-html/files/label.xml new file mode 100644 index 0000000000..902584fdeb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/label.xml @@ -0,0 +1,22 @@ + + + + +NIST DOM HTML Test - LABEL + + +
      +

      + + +

      +
      +

      + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/legend.html b/dom/tests/mochitest/dom-level2-html/files/legend.html new file mode 100644 index 0000000000..53160eeafa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/legend.html @@ -0,0 +1,22 @@ + + + + +NIST DOM HTML Test - LEGEND + + +
      +
      +Enter Password1: + +
      +
      +
      +Enter Password2: + +
      + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/legend.xhtml b/dom/tests/mochitest/dom-level2-html/files/legend.xhtml new file mode 100644 index 0000000000..c95e6852a9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/legend.xhtml @@ -0,0 +1,23 @@ + + + + +NIST DOM HTML Test - LEGEND + + +
      +
      +Enter Password1: + +
      +
      +
      +Enter Password2: + +
      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/legend.xml b/dom/tests/mochitest/dom-level2-html/files/legend.xml new file mode 100644 index 0000000000..c95e6852a9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/legend.xml @@ -0,0 +1,23 @@ + + + + +NIST DOM HTML Test - LEGEND + + +
      +
      +Enter Password1: + +
      +
      +
      +Enter Password2: + +
      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/li.html b/dom/tests/mochitest/dom-level2-html/files/li.html new file mode 100644 index 0000000000..0c97b4c922 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/li.html @@ -0,0 +1,23 @@ + + + + +NIST DOM HTML Test - LI + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          +
        • +
        +
      2. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/li.xhtml b/dom/tests/mochitest/dom-level2-html/files/li.xhtml new file mode 100644 index 0000000000..79af811120 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/li.xhtml @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - LI + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          +
        • +
        +
      2. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/li.xml b/dom/tests/mochitest/dom-level2-html/files/li.xml new file mode 100644 index 0000000000..79af811120 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/li.xml @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - LI + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          +
        • +
        +
      2. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link.html b/dom/tests/mochitest/dom-level2-html/files/link.html new file mode 100644 index 0000000000..2d4c082b4f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link.html @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link.xhtml b/dom/tests/mochitest/dom-level2-html/files/link.xhtml new file mode 100644 index 0000000000..5a0f18c241 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link.xml b/dom/tests/mochitest/dom-level2-html/files/link.xml new file mode 100644 index 0000000000..5a0f18c241 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link2.html b/dom/tests/mochitest/dom-level2-html/files/link2.html new file mode 100644 index 0000000000..12fac9daa6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link2.html @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link2.xhtml b/dom/tests/mochitest/dom-level2-html/files/link2.xhtml new file mode 100644 index 0000000000..95c80048f2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link2.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/link2.xml b/dom/tests/mochitest/dom-level2-html/files/link2.xml new file mode 100644 index 0000000000..95c80048f2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/link2.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - LINK + + + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/map.html b/dom/tests/mochitest/dom-level2-html/files/map.html new file mode 100644 index 0000000000..a636fa5899 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/map.html @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - MAP + + +

      + +Domain1 +Domain2 +Domain3 + +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/map.xhtml b/dom/tests/mochitest/dom-level2-html/files/map.xhtml new file mode 100644 index 0000000000..f61a2adb9a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/map.xhtml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - MAP + + +

      + +Domain1 +Domain2 +Domain3 + +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/map.xml b/dom/tests/mochitest/dom-level2-html/files/map.xml new file mode 100644 index 0000000000..f61a2adb9a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/map.xml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - MAP + + +

      + +Domain1 +Domain2 +Domain3 + +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/menu.html b/dom/tests/mochitest/dom-level2-html/files/menu.html new file mode 100644 index 0000000000..e07204f1dc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/menu.html @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - MENU + + + +
    23. Interview
    24. +
    25. Paperwork
    26. +
    27. Give start date
    28. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/menu.xhtml b/dom/tests/mochitest/dom-level2-html/files/menu.xhtml new file mode 100644 index 0000000000..9f020ff8b9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/menu.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - MENU + + + +
    29. Interview
    30. +
    31. Paperwork
    32. +
    33. Give start date
    34. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/menu.xml b/dom/tests/mochitest/dom-level2-html/files/menu.xml new file mode 100644 index 0000000000..9f020ff8b9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/menu.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - MENU + + + +
    35. Interview
    36. +
    37. Paperwork
    38. +
    39. Give start date
    40. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/meta.html b/dom/tests/mochitest/dom-level2-html/files/meta.html new file mode 100644 index 0000000000..e88fe8fc1d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/meta.html @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - META + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/meta.xhtml b/dom/tests/mochitest/dom-level2-html/files/meta.xhtml new file mode 100644 index 0000000000..bf89bbeeab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/meta.xhtml @@ -0,0 +1,16 @@ + + + + + +NIST DOM HTML Test - META + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/meta.xml b/dom/tests/mochitest/dom-level2-html/files/meta.xml new file mode 100644 index 0000000000..bf89bbeeab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/meta.xml @@ -0,0 +1,16 @@ + + + + + +NIST DOM HTML Test - META + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/mod.html b/dom/tests/mochitest/dom-level2-html/files/mod.html new file mode 100644 index 0000000000..1ab79696de --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/mod.html @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - MOD + + +

      +The INS element is used to indicate that a section of a document had been inserted. +
      +The DEL element is used to indicate that a section of a document had been removed. +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/mod.xhtml b/dom/tests/mochitest/dom-level2-html/files/mod.xhtml new file mode 100644 index 0000000000..b81432d52f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/mod.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - MOD + + +

      +The INS element is used to indicate that a section of a document had been inserted. +
      +The DEL element is used to indicate that a section of a document had been removed. +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/mod.xml b/dom/tests/mochitest/dom-level2-html/files/mod.xml new file mode 100644 index 0000000000..b81432d52f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/mod.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - MOD + + +

      +The INS element is used to indicate that a section of a document had been inserted. +
      +The DEL element is used to indicate that a section of a document had been removed. +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object.html b/dom/tests/mochitest/dom-level2-html/files/object.html new file mode 100644 index 0000000000..31da31cdc8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object.html @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object.xhtml b/dom/tests/mochitest/dom-level2-html/files/object.xhtml new file mode 100644 index 0000000000..824f7fc60e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object.xhtml @@ -0,0 +1,20 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object.xml b/dom/tests/mochitest/dom-level2-html/files/object.xml new file mode 100644 index 0000000000..824f7fc60e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object.xml @@ -0,0 +1,20 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object2.html b/dom/tests/mochitest/dom-level2-html/files/object2.html new file mode 100644 index 0000000000..44680cd726 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object2.html @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object2.xhtml b/dom/tests/mochitest/dom-level2-html/files/object2.xhtml new file mode 100644 index 0000000000..a41e03dd8f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object2.xhtml @@ -0,0 +1,20 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/object2.xml b/dom/tests/mochitest/dom-level2-html/files/object2.xml new file mode 100644 index 0000000000..a41e03dd8f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/object2.xml @@ -0,0 +1,20 @@ + + + + +NIST DOM HTML Test - OBJECT + + +

      + +

      +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/olist.html b/dom/tests/mochitest/dom-level2-html/files/olist.html new file mode 100644 index 0000000000..f69c9ded98 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/olist.html @@ -0,0 +1,32 @@ + + + + +NIST DOM HTML Test - OLIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/olist.xhtml b/dom/tests/mochitest/dom-level2-html/files/olist.xhtml new file mode 100644 index 0000000000..cbe1ab6add --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/olist.xhtml @@ -0,0 +1,34 @@ + + + + +NIST DOM HTML Test - OLIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/olist.xml b/dom/tests/mochitest/dom-level2-html/files/olist.xml new file mode 100644 index 0000000000..cbe1ab6add --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/olist.xml @@ -0,0 +1,34 @@ + + + + +NIST DOM HTML Test - OLIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optgroup.html b/dom/tests/mochitest/dom-level2-html/files/optgroup.html new file mode 100644 index 0000000000..a354af8066 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optgroup.html @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - OPTGROUP + + +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optgroup.xhtml b/dom/tests/mochitest/dom-level2-html/files/optgroup.xhtml new file mode 100644 index 0000000000..b421ecabb3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optgroup.xhtml @@ -0,0 +1,27 @@ + + + + +NIST DOM HTML Test - OPTGROUP + + +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optgroup.xml b/dom/tests/mochitest/dom-level2-html/files/optgroup.xml new file mode 100644 index 0000000000..b421ecabb3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optgroup.xml @@ -0,0 +1,27 @@ + + + + +NIST DOM HTML Test - OPTGROUP + + +
      +

      + +

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/option.html b/dom/tests/mochitest/dom-level2-html/files/option.html new file mode 100644 index 0000000000..83707c3929 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/option.html @@ -0,0 +1,36 @@ + + + + +NIST DOM HTML Test - OPTION + + +
      +

      + +

      +
      +

      + +

      + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/option.xhtml b/dom/tests/mochitest/dom-level2-html/files/option.xhtml new file mode 100644 index 0000000000..8cf88d8878 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/option.xhtml @@ -0,0 +1,33 @@ + + + + +NIST DOM HTML Test - OPTION + + +
      +

      + +

      +
      +

      + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/option.xml b/dom/tests/mochitest/dom-level2-html/files/option.xml new file mode 100644 index 0000000000..8cf88d8878 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/option.xml @@ -0,0 +1,33 @@ + + + + +NIST DOM HTML Test - OPTION + + +
      +

      + +

      +
      +

      + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optionscollection.html b/dom/tests/mochitest/dom-level2-html/files/optionscollection.html new file mode 100644 index 0000000000..d1e8743eae --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optionscollection.html @@ -0,0 +1,36 @@ + + + + +NIST DOM HTML Test - OPTIONSCOLLECTION + + +
      +

      + +

      +
      +

      + +

      + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optionscollection.xhtml b/dom/tests/mochitest/dom-level2-html/files/optionscollection.xhtml new file mode 100644 index 0000000000..3f04194207 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optionscollection.xhtml @@ -0,0 +1,33 @@ + + + + +NIST DOM HTML Test - OPTIONSCOLLECTION + + +
      +

      + +

      +
      +

      + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/optionscollection.xml b/dom/tests/mochitest/dom-level2-html/files/optionscollection.xml new file mode 100644 index 0000000000..3f04194207 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/optionscollection.xml @@ -0,0 +1,33 @@ + + + + +NIST DOM HTML Test - OPTIONSCOLLECTION + + +
      +

      + +

      +
      +

      + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/paragraph.html b/dom/tests/mochitest/dom-level2-html/files/paragraph.html new file mode 100644 index 0000000000..0da4836097 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/paragraph.html @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - PARAGRAPH + + +

      +TEXT +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/paragraph.xhtml b/dom/tests/mochitest/dom-level2-html/files/paragraph.xhtml new file mode 100644 index 0000000000..2cdb1dfe15 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/paragraph.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - PARAGRAPH + + +

      +TEXT +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/paragraph.xml b/dom/tests/mochitest/dom-level2-html/files/paragraph.xml new file mode 100644 index 0000000000..2cdb1dfe15 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/paragraph.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - PARAGRAPH + + +

      +TEXT +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/param.html b/dom/tests/mochitest/dom-level2-html/files/param.html new file mode 100644 index 0000000000..290e626601 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/param.html @@ -0,0 +1,14 @@ + + + + +NIST DOM HTML Test - PARAM + + +

      + + + +

      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/param.xhtml b/dom/tests/mochitest/dom-level2-html/files/param.xhtml new file mode 100644 index 0000000000..3e916eb5a2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/param.xhtml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - PARAM + + +

      + + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/param.xml b/dom/tests/mochitest/dom-level2-html/files/param.xml new file mode 100644 index 0000000000..3e916eb5a2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/param.xml @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - PARAM + + +

      + + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/pre.html b/dom/tests/mochitest/dom-level2-html/files/pre.html new file mode 100644 index 0000000000..2a402065e4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/pre.html @@ -0,0 +1,17 @@ + + + + +NIST DOM HTML Test - PRE + + +
      The PRE is used to indicate pre-formatted text.  Visual agents may:
      +
      +                leave white space intact.
      +                May render text with a fixed-pitch font.
      +                May disable automatic word wrap.
      +                Must not disable bidirectional processing.
      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/pre.xhtml b/dom/tests/mochitest/dom-level2-html/files/pre.xhtml new file mode 100644 index 0000000000..69f652b14f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/pre.xhtml @@ -0,0 +1,19 @@ + + + + +NIST DOM HTML Test - PRE + + +
      The PRE is used to indicate pre-formatted text.  Visual agents may:
      +
      +                leave white space intact.
      +                May render text with a fixed-pitch font.
      +                May disable automatic word wrap.
      +                Must not disable bidirectional processing.
      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/pre.xml b/dom/tests/mochitest/dom-level2-html/files/pre.xml new file mode 100644 index 0000000000..69f652b14f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/pre.xml @@ -0,0 +1,19 @@ + + + + +NIST DOM HTML Test - PRE + + +
      The PRE is used to indicate pre-formatted text.  Visual agents may:
      +
      +                leave white space intact.
      +                May render text with a fixed-pitch font.
      +                May disable automatic word wrap.
      +                Must not disable bidirectional processing.
      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/quote.html b/dom/tests/mochitest/dom-level2-html/files/quote.html new file mode 100644 index 0000000000..6bad2b83f6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/quote.html @@ -0,0 +1,16 @@ + + + + +NIST DOM HTML Test - QUOTE + + +

      +The Q element is intended for short quotations +

      +
      +

      The BLOCKQUOTE element is used for long quotations.

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/quote.xhtml b/dom/tests/mochitest/dom-level2-html/files/quote.xhtml new file mode 100644 index 0000000000..93e6c422f9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/quote.xhtml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - QUOTE + + +

      +The Q element is intended for short quotations +

      +
      +

      The BLOCKQUOTE element is used for long quotations.

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/quote.xml b/dom/tests/mochitest/dom-level2-html/files/quote.xml new file mode 100644 index 0000000000..93e6c422f9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/quote.xml @@ -0,0 +1,18 @@ + + + + +NIST DOM HTML Test - QUOTE + + +

      +The Q element is intended for short quotations +

      +
      +

      The BLOCKQUOTE element is used for long quotations.

      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/right.png b/dom/tests/mochitest/dom-level2-html/files/right.png new file mode 100644 index 0000000000..41ad0bdad2 Binary files /dev/null and b/dom/tests/mochitest/dom-level2-html/files/right.png differ diff --git a/dom/tests/mochitest/dom-level2-html/files/script.html b/dom/tests/mochitest/dom-level2-html/files/script.html new file mode 100644 index 0000000000..362860b393 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/script.html @@ -0,0 +1,11 @@ + + + + +NIST DOM HTML Test - SCRIPT + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/script.xhtml b/dom/tests/mochitest/dom-level2-html/files/script.xhtml new file mode 100644 index 0000000000..ebdaa7246f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/script.xhtml @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - SCRIPT + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/script.xml b/dom/tests/mochitest/dom-level2-html/files/script.xml new file mode 100644 index 0000000000..ebdaa7246f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/script.xml @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - SCRIPT + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/select.html b/dom/tests/mochitest/dom-level2-html/files/select.html new file mode 100644 index 0000000000..78206240f0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/select.html @@ -0,0 +1,44 @@ + + + + +NIST DOM HTML Test - SELECT + + +
      +

      + +

      +
      +

      + +

      +

      + +

      + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/select.xhtml b/dom/tests/mochitest/dom-level2-html/files/select.xhtml new file mode 100644 index 0000000000..491a74c6ac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/select.xhtml @@ -0,0 +1,41 @@ + + + + +NIST DOM HTML Test - SELECT + + +
      +

      + +

      +
      +

      + +

      +

      + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/select.xml b/dom/tests/mochitest/dom-level2-html/files/select.xml new file mode 100644 index 0000000000..491a74c6ac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/select.xml @@ -0,0 +1,41 @@ + + + + +NIST DOM HTML Test - SELECT + + +
      +

      + +

      +
      +

      + +

      +

      + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/style.html b/dom/tests/mochitest/dom-level2-html/files/style.html new file mode 100644 index 0000000000..c3df42432d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/style.html @@ -0,0 +1,12 @@ + + + + + +NIST DOM HTML Test - STYLE + + +

      Hello, World.

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/style.xhtml b/dom/tests/mochitest/dom-level2-html/files/style.xhtml new file mode 100644 index 0000000000..b8477c1f6d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/style.xhtml @@ -0,0 +1,14 @@ + + + + + +NIST DOM HTML Test - BR + + +

      Hello, World.

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/style.xml b/dom/tests/mochitest/dom-level2-html/files/style.xml new file mode 100644 index 0000000000..b8477c1f6d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/style.xml @@ -0,0 +1,14 @@ + + + + + +NIST DOM HTML Test - BR + + +

      Hello, World.

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table.html b/dom/tests/mochitest/dom-level2-html/files/table.html new file mode 100644 index 0000000000..b8f151e069 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table.html @@ -0,0 +1,78 @@ + + + + +NIST DOM HTML Test - TABLE + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + + + + + + + + + + + + + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table.xhtml b/dom/tests/mochitest/dom-level2-html/files/table.xhtml new file mode 100644 index 0000000000..8300b90a17 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table.xhtml @@ -0,0 +1,81 @@ + + + + +NIST DOM HTML Test - TABLE + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + + + + + + + + + + + + + +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table.xml b/dom/tests/mochitest/dom-level2-html/files/table.xml new file mode 100644 index 0000000000..8300b90a17 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table.xml @@ -0,0 +1,81 @@ + + + + +NIST DOM HTML Test - TABLE + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + + + + + + + + + + + + + +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table1.html b/dom/tests/mochitest/dom-level2-html/files/table1.html new file mode 100644 index 0000000000..8f5d19b282 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table1.html @@ -0,0 +1,12 @@ + + + + +NIST DOM HTML Test - TABLE + + + + +
      HTML can't abide empty table
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table1.xhtml b/dom/tests/mochitest/dom-level2-html/files/table1.xhtml new file mode 100644 index 0000000000..e174c63dfd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table1.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - TABLE + + + + +
      XHTML can't abide empty table
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/table1.xml b/dom/tests/mochitest/dom-level2-html/files/table1.xml new file mode 100644 index 0000000000..e174c63dfd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/table1.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - TABLE + + + + +
      XHTML can't abide empty table
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecaption.html b/dom/tests/mochitest/dom-level2-html/files/tablecaption.html new file mode 100644 index 0000000000..f9181c739c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecaption.html @@ -0,0 +1,25 @@ + + + + +NIST DOM HTML Test - TABLECAPTION + + + + + + + + + + +
      CAPTION 1
      Employee IdEmployee NamePositionSalary
      + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecaption.xhtml b/dom/tests/mochitest/dom-level2-html/files/tablecaption.xhtml new file mode 100644 index 0000000000..67b72dcc36 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecaption.xhtml @@ -0,0 +1,21 @@ + + + + +NIST DOM HTML Test - BR + + + + + + + + + + +
      CAPTION 1
      Employee IdEmployee NamePositionSalary
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecaption.xml b/dom/tests/mochitest/dom-level2-html/files/tablecaption.xml new file mode 100644 index 0000000000..67b72dcc36 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecaption.xml @@ -0,0 +1,21 @@ + + + + +NIST DOM HTML Test - BR + + + + + + + + + + +
      CAPTION 1
      Employee IdEmployee NamePositionSalary
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecell.html b/dom/tests/mochitest/dom-level2-html/files/tablecell.html new file mode 100644 index 0000000000..c9adef2a41 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecell.html @@ -0,0 +1,23 @@ + + + + +NIST DOM HTML Test - TABLECELL + + + + + + + + + + + + + + + +
      Employee IdEmployee NamePositionSalary
      EMP0001Margaret MartinAccountant56,000
      + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecell.xhtml b/dom/tests/mochitest/dom-level2-html/files/tablecell.xhtml new file mode 100644 index 0000000000..0e8ee7f0dd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecell.xhtml @@ -0,0 +1,26 @@ + + + + +NIST DOM HTML Test - TABLECELL + + + + + + + + + + + + + + + +
      Employee IdEmployee NamePositionSalary
      EMP0001Margaret MartinAccountant56,000
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecell.xml b/dom/tests/mochitest/dom-level2-html/files/tablecell.xml new file mode 100644 index 0000000000..0e8ee7f0dd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecell.xml @@ -0,0 +1,26 @@ + + + + +NIST DOM HTML Test - TABLECELL + + + + + + + + + + + + + + + +
      Employee IdEmployee NamePositionSalary
      EMP0001Margaret MartinAccountant56,000
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecol.html b/dom/tests/mochitest/dom-level2-html/files/tablecol.html new file mode 100644 index 0000000000..c72a948990 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecol.html @@ -0,0 +1,35 @@ + + + + +NIST DOM HTML Test - TABLECOL + + + +++ + + + + + + + + + + + + +
      IdNamePositionSalary
      EMP0001MartinAccountant56,000
      + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecol.xhtml b/dom/tests/mochitest/dom-level2-html/files/tablecol.xhtml new file mode 100644 index 0000000000..a69c4fec46 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecol.xhtml @@ -0,0 +1,29 @@ + + + + +NIST DOM HTML Test - TABLECOL + + + +++ + + + + + + + + + + + + +
      IdNamePositionSalary
      EMP0001MartinAccountant56,000
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablecol.xml b/dom/tests/mochitest/dom-level2-html/files/tablecol.xml new file mode 100644 index 0000000000..a69c4fec46 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablecol.xml @@ -0,0 +1,29 @@ + + + + +NIST DOM HTML Test - TABLECOL + + + +++ + + + + + + + + + + + + +
      IdNamePositionSalary
      EMP0001MartinAccountant56,000
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablerow.html b/dom/tests/mochitest/dom-level2-html/files/tablerow.html new file mode 100644 index 0000000000..9e76a4cdb5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablerow.html @@ -0,0 +1,59 @@ + + + + +NIST DOM HTML Test - TABLEROW + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablerow.xhtml b/dom/tests/mochitest/dom-level2-html/files/tablerow.xhtml new file mode 100644 index 0000000000..b901e3ce0e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablerow.xhtml @@ -0,0 +1,62 @@ + + + + +NIST DOM HTML Test - TABLE + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablerow.xml b/dom/tests/mochitest/dom-level2-html/files/tablerow.xml new file mode 100644 index 0000000000..b901e3ce0e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablerow.xml @@ -0,0 +1,62 @@ + + + + +NIST DOM HTML Test - TABLE + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablesection.html b/dom/tests/mochitest/dom-level2-html/files/tablesection.html new file mode 100644 index 0000000000..0c1a5f784d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablesection.html @@ -0,0 +1,62 @@ + + + + +NIST DOM HTML Test - TABLESECTION + + + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablesection.xhtml b/dom/tests/mochitest/dom-level2-html/files/tablesection.xhtml new file mode 100644 index 0000000000..34986508bc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablesection.xhtml @@ -0,0 +1,65 @@ + + + + +NIST DOM HTML Test - TABLESECTION + + + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/tablesection.xml b/dom/tests/mochitest/dom-level2-html/files/tablesection.xml new file mode 100644 index 0000000000..34986508bc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/tablesection.xml @@ -0,0 +1,65 @@ + + + + +NIST DOM HTML Test - TABLESECTION + + + + + + + + + + + +
      IdNamePositionSalary
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Table Caption
      Employee IdEmployee NamePositionSalaryGenderAddress
      next page ...next page ...next page ...next page ...next page ...next page ...
      EMP0001Margaret MartinAccountant56,000Female1230 North Ave. Dallas, Texas 98551
      EMP0002Martha RaynoldsSecretary35,000Female1900 Dallas Road Dallas, Texas 98554
      + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/textarea.html b/dom/tests/mochitest/dom-level2-html/files/textarea.html new file mode 100644 index 0000000000..b9aedc4997 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/textarea.html @@ -0,0 +1,26 @@ + + + + +NIST DOM HTML Test - TEXTAREA + + +
      +

      + + + +

      +
      +

      + + + + + + +

      + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/textarea.xhtml b/dom/tests/mochitest/dom-level2-html/files/textarea.xhtml new file mode 100644 index 0000000000..eb6ca48bac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/textarea.xhtml @@ -0,0 +1,27 @@ + + + + +NIST DOM HTML Test - TEXTAREA + + +
      +

      + + + +

      +
      +

      + + + + + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/textarea.xml b/dom/tests/mochitest/dom-level2-html/files/textarea.xml new file mode 100644 index 0000000000..eb6ca48bac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/textarea.xml @@ -0,0 +1,27 @@ + + + + +NIST DOM HTML Test - TEXTAREA + + +
      +

      + + + +

      +
      +

      + + + + + + +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/title.html b/dom/tests/mochitest/dom-level2-html/files/title.html new file mode 100644 index 0000000000..2078ee95d3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/title.html @@ -0,0 +1,13 @@ + + + + +NIST DOM HTML Test - TITLE + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/title.xhtml b/dom/tests/mochitest/dom-level2-html/files/title.xhtml new file mode 100644 index 0000000000..e8ec6b55a3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/title.xhtml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - TITLE + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/title.xml b/dom/tests/mochitest/dom-level2-html/files/title.xml new file mode 100644 index 0000000000..e8ec6b55a3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/title.xml @@ -0,0 +1,15 @@ + + + + +NIST DOM HTML Test - TITLE + + +

      +
      +

      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/ulist.html b/dom/tests/mochitest/dom-level2-html/files/ulist.html new file mode 100644 index 0000000000..75498e2cbc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/ulist.html @@ -0,0 +1,36 @@ + + + + +NIST DOM HTML Test - ULIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          Female
          +
          1900 Dallas Road. Dallas, Texas 98554
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/ulist.xhtml b/dom/tests/mochitest/dom-level2-html/files/ulist.xhtml new file mode 100644 index 0000000000..fd9d7a5a46 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/ulist.xhtml @@ -0,0 +1,38 @@ + + + + +NIST DOM HTML Test - ULIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          Female
          +
          1900 Dallas Road. Dallas, Texas 98554
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/ulist.xml b/dom/tests/mochitest/dom-level2-html/files/ulist.xml new file mode 100644 index 0000000000..fd9d7a5a46 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/ulist.xml @@ -0,0 +1,38 @@ + + + + +NIST DOM HTML Test - ULIST + + +
        +
      1. EMP0001 +
          +
        • Margaret Martin +
          +
          Accountant
          +
          56,000
          +
          Female
          +
          1230 North Ave. Dallas, Texas 98551
          +
          +
        • +
        +
      2. +
      3. EMP0002 +
          +
        • Martha Raynolds +
          +
          Secretary
          +
          35,000
          +
          Female
          +
          1900 Dallas Road. Dallas, Texas 98554
          +
          +
        • +
        +
      4. +
      + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/w3c_main.png b/dom/tests/mochitest/dom-level2-html/files/w3c_main.png new file mode 100644 index 0000000000..ac0ecd37eb Binary files /dev/null and b/dom/tests/mochitest/dom-level2-html/files/w3c_main.png differ diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml-lat1.ent b/dom/tests/mochitest/dom-level2-html/files/xhtml-lat1.ent new file mode 100644 index 0000000000..ffee223eb1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml-lat1.ent @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml-special.ent b/dom/tests/mochitest/dom-level2-html/files/xhtml-special.ent new file mode 100644 index 0000000000..ca358b2fec --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml-special.ent @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml-symbol.ent b/dom/tests/mochitest/dom-level2-html/files/xhtml-symbol.ent new file mode 100644 index 0000000000..63c2abfa6f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml-symbol.ent @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml1-frameset.dtd b/dom/tests/mochitest/dom-level2-html/files/xhtml1-frameset.dtd new file mode 100644 index 0000000000..c22b666d19 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml1-frameset.dtd @@ -0,0 +1,1235 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd b/dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd new file mode 100644 index 0000000000..06228785f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd @@ -0,0 +1,978 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/files/xhtml1-transitional.dtd b/dom/tests/mochitest/dom-level2-html/files/xhtml1-transitional.dtd new file mode 100644 index 0000000000..215a4b078b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml1-transitional.dtd @@ -0,0 +1,1201 @@ + + + + + +%HTMLlat1; + + +%HTMLsymbol; + + +%HTMLspecial; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/dom-level2-html/mochitest.toml b/dom/tests/mochitest/dom-level2-html/mochitest.toml new file mode 100644 index 0000000000..986cfcf9e4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/mochitest.toml @@ -0,0 +1,1516 @@ +[DEFAULT] +support-files = [ + "DOMTestCase.js", + "files/anchor.html", + "files/anchor.xhtml", + "files/anchor.xml", + "files/anchor2.html", + "files/anchor2.xhtml", + "files/anchor2.xml", + "files/applet.html", + "files/applet.xhtml", + "files/applet.xml", + "files/applet2.class", + "files/applet2.html", + "files/applet2.xhtml", + "files/applet2.xml", + "files/area.html", + "files/area.xhtml", + "files/area.xml", + "files/area2.html", + "files/area2.xhtml", + "files/area2.xml", + "files/base.html", + "files/base.xhtml", + "files/base.xml", + "files/base2.html", + "files/base2.xhtml", + "files/base2.xml", + "files/body.html", + "files/body.xhtml", + "files/body.xml", + "files/br.html", + "files/br.xhtml", + "files/br.xml", + "files/button.html", + "files/button.xhtml", + "files/button.xml", + "files/collection.html", + "files/collection.xhtml", + "files/collection.xml", + "files/directory.html", + "files/directory.xhtml", + "files/directory.xml", + "files/div.html", + "files/div.xhtml", + "files/div.xml", + "files/dl.html", + "files/dl.xhtml", + "files/dl.xml", + "files/document.html", + "files/document-with-applet.html", + "files/document.xhtml", + "files/document.xml", + "files/element.html", + "files/element.xhtml", + "files/element.xml", + "files/fieldset.html", + "files/fieldset.xhtml", + "files/fieldset.xml", + "files/font.html", + "files/font.xhtml", + "files/font.xml", + "files/form.html", + "files/form.xhtml", + "files/form.xml", + "files/form2.html", + "files/form2.xhtml", + "files/form2.xml", + "files/form3.html", + "files/form3.xhtml", + "files/form3.xml", + "files/frame.html", + "files/frame.xhtml", + "files/frame.xml", + "files/frame2.html", + "files/frame2.xhtml", + "files/frame2.xml", + "files/frameset.html", + "files/frameset.xhtml", + "files/frameset.xml", + "files/heading.html", + "files/heading.xhtml", + "files/heading.xml", + "files/hr.html", + "files/hr.xhtml", + "files/hr.xml", + "files/html.html", + "files/html.xhtml", + "files/html.xml", + "files/iframe.html", + "files/iframe.xhtml", + "files/iframe.xml", + "files/iframe2.html", + "files/iframe2.xhtml", + "files/iframe2.xml", + "files/img.html", + "files/img.xhtml", + "files/img.xml", + "files/index.html", + "files/input.html", + "files/input.xhtml", + "files/input.xml", + "files/isindex.html", + "files/isindex.xhtml", + "files/isindex.xml", + "files/label.html", + "files/label.xhtml", + "files/label.xml", + "files/legend.html", + "files/legend.xhtml", + "files/legend.xml", + "files/li.html", + "files/li.xhtml", + "files/li.xml", + "files/link.html", + "files/link.xhtml", + "files/link.xml", + "files/link2.html", + "files/link2.xhtml", + "files/link2.xml", + "files/map.html", + "files/map.xhtml", + "files/map.xml", + "files/menu.html", + "files/menu.xhtml", + "files/menu.xml", + "files/meta.html", + "files/meta.xhtml", + "files/meta.xml", + "files/mod.html", + "files/mod.xhtml", + "files/mod.xml", + "files/object.html", + "files/object.xhtml", + "files/object.xml", + "files/object2.html", + "files/object2.xhtml", + "files/object2.xml", + "files/olist.html", + "files/olist.xhtml", + "files/olist.xml", + "files/optgroup.html", + "files/optgroup.xhtml", + "files/optgroup.xml", + "files/option.html", + "files/option.xhtml", + "files/option.xml", + "files/optionscollection.html", + "files/optionscollection.xhtml", + "files/optionscollection.xml", + "files/paragraph.html", + "files/paragraph.xhtml", + "files/paragraph.xml", + "files/param.html", + "files/param.xhtml", + "files/param.xml", + "files/pre.html", + "files/pre.xhtml", + "files/pre.xml", + "files/quote.html", + "files/quote.xhtml", + "files/quote.xml", + "files/right.png", + "files/script.html", + "files/script.xhtml", + "files/script.xml", + "files/select.html", + "files/select.xhtml", + "files/select.xml", + "files/style.html", + "files/style.xhtml", + "files/style.xml", + "files/table.html", + "files/table.xhtml", + "files/table.xml", + "files/table1.html", + "files/table1.xhtml", + "files/table1.xml", + "files/tablecaption.html", + "files/tablecaption.xhtml", + "files/tablecaption.xml", + "files/tablecell.html", + "files/tablecell.xhtml", + "files/tablecell.xml", + "files/tablecol.html", + "files/tablecol.xhtml", + "files/tablecol.xml", + "files/tablerow.html", + "files/tablerow.xhtml", + "files/tablerow.xml", + "files/tablesection.html", + "files/tablesection.xhtml", + "files/tablesection.xml", + "files/textarea.html", + "files/textarea.xhtml", + "files/textarea.xml", + "files/title.html", + "files/title.xhtml", + "files/title.xml", + "files/ulist.html", + "files/ulist.xhtml", + "files/ulist.xml", + "files/w3c_main.png", + "files/xhtml-lat1.ent", + "files/xhtml-special.ent", + "files/xhtml-symbol.ent", + "files/xhtml1-frameset.dtd", + "files/xhtml1-strict.dtd", + "files/xhtml1-transitional.dtd", +] + +["test_HTMLAnchorElement01.html"] + +["test_HTMLAnchorElement02.html"] + +["test_HTMLAnchorElement03.html"] + +["test_HTMLAnchorElement04.html"] + +["test_HTMLAnchorElement05.html"] + +["test_HTMLAnchorElement06.html"] + +["test_HTMLAnchorElement07.html"] + +["test_HTMLAnchorElement08.html"] + +["test_HTMLAnchorElement09.html"] + +["test_HTMLAnchorElement10.html"] + +["test_HTMLAnchorElement11.html"] + +["test_HTMLAnchorElement12.html"] + +["test_HTMLAnchorElement13.html"] + +["test_HTMLAnchorElement14.html"] + +["test_HTMLAreaElement01.html"] + +["test_HTMLAreaElement02.html"] + +["test_HTMLAreaElement03.html"] + +["test_HTMLAreaElement04.html"] + +["test_HTMLAreaElement05.html"] + +["test_HTMLAreaElement06.html"] + +["test_HTMLAreaElement07.html"] + +["test_HTMLAreaElement08.html"] + +["test_HTMLBRElement01.html"] + +["test_HTMLBaseElement01.html"] + +["test_HTMLBaseElement02.html"] + +["test_HTMLBodyElement01.html"] + +["test_HTMLBodyElement02.html"] + +["test_HTMLBodyElement03.html"] + +["test_HTMLBodyElement04.html"] + +["test_HTMLBodyElement05.html"] + +["test_HTMLBodyElement06.html"] + +["test_HTMLButtonElement01.html"] + +["test_HTMLButtonElement02.html"] + +["test_HTMLButtonElement03.html"] + +["test_HTMLButtonElement04.html"] + +["test_HTMLButtonElement05.html"] + +["test_HTMLButtonElement06.html"] + +["test_HTMLButtonElement07.html"] + +["test_HTMLButtonElement08.html"] + +["test_HTMLCollection01.html"] + +["test_HTMLCollection02.html"] + +["test_HTMLCollection03.html"] + +["test_HTMLCollection04.html"] + +["test_HTMLCollection05.html"] + +["test_HTMLCollection06.html"] + +["test_HTMLCollection07.html"] + +["test_HTMLCollection08.html"] + +["test_HTMLCollection09.html"] + +["test_HTMLCollection10.html"] + +["test_HTMLCollection11.html"] + +["test_HTMLCollection12.html"] + +["test_HTMLDirectoryElement01.html"] + +["test_HTMLDivElement01.html"] + +["test_HTMLDlistElement01.html"] + +["test_HTMLDocument01.html"] + +["test_HTMLDocument02.html"] + +["test_HTMLDocument03.html"] + +["test_HTMLDocument04.html"] + +["test_HTMLDocument05.html"] + +["test_HTMLDocument07.html"] + +["test_HTMLDocument09.html"] + +["test_HTMLDocument10.html"] + +["test_HTMLDocument11.html"] + +["test_HTMLDocument12.html"] + +["test_HTMLDocument13.html"] + +["test_HTMLDocument14.html"] + +["test_HTMLDocument15.html"] + +["test_HTMLDocument16.html"] + +["test_HTMLDocument17.html"] + +["test_HTMLDocument18.html"] + +["test_HTMLDocument19.html"] + +["test_HTMLDocument20.html"] + +["test_HTMLDocument21.html"] + +["test_HTMLElement01.html"] + +["test_HTMLElement02.html"] + +["test_HTMLElement03.html"] + +["test_HTMLElement04.html"] + +["test_HTMLElement05.html"] + +["test_HTMLElement06.html"] + +["test_HTMLElement07.html"] + +["test_HTMLElement08.html"] + +["test_HTMLElement09.html"] + +["test_HTMLElement10.html"] + +["test_HTMLElement100.html"] + +["test_HTMLElement101.html"] + +["test_HTMLElement102.html"] + +["test_HTMLElement103.html"] + +["test_HTMLElement104.html"] + +["test_HTMLElement105.html"] + +["test_HTMLElement106.html"] + +["test_HTMLElement107.html"] + +["test_HTMLElement108.html"] + +["test_HTMLElement109.html"] + +["test_HTMLElement11.html"] + +["test_HTMLElement110.html"] + +["test_HTMLElement111.html"] + +["test_HTMLElement112.html"] + +["test_HTMLElement113.html"] + +["test_HTMLElement114.html"] + +["test_HTMLElement115.html"] + +["test_HTMLElement116.html"] + +["test_HTMLElement117.html"] + +["test_HTMLElement118.html"] + +["test_HTMLElement119.html"] + +["test_HTMLElement12.html"] + +["test_HTMLElement120.html"] + +["test_HTMLElement121.html"] + +["test_HTMLElement122.html"] + +["test_HTMLElement123.html"] + +["test_HTMLElement124.html"] + +["test_HTMLElement125.html"] + +["test_HTMLElement126.html"] + +["test_HTMLElement127.html"] + +["test_HTMLElement128.html"] + +["test_HTMLElement129.html"] + +["test_HTMLElement13.html"] + +["test_HTMLElement130.html"] + +["test_HTMLElement131.html"] + +["test_HTMLElement132.html"] + +["test_HTMLElement133.html"] + +["test_HTMLElement134.html"] + +["test_HTMLElement135.html"] + +["test_HTMLElement136.html"] + +["test_HTMLElement137.html"] + +["test_HTMLElement138.html"] + +["test_HTMLElement139.html"] + +["test_HTMLElement14.html"] + +["test_HTMLElement140.html"] + +["test_HTMLElement141.html"] + +["test_HTMLElement142.html"] + +["test_HTMLElement143.html"] + +["test_HTMLElement144.html"] + +["test_HTMLElement145.html"] + +["test_HTMLElement15.html"] + +["test_HTMLElement16.html"] + +["test_HTMLElement17.html"] + +["test_HTMLElement18.html"] + +["test_HTMLElement19.html"] + +["test_HTMLElement20.html"] + +["test_HTMLElement21.html"] + +["test_HTMLElement22.html"] + +["test_HTMLElement23.html"] + +["test_HTMLElement24.html"] + +["test_HTMLElement25.html"] + +["test_HTMLElement26.html"] + +["test_HTMLElement27.html"] + +["test_HTMLElement28.html"] + +["test_HTMLElement29.html"] + +["test_HTMLElement30.html"] + +["test_HTMLElement31.html"] + +["test_HTMLElement32.html"] + +["test_HTMLElement33.html"] + +["test_HTMLElement34.html"] + +["test_HTMLElement35.html"] + +["test_HTMLElement36.html"] + +["test_HTMLElement37.html"] + +["test_HTMLElement38.html"] + +["test_HTMLElement39.html"] + +["test_HTMLElement40.html"] + +["test_HTMLElement41.html"] + +["test_HTMLElement42.html"] + +["test_HTMLElement43.html"] + +["test_HTMLElement44.html"] + +["test_HTMLElement45.html"] + +["test_HTMLElement46.html"] + +["test_HTMLElement47.html"] + +["test_HTMLElement48.html"] + +["test_HTMLElement49.html"] + +["test_HTMLElement50.html"] + +["test_HTMLElement51.html"] + +["test_HTMLElement52.html"] + +["test_HTMLElement53.html"] + +["test_HTMLElement54.html"] + +["test_HTMLElement55.html"] + +["test_HTMLElement56.html"] + +["test_HTMLElement57.html"] + +["test_HTMLElement58.html"] + +["test_HTMLElement59.html"] + +["test_HTMLElement60.html"] + +["test_HTMLElement61.html"] + +["test_HTMLElement62.html"] + +["test_HTMLElement63.html"] + +["test_HTMLElement64.html"] + +["test_HTMLElement65.html"] + +["test_HTMLElement66.html"] + +["test_HTMLElement67.html"] + +["test_HTMLElement68.html"] + +["test_HTMLElement69.html"] + +["test_HTMLElement70.html"] + +["test_HTMLElement71.html"] + +["test_HTMLElement72.html"] + +["test_HTMLElement73.html"] + +["test_HTMLElement74.html"] + +["test_HTMLElement75.html"] + +["test_HTMLElement76.html"] + +["test_HTMLElement77.html"] + +["test_HTMLElement78.html"] + +["test_HTMLElement79.html"] + +["test_HTMLElement80.html"] + +["test_HTMLElement81.html"] + +["test_HTMLElement82.html"] + +["test_HTMLElement83.html"] + +["test_HTMLElement84.html"] + +["test_HTMLElement85.html"] + +["test_HTMLElement86.html"] + +["test_HTMLElement87.html"] + +["test_HTMLElement88.html"] + +["test_HTMLElement89.html"] + +["test_HTMLElement90.html"] + +["test_HTMLElement91.html"] + +["test_HTMLElement92.html"] + +["test_HTMLElement93.html"] + +["test_HTMLElement94.html"] + +["test_HTMLElement95.html"] + +["test_HTMLElement96.html"] + +["test_HTMLElement97.html"] + +["test_HTMLElement98.html"] + +["test_HTMLElement99.html"] + +["test_HTMLFieldSetElement01.html"] + +["test_HTMLFieldSetElement02.html"] + +["test_HTMLFontElement01.html"] + +["test_HTMLFontElement02.html"] + +["test_HTMLFontElement03.html"] + +["test_HTMLFormElement01.html"] + +["test_HTMLFormElement02.html"] + +["test_HTMLFormElement03.html"] + +["test_HTMLFormElement04.html"] + +["test_HTMLFormElement05.html"] + +["test_HTMLFormElement06.html"] + +["test_HTMLFormElement07.html"] + +["test_HTMLFormElement08.html"] + +["test_HTMLFormElement09.html"] + +["test_HTMLFormElement10.html"] + +["test_HTMLFrameElement01.html"] + +["test_HTMLFrameElement02.html"] + +["test_HTMLFrameElement03.html"] + +["test_HTMLFrameElement04.html"] + +["test_HTMLFrameElement05.html"] + +["test_HTMLFrameElement06.html"] + +["test_HTMLFrameElement07.html"] + +["test_HTMLFrameElement08.html"] + +["test_HTMLFrameElement09.html"] + +["test_HTMLFrameSetElement01.html"] + +["test_HTMLFrameSetElement02.html"] + +["test_HTMLHRElement01.html"] + +["test_HTMLHRElement02.html"] + +["test_HTMLHRElement03.html"] + +["test_HTMLHRElement04.html"] + +["test_HTMLHeadingElement01.html"] + +["test_HTMLHeadingElement02.html"] + +["test_HTMLHeadingElement03.html"] + +["test_HTMLHeadingElement04.html"] + +["test_HTMLHeadingElement05.html"] + +["test_HTMLHeadingElement06.html"] + +["test_HTMLHtmlElement01.html"] + +["test_HTMLIFrameElement01.html"] + +["test_HTMLIFrameElement02.html"] + +["test_HTMLIFrameElement03.html"] + +["test_HTMLIFrameElement04.html"] + +["test_HTMLIFrameElement05.html"] + +["test_HTMLIFrameElement06.html"] + +["test_HTMLIFrameElement07.html"] + +["test_HTMLIFrameElement08.html"] + +["test_HTMLIFrameElement09.html"] + +["test_HTMLIFrameElement10.html"] + +["test_HTMLIFrameElement11.html"] + +["test_HTMLImageElement01.html"] + +["test_HTMLImageElement02.html"] + +["test_HTMLImageElement03.html"] + +["test_HTMLImageElement04.html"] + +["test_HTMLImageElement05.html"] + +["test_HTMLImageElement06.html"] + +["test_HTMLImageElement07.html"] + +["test_HTMLImageElement08.html"] + +["test_HTMLImageElement09.html"] + +["test_HTMLImageElement10.html"] + +["test_HTMLImageElement11.html"] + +["test_HTMLImageElement12.html"] + +["test_HTMLInputElement01.html"] + +["test_HTMLInputElement02.html"] + +["test_HTMLInputElement03.html"] + +["test_HTMLInputElement04.html"] + +["test_HTMLInputElement05.html"] + +["test_HTMLInputElement06.html"] + +["test_HTMLInputElement07.html"] + +["test_HTMLInputElement08.html"] + +["test_HTMLInputElement09.html"] + +["test_HTMLInputElement10.html"] + +["test_HTMLInputElement11.html"] + +["test_HTMLInputElement12.html"] + +["test_HTMLInputElement13.html"] + +["test_HTMLInputElement14.html"] + +["test_HTMLInputElement15.html"] + +["test_HTMLInputElement16.html"] + +["test_HTMLInputElement17.html"] + +["test_HTMLInputElement18.html"] + +["test_HTMLInputElement19.html"] + +["test_HTMLInputElement20.html"] + +["test_HTMLInputElement21.html"] + +["test_HTMLInputElement22.html"] + +["test_HTMLLIElement01.html"] + +["test_HTMLLIElement02.html"] + +["test_HTMLLabelElement01.html"] + +["test_HTMLLabelElement02.html"] + +["test_HTMLLabelElement03.html"] + +["test_HTMLLabelElement04.html"] + +["test_HTMLLegendElement01.html"] + +["test_HTMLLegendElement02.html"] + +["test_HTMLLegendElement03.html"] + +["test_HTMLLegendElement04.html"] + +["test_HTMLLinkElement01.html"] + +["test_HTMLLinkElement02.html"] + +["test_HTMLLinkElement03.html"] + +["test_HTMLLinkElement04.html"] + +["test_HTMLLinkElement05.html"] + +["test_HTMLLinkElement06.html"] + +["test_HTMLLinkElement07.html"] + +["test_HTMLLinkElement08.html"] + +["test_HTMLLinkElement09.html"] + +["test_HTMLMapElement01.html"] + +["test_HTMLMapElement02.html"] + +["test_HTMLMenuElement01.html"] + +["test_HTMLMetaElement01.html"] + +["test_HTMLMetaElement02.html"] + +["test_HTMLMetaElement03.html"] + +["test_HTMLMetaElement04.html"] + +["test_HTMLModElement01.html"] + +["test_HTMLModElement02.html"] + +["test_HTMLModElement03.html"] + +["test_HTMLModElement04.html"] + +["test_HTMLOListElement01.html"] + +["test_HTMLOListElement02.html"] + +["test_HTMLOListElement03.html"] + +["test_HTMLObjectElement01.html"] + +["test_HTMLObjectElement02.html"] + +["test_HTMLObjectElement03.html"] + +["test_HTMLObjectElement04.html"] + +["test_HTMLObjectElement05.html"] + +["test_HTMLObjectElement06.html"] + +["test_HTMLObjectElement07.html"] + +["test_HTMLObjectElement08.html"] + +["test_HTMLObjectElement09.html"] + +["test_HTMLObjectElement10.html"] + +["test_HTMLObjectElement11.html"] + +["test_HTMLObjectElement12.html"] + +["test_HTMLObjectElement13.html"] + +["test_HTMLObjectElement14.html"] + +["test_HTMLObjectElement15.html"] + +["test_HTMLObjectElement16.html"] + +["test_HTMLObjectElement17.html"] + +["test_HTMLObjectElement18.html"] + +["test_HTMLObjectElement19.html"] + +["test_HTMLObjectElement20.html"] + +["test_HTMLOptGroupElement01.html"] + +["test_HTMLOptGroupElement02.html"] + +["test_HTMLOptionElement01.html"] + +["test_HTMLOptionElement02.html"] + +["test_HTMLOptionElement03.html"] + +["test_HTMLOptionElement04.html"] + +["test_HTMLOptionElement05.html"] + +["test_HTMLOptionElement06.html"] + +["test_HTMLOptionElement07.html"] + +["test_HTMLOptionElement08.html"] + +["test_HTMLOptionElement09.html"] + +["test_HTMLOptionsCollection01.html"] + +["test_HTMLOptionsCollection02.html"] + +["test_HTMLOptionsCollection03.html"] + +["test_HTMLOptionsCollection04.html"] + +["test_HTMLOptionsCollection05.html"] + +["test_HTMLOptionsCollection06.html"] + +["test_HTMLOptionsCollection07.html"] + +["test_HTMLParagraphElement01.html"] + +["test_HTMLParamElement01.html"] + +["test_HTMLParamElement02.html"] + +["test_HTMLParamElement03.html"] + +["test_HTMLParamElement04.html"] + +["test_HTMLPreElement01.html"] + +["test_HTMLQuoteElement01.html"] + +["test_HTMLQuoteElement02.html"] + +["test_HTMLScriptElement01.html"] + +["test_HTMLScriptElement02.html"] + +["test_HTMLScriptElement03.html"] + +["test_HTMLScriptElement04.html"] + +["test_HTMLScriptElement05.html"] + +["test_HTMLScriptElement06.html"] + +["test_HTMLScriptElement07.html"] + +["test_HTMLSelectElement01.html"] + +["test_HTMLSelectElement02.html"] + +["test_HTMLSelectElement03.html"] + +["test_HTMLSelectElement04.html"] + +["test_HTMLSelectElement05.html"] + +["test_HTMLSelectElement06.html"] + +["test_HTMLSelectElement07.html"] + +["test_HTMLSelectElement08.html"] + +["test_HTMLSelectElement09.html"] + +["test_HTMLSelectElement10.html"] + +["test_HTMLSelectElement11.html"] + +["test_HTMLSelectElement12.html"] + +["test_HTMLSelectElement13.html"] + +["test_HTMLSelectElement14.html"] + +["test_HTMLSelectElement15.html"] + +["test_HTMLSelectElement16.html"] + +["test_HTMLSelectElement17.html"] + +["test_HTMLSelectElement18.html"] + +["test_HTMLSelectElement19.html"] + +["test_HTMLSelectElement20.html"] + +["test_HTMLStyleElement01.html"] + +["test_HTMLStyleElement02.html"] + +["test_HTMLStyleElement03.html"] + +["test_HTMLTableCaptionElement01.html"] + +["test_HTMLTableCellElement01.html"] + +["test_HTMLTableCellElement02.html"] + +["test_HTMLTableCellElement03.html"] + +["test_HTMLTableCellElement04.html"] + +["test_HTMLTableCellElement05.html"] + +["test_HTMLTableCellElement06.html"] + +["test_HTMLTableCellElement07.html"] + +["test_HTMLTableCellElement08.html"] + +["test_HTMLTableCellElement09.html"] + +["test_HTMLTableCellElement10.html"] + +["test_HTMLTableCellElement11.html"] + +["test_HTMLTableCellElement12.html"] + +["test_HTMLTableCellElement13.html"] + +["test_HTMLTableCellElement14.html"] + +["test_HTMLTableCellElement15.html"] + +["test_HTMLTableCellElement16.html"] + +["test_HTMLTableCellElement17.html"] + +["test_HTMLTableCellElement18.html"] + +["test_HTMLTableCellElement19.html"] + +["test_HTMLTableCellElement20.html"] + +["test_HTMLTableCellElement21.html"] + +["test_HTMLTableCellElement22.html"] + +["test_HTMLTableCellElement23.html"] + +["test_HTMLTableCellElement24.html"] + +["test_HTMLTableCellElement25.html"] + +["test_HTMLTableCellElement26.html"] + +["test_HTMLTableCellElement27.html"] + +["test_HTMLTableCellElement28.html"] + +["test_HTMLTableCellElement29.html"] + +["test_HTMLTableCellElement30.html"] + +["test_HTMLTableColElement01.html"] + +["test_HTMLTableColElement02.html"] + +["test_HTMLTableColElement03.html"] + +["test_HTMLTableColElement04.html"] + +["test_HTMLTableColElement05.html"] + +["test_HTMLTableColElement06.html"] + +["test_HTMLTableColElement07.html"] + +["test_HTMLTableColElement08.html"] + +["test_HTMLTableColElement09.html"] + +["test_HTMLTableColElement10.html"] + +["test_HTMLTableColElement11.html"] + +["test_HTMLTableColElement12.html"] + +["test_HTMLTableElement01.html"] + +["test_HTMLTableElement02.html"] + +["test_HTMLTableElement03.html"] + +["test_HTMLTableElement04.html"] + +["test_HTMLTableElement05.html"] + +["test_HTMLTableElement06.html"] + +["test_HTMLTableElement07.html"] + +["test_HTMLTableElement08.html"] + +["test_HTMLTableElement09.html"] + +["test_HTMLTableElement10.html"] + +["test_HTMLTableElement11.html"] + +["test_HTMLTableElement12.html"] + +["test_HTMLTableElement13.html"] + +["test_HTMLTableElement14.html"] + +["test_HTMLTableElement15.html"] + +["test_HTMLTableElement16.html"] + +["test_HTMLTableElement17.html"] + +["test_HTMLTableElement18.html"] + +["test_HTMLTableElement19.html"] + +["test_HTMLTableElement20.html"] + +["test_HTMLTableElement21.html"] + +["test_HTMLTableElement22.html"] + +["test_HTMLTableElement23.html"] + +["test_HTMLTableElement24.html"] + +["test_HTMLTableElement25.html"] + +["test_HTMLTableElement26.html"] + +["test_HTMLTableElement27.html"] + +["test_HTMLTableElement28.html"] + +["test_HTMLTableElement29.html"] + +["test_HTMLTableElement30.html"] + +["test_HTMLTableElement31.html"] + +["test_HTMLTableElement32.html"] + +["test_HTMLTableElement33.html"] + +["test_HTMLTableElement34.html"] + +["test_HTMLTableElement35.html"] + +["test_HTMLTableElement36.html"] + +["test_HTMLTableElement37.html"] + +["test_HTMLTableElement38.html"] + +["test_HTMLTableElement39.html"] + +["test_HTMLTableElement40.html"] + +["test_HTMLTableRowElement01.html"] + +["test_HTMLTableRowElement02.html"] + +["test_HTMLTableRowElement03.html"] + +["test_HTMLTableRowElement04.html"] + +["test_HTMLTableRowElement05.html"] + +["test_HTMLTableRowElement06.html"] + +["test_HTMLTableRowElement07.html"] + +["test_HTMLTableRowElement08.html"] + +["test_HTMLTableRowElement09.html"] + +["test_HTMLTableRowElement10.html"] + +["test_HTMLTableRowElement11.html"] + +["test_HTMLTableRowElement12.html"] + +["test_HTMLTableRowElement13.html"] + +["test_HTMLTableRowElement14.html"] + +["test_HTMLTableRowElement15.html"] + +["test_HTMLTableRowElement16.html"] + +["test_HTMLTableRowElement17.html"] + +["test_HTMLTableRowElement18.html"] + +["test_HTMLTableRowElement19.html"] + +["test_HTMLTableRowElement20.html"] + +["test_HTMLTableRowElement21.html"] + +["test_HTMLTableSectionElement01.html"] + +["test_HTMLTableSectionElement02.html"] + +["test_HTMLTableSectionElement03.html"] + +["test_HTMLTableSectionElement04.html"] + +["test_HTMLTableSectionElement05.html"] + +["test_HTMLTableSectionElement06.html"] + +["test_HTMLTableSectionElement07.html"] + +["test_HTMLTableSectionElement08.html"] + +["test_HTMLTableSectionElement09.html"] + +["test_HTMLTableSectionElement10.html"] + +["test_HTMLTableSectionElement11.html"] + +["test_HTMLTableSectionElement12.html"] + +["test_HTMLTableSectionElement13.html"] + +["test_HTMLTableSectionElement14.html"] + +["test_HTMLTableSectionElement15.html"] + +["test_HTMLTableSectionElement16.html"] + +["test_HTMLTableSectionElement17.html"] + +["test_HTMLTableSectionElement18.html"] + +["test_HTMLTableSectionElement19.html"] + +["test_HTMLTableSectionElement20.html"] + +["test_HTMLTableSectionElement21.html"] + +["test_HTMLTableSectionElement22.html"] + +["test_HTMLTableSectionElement23.html"] + +["test_HTMLTableSectionElement24.html"] + +["test_HTMLTableSectionElement25.html"] + +["test_HTMLTableSectionElement26.html"] + +["test_HTMLTableSectionElement27.html"] + +["test_HTMLTableSectionElement28.html"] + +["test_HTMLTableSectionElement29.html"] + +["test_HTMLTableSectionElement30.html"] + +["test_HTMLTableSectionElement31.html"] + +["test_HTMLTextAreaElement01.html"] + +["test_HTMLTextAreaElement02.html"] + +["test_HTMLTextAreaElement03.html"] + +["test_HTMLTextAreaElement04.html"] + +["test_HTMLTextAreaElement05.html"] + +["test_HTMLTextAreaElement06.html"] + +["test_HTMLTextAreaElement07.html"] + +["test_HTMLTextAreaElement08.html"] + +["test_HTMLTextAreaElement09.html"] + +["test_HTMLTextAreaElement10.html"] + +["test_HTMLTextAreaElement11.html"] + +["test_HTMLTextAreaElement12.html"] + +["test_HTMLTextAreaElement13.html"] + +["test_HTMLTextAreaElement14.html"] + +["test_HTMLTextAreaElement15.html"] + +["test_HTMLTitleElement01.html"] + +["test_HTMLUListElement01.html"] + +["test_HTMLUListElement02.html"] + +["test_anchor01.html"] + +["test_anchor02.html"] + +["test_anchor03.html"] + +["test_anchor04.html"] + +["test_anchor05.html"] + +["test_anchor06.html"] + +["test_area01.html"] + +["test_area02.html"] + +["test_area03.html"] + +["test_area04.html"] + +["test_body01.html"] + +["test_button01.html"] + +["test_button02.html"] + +["test_button03.html"] + +["test_button04.html"] + +["test_button05.html"] + +["test_button06.html"] + +["test_button07.html"] + +["test_button08.html"] + +["test_button09.html"] + +["test_dlist01.html"] + +["test_doc01.html"] + +["test_hasFeature01.html"] + +["test_hasFeature02.html"] + +["test_hasFeature03.html"] + +["test_hasFeature04.html"] + +["test_hasFeature05.html"] + +["test_hasFeature06.html"] + +["test_object01.html"] + +["test_object02.html"] + +["test_object03.html"] + +["test_object04.html"] + +["test_object05.html"] + +["test_object06.html"] + +["test_object07.html"] + +["test_object08.html"] + +["test_object09.html"] + +["test_object10.html"] + +["test_object11.html"] + +["test_object12.html"] + +["test_object13.html"] + +["test_object14.html"] + +["test_object15.html"] + +["test_table01.html"] + +["test_table02.html"] + +["test_table03.html"] + +["test_table04.html"] + +["test_table06.html"] + +["test_table07.html"] + +["test_table08.html"] + +["test_table09.html"] + +["test_table10.html"] + +["test_table12.html"] + +["test_table15.html"] + +["test_table17.html"] + +["test_table18.html"] + +["test_table19.html"] + +["test_table20.html"] + +["test_table21.html"] + +["test_table22.html"] + +["test_table23.html"] + +["test_table24.html"] + +["test_table25.html"] + +["test_table26.html"] + +["test_table27.html"] + +["test_table28.html"] + +["test_table29.html"] + +["test_table30.html"] + +["test_table31.html"] + +["test_table32.html"] + +["test_table33.html"] + +["test_table34.html"] + +["test_table35.html"] + +["test_table36.html"] + +["test_table37.html"] + +["test_table38.html"] + +["test_table39.html"] + +["test_table40.html"] + +["test_table41.html"] + +["test_table42.html"] + +["test_table43.html"] + +["test_table44.html"] + +["test_table45.html"] + +["test_table46.html"] + +["test_table47.html"] + +["test_table48.html"] + +["test_table49.html"] + +["test_table50.html"] + +["test_table51.html"] + +["test_table52.html"] + +["test_table53.html"] diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement01.html new file mode 100644 index 0000000000..dc899e3861 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement01

      +

      <test name='HTMLAnchorElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement01</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute is a single character access key to give + access to the form control. + + Retrieve the accessKey attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLAnchorElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"g"' id='accessKeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement02.html new file mode 100644 index 0000000000..9df6310722 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement02

      +

      <test name='HTMLAnchorElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement02</title> +
                <creator>NIST</creator> +
                <description> + The charset attribute indicates the character encoding of the linked + resource. + + Retrieve the charset attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vcharset' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <charset interface='HTMLAnchorElement' obj='testNode' var='vcharset'/>
           <assertEquals actual='vcharset' expected='"US-ASCII"' id='charsetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement03.html new file mode 100644 index 0000000000..8255bd3067 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement03

      +

      <test name='HTMLAnchorElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement03</title> +
                <creator>NIST</creator> +
                <description> + The coords attribute is a comma-seperated list of lengths, defining + an active region geometry. + + Retrieve the coords attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vcoords' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <coords interface='HTMLAnchorElement' obj='testNode' var='vcoords'/>
           <assertEquals actual='vcoords' expected='"0,0,100,100"' id='coordsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement04.html new file mode 100644 index 0000000000..01342aa7af --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement04

      +

      <test name='HTMLAnchorElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement04</title> +
                <creator>NIST</creator> +
                <description> + The href attribute contains the URL of the linked resource. + + Retrieve the href attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vhref' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <href interface='HTMLAnchorElement' obj='testNode' var='vhref'/>
           <assertURIEquals actual='vhref' file='"submit.gif"' id='hrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement05.html new file mode 100644 index 0000000000..679063c4ff --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement05

      +

      <test name='HTMLAnchorElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement05</title> +
                <creator>NIST</creator> +
                <description> + The hreflang attribute contains the language code of the linked resource. + + Retrieve the hreflang attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87358513'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vhreflink' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <hreflang interface='HTMLAnchorElement' obj='testNode' var='vhreflink'/>
           <assertEquals actual='vhreflink' expected='"en"' id='hreflangLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement06.html new file mode 100644 index 0000000000..e28bcbcdd5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement06

      +

      <test name='HTMLAnchorElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement06</title> +
                <creator>NIST</creator> +
                <description> + The name attribute contains the anchor name. + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32783304'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLAnchorElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"Anchor"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement07.html new file mode 100644 index 0000000000..6780083dab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement07

      +

      <test name='HTMLAnchorElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement07</title> +
                <creator>NIST</creator> +
                <description> + The rel attribute contains the forward link type. + + Retrieve the rel attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3815891'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vrel' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rel interface='HTMLAnchorElement' obj='testNode' var='vrel'/>
           <assertEquals actual='vrel' expected='"GLOSSARY"' id='relLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement08.html new file mode 100644 index 0000000000..7a615e662c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement08

      +

      <test name='HTMLAnchorElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement08</title> +
                <creator>NIST</creator> +
                <description> + The rev attribute contains the reverse link type + + Retrieve the rev attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58259771'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vrev' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rev interface='HTMLAnchorElement' obj='testNode' var='vrev'/>
           <assertEquals actual='vrev' expected='"STYLESHEET"' id='revLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement09.html new file mode 100644 index 0000000000..30453216fe --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement09.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement09

      +

      <test name='HTMLAnchorElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement09</title> +
                <creator>NIST</creator> +
                <description> + The shape attribute contains the shape of the active area. + + Retrieve the shape attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vshape' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <shape interface='HTMLAnchorElement' obj='testNode' var='vshape'/>
           <assertEquals actual='vshape' expected='"rect"' id='shapeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement10.html new file mode 100644 index 0000000000..8b377e7da9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement10.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement10

      +

      <test name='HTMLAnchorElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement10</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute contains an index that represents the elements + position in the tabbing order. + + Retrieve the tabIndex attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41586466'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLAnchorElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='22' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement11.html new file mode 100644 index 0000000000..64e54da9b4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement11.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement11

      +

      <test name='HTMLAnchorElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement11</title> +
                <creator>NIST</creator> +
                <description> + The target attribute specifies the frame to render the source in. + + Retrieve the target attribute and examine it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6414197'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtarget' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <target interface='HTMLAnchorElement' obj='testNode' var='vtarget'/>
           <assertEquals actual='vtarget' expected='"dynamic"' id='targetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement12.html new file mode 100644 index 0000000000..cf48f9dc99 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement12.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement12

      +

      <test name='HTMLAnchorElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement12</title> +
                <creator>NIST</creator> +
                <description> + The type attribute contains the advisory content model. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLAnchorElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"image/gif"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement13.html new file mode 100644 index 0000000000..750832dd47 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement13.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement13

      +

      <test name='HTMLAnchorElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement13</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLAnchorElement.blur should surrender input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65068939'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <blur interface='HTMLAnchorElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement14.html new file mode 100644 index 0000000000..7daee66eb2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAnchorElement14.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAnchorElement14

      +

      <test name='HTMLAnchorElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAnchorElement14</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLAnchorElement.focus should capture input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47150313'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='HTMLAnchorElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <focus interface='HTMLAnchorElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement01.html new file mode 100644 index 0000000000..33cb668b00 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement01

      +

      <test name='HTMLAreaElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement01</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute specifies a single character access key to + give access to the control form. + + Retrieve the accessKey attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLAreaElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"a"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement02.html new file mode 100644 index 0000000000..c863149863 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement02

      +

      <test name='HTMLAreaElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement02</title> +
                <creator>NIST</creator> +
                <description> + The alt attribute specifies an alternate text for user agents not + rendering the normal content of this element. + + Retrieve the alt attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39775416'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valt' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <alt interface='HTMLAreaElement' obj='testNode' var='valt'/>
           <assertEquals actual='valt' expected='"Domain"' id='altLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement03.html new file mode 100644 index 0000000000..fcfc102c6c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement03

      +

      <test name='HTMLAreaElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement03</title> +
                <creator>NIST</creator> +
                <description> + The coords attribute specifies a comma-seperated list of lengths, + defining an active region geometry. + + Retrieve the coords attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcoords' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <coords interface='HTMLAreaElement' obj='testNode' var='vcoords'/>
           <assertEquals actual='vcoords' expected='"0,2,45,45"' id='coordsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement04.html new file mode 100644 index 0000000000..fd2f9ed7a4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement04

      +

      <test name='HTMLAreaElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement04</title> +
                <creator>NIST</creator> +
                <description> + The href attribute specifies the URI of the linked resource. + + Retrieve the href attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34672936'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhref' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <href interface='HTMLAreaElement' obj='testNode' var='vhref'/>
           <assertURIEquals actual='vhref' file='"dletter.html"' id='hrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement05.html new file mode 100644 index 0000000000..91f422ba57 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement05

      +

      <test name='HTMLAreaElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement05</title> +
                <creator>NIST</creator> +
                <description> + The noHref attribute specifies that this area is inactive. + + Retrieve the noHref attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnohref' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <noHref interface='HTMLAreaElement' obj='testNode' var='vnohref'/>
           <assertFalse actual='vnohref' id='noHrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement06.html new file mode 100644 index 0000000000..4573ad5e9f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement06

      +

      <test name='HTMLAreaElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement06</title> +
                <creator>NIST</creator> +
                <description> + The shape attribute specifies the shape of the active area. + + Retrieve the shape attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85683271'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vshape' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <shape interface='HTMLAreaElement' obj='testNode' var='vshape'/>
           <assertEquals actual='vshape' expected='"rect"' id='shapeLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement07.html new file mode 100644 index 0000000000..51a20af37d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement07.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement07

      +

      <test name='HTMLAreaElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement07</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute specifies an index that represents the element's + position in the tabbing order. + + Retrieve the tabIndex attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLAreaElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='10' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement08.html new file mode 100644 index 0000000000..34beaca59b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLAreaElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLAreaElement08

      +

      <test name='HTMLAreaElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLAreaElement08</title> +
                <creator>NIST</creator> +
                <description> + The target specifies the frame to render the resource in. + + Retrieve the target attribute and examine it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46054682'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtarget' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='area2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <target interface='HTMLAreaElement' obj='testNode' var='vtarget'/>
           <assertEquals actual='vtarget' expected='"dynamic"' id='targetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBRElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBRElement01.html new file mode 100644 index 0000000000..d214e9c4c3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBRElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBRElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBRElement01

      +

      <test name='HTMLBRElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBRElement01</title> +
                <creator>NIST</creator> +
                <description> + The clear attribute specifies control flow of text around floats. + + Retrieve the clear attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82703081'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclear' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='br' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"br"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <clear interface='HTMLBRElement' obj='testNode' var='vclear'/>
           <assertEquals actual='vclear' expected='"none"' id='clearLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement01.html new file mode 100644 index 0000000000..b5301beb83 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement01

      +

      <test name='HTMLBaseElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBaseElement01</title> +
                <creator>NIST</creator> +
                <description> + The href attribute specifies the base URI. + + Retrieve the href attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65382887'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhref' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='base' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"base"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <href interface='HTMLBaseElement' obj='testNode' var='vhref'/>
           <assertEquals actual='vhref' expected='"about:blank"' id='hrefLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement02.html new file mode 100644 index 0000000000..c271e9565a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBaseElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBaseElement02

      +

      <test name='HTMLBaseElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBaseElement02</title> +
                <creator>NIST</creator> +
                <description> + The target attribute specifies the default target frame. + + Retrieve the target attribute and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73844298'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtarget' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='base2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"base"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <target interface='HTMLBaseElement' obj='testNode' var='vtarget'/>
           <assertEquals actual='vtarget' expected='"Frame1"' id='targetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement01.html new file mode 100644 index 0000000000..3e1fa8e484 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement01

      +

      <test name='HTMLBodyElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement01</title> +
                <creator>NIST</creator> +
                <description> + The aLink attribute specifies the color of active links. + + Retrieve the aLink attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valink' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <aLink interface='HTMLBodyElement' obj='testNode' var='valink'/>
           <assertEquals actual='valink' expected='"#0000ff"' id='aLinkLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement02.html new file mode 100644 index 0000000000..1aaa2e3782 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement02.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement02

      +

      <test name='HTMLBodyElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement02</title> +
                <creator>NIST</creator> +
                <description> + The background attribute specifies the URI fo the background texture + tile image. + + Retrieve the background attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37574810'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbackground' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <background interface='HTMLBodyElement' obj='testNode' var='vbackground'/>
           <assertEquals actual='vbackground' expected='"./pix/back1.gif"' id='backgroundLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement03.html new file mode 100644 index 0000000000..1cb2e6d2ff --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement03

      +

      <test name='HTMLBodyElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement03</title> +
                <creator>NIST</creator> +
                <description> + The bgColor attribute specifies the document background color. + + Retrieve the bgColor attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24940084'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <bgColor interface='HTMLBodyElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#ffff00"' id='bgColorLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement04.html new file mode 100644 index 0000000000..313430d770 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement04

      +

      <test name='HTMLBodyElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement04</title> +
                <creator>NIST</creator> +
                <description> + The link attribute specifies the color of links that are not active + and unvisited. + + Retrieve the link attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7662206'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlink' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <link interface='HTMLBodyElement' obj='testNode' var='vlink'/>
           <assertEquals actual='vlink' expected='"#ff0000"' id='linkLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement05.html new file mode 100644 index 0000000000..b81ef57bc3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement05

      +

      <test name='HTMLBodyElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement05</title> +
                <creator>NIST</creator> +
                <description> + The text attribute specifies the document text color. + + Retrieve the text attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73714763'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtext' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <text interface='HTMLBodyElement' obj='testNode' var='vtext'/>
           <assertEquals actual='vtext' expected='"#000000"' id='textLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement06.html new file mode 100644 index 0000000000..090cf5784c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLBodyElement06.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLBodyElement06

      +

      <test name='HTMLBodyElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLBodyElement06</title> +
                <creator>NIST</creator> +
                <description> + The vLink attribute specifies the color of links that have been + visited by the user. + + Retrieve the vLink attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83224305'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvlink' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vLink interface='HTMLBodyElement' obj='testNode' var='vvlink'/>
           <assertEquals actual='vvlink' expected='"#00ffff"' id='vLinkLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement01.html new file mode 100644 index 0000000000..a2671e0db7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement01.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement01

      +

      <test name='HTMLButtonElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='vform' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLButtonElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form2"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement02.html new file mode 100644 index 0000000000..6a5549ddc2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement02

      +

      <test name='HTMLButtonElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + form. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLButtonElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement03.html new file mode 100644 index 0000000000..51d5ecdb0a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement03

      +

      <test name='HTMLButtonElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement03</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute returns a single character access key to + give access to the form control. + + Retrieve the accessKey attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLButtonElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"f"' id='accessKeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement04.html new file mode 100644 index 0000000000..eb437b66e5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement04

      +

      <test name='HTMLButtonElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement04</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute specifies whether the control is unavailable + in this context. + + Retrieve the disabled attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <disabled interface='HTMLButtonElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement05.html new file mode 100644 index 0000000000..3dda0c1285 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement05

      +

      <test name='HTMLButtonElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement05</title> +
                <creator>NIST</creator> +
                <description> + The name attribute is the form control or object name when submitted + with a form. + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11029910'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLButtonElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"disabledButton"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement06.html new file mode 100644 index 0000000000..a35ce44be9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement06.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement06

      +

      <test name='HTMLButtonElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement06</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute specifies an index that represents the element's + position in the tabbing order. + + Retrieve the tabIndex attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLButtonElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='20' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement07.html new file mode 100644 index 0000000000..121bd16258 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement07

      +

      <test name='HTMLButtonElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement07</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the type of button. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLButtonElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"reset"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement08.html new file mode 100644 index 0000000000..e3e688a6c8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLButtonElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLButtonElement08

      +

      <test name='HTMLButtonElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLButtonElement08</title> +
                <creator>NIST</creator> +
                <description> + The value attribute specifies the current control value. + + Retrieve the value attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLButtonElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"Reset Disabled Button"' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection01.html new file mode 100644 index 0000000000..a9db5018a1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection01.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection01

      +

      <test name='HTMLCollection01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection01</title> +
                <creator>NIST</creator> +
                <description> + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test ordinal index). + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. The item located at ordinal index 0 is further + retrieved and its "rowIndex" attribute is examined. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <item interface='HTMLCollection' obj='rowsnodeList' var='rowNode' index='0'/>
           <rowIndex interface='HTMLTableRowElement' obj='rowNode' var='vrowindex'/>
           <assertEquals actual='vrowindex' expected='0' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection02.html new file mode 100644 index 0000000000..250be450b6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection02.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection02

      +

      <test name='HTMLCollection02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection02</title> +
                <creator>NIST</creator> +
                <description> + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test node name). + + Retrieve the first FORM element and create a HTMLCollection by invoking + the elements attribute. The first SELECT element is further retrieved + using the elements name attribute. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem obj='formsnodeList' var='formNode' name='"select1"'/>
           <nodeName obj='formNode' var='vname'/>
           <assertEquals actual='vname' expected='"SELECT"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection03.html new file mode 100644 index 0000000000..4106a252f9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection03.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection03

      +

      <test name='HTMLCollection03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection03</title> +
                <creator>NIST</creator> +
                <description> + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test id attribute). + + Retrieve the first FORM element and create a HTMLCollection by invoking + the "element" attribute. The first SELECT element is further retrieved + using the elements id. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem obj='formsnodeList' var='formNode' name='"selectId"'/>
           <nodeName obj='formNode' var='vname'/>
           <assertEquals actual='vname' expected='"select"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection04.html new file mode 100644 index 0000000000..1dd77c08d8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection04.html @@ -0,0 +1,158 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04

      +

      <test name='HTMLCollection04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection04</title> +
                <creator>NIST</creator> +
                <description> + HTMLCollections are live, they are automatically updated when the + underlying document is changed. + + Create a HTMLCollection object by invoking the rows attribute of the + first TABLE element and examine its length, then add a new row and + re-examine the length. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowLength1' type='int'/>
           <var name='rowLength2' type='int'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <var name='result' type='List'/>
           <var name='expectedResult' type='List'>
                <member/>
                <member/>
           </var>
           <load var='doc' href='collection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='rowLength1'/>
           <append collection='result' item='rowLength1'/>
           <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='4'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='rowLength2'/>
           <append collection='result' item='rowLength2'/>
           <assertEquals actual='result' expected='expectedResult' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection05.html new file mode 100644 index 0000000000..9e5cbc4d75 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection05.html @@ -0,0 +1,142 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection05

      +

      <test name='HTMLCollection05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection05</title> +
                <creator>NIST</creator> +
                <description> + The length attribute specifies the length or size of the list. + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. Retrieve the length attribute of the HTMLCollection + object. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='rowLength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='rowLength'/>
           <assertEquals actual='rowLength' expected='4' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection06.html new file mode 100644 index 0000000000..065f33a9a4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection06.html @@ -0,0 +1,148 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection06

      +

      <test name='HTMLCollection06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection06</title> +
                <creator>NIST</creator> +
                <description> + An item(index) method retrieves an item specified by ordinal index + (Test for index=0). + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. The item located at ordinal index 0 is further + retrieved and its "rowIndex" attribute is examined. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <item interface='HTMLCollection' obj='rowsnodeList' var='rowNode' index='0'/>
           <rowIndex interface='HTMLTableRowElement' obj='rowNode' var='vrowindex'/>
           <assertEquals actual='vrowindex' expected='0' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection07.html new file mode 100644 index 0000000000..6bf2f46144 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection07.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection07

      +

      <test name='HTMLCollection07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection07</title> +
                <creator>NIST</creator> +
                <description> + An item(index) method retrieves an item specified by ordinal index + (Test for index=3). + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. The item located at ordinal index 3 is further + retrieved and its "rowIndex" attribute is examined. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <item interface='HTMLCollection' obj='rowsnodeList' var='rowNode' index='3'/>
           <rowIndex interface='HTMLTableRowElement' obj='rowNode' var='vrowindex'/>
           <assertEquals actual='vrowindex' expected='3' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection08.html new file mode 100644 index 0000000000..3a808d8246 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection08.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection08

      +

      <test name='HTMLCollection08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection08</title> +
                <creator>NIST</creator> +
                <description> + Nodes in a HTMLCollection object are numbered in tree order. + (Depth-first traversal order). + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. Access the item in the third ordinal index. The + resulting rowIndex attribute is examined and should be two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <item interface='HTMLCollection' obj='rowsnodeList' var='rowNode' index='2'/>
           <rowIndex interface='HTMLTableRowElement' obj='rowNode' var='vrowindex'/>
           <assertEquals actual='vrowindex' expected='2' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection09.html new file mode 100644 index 0000000000..dc68289b4c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection09.html @@ -0,0 +1,142 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection09

      +

      <test name='HTMLCollection09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection09</title> +
                <creator>NIST</creator> +
                <description> + The item(index) method returns null if the index is out of range. + + Retrieve the first TABLE element and create a HTMLCollection by invoking + the "rows" attribute. Invoke the item(index) method with an index + of 5. This index is out of range and should return null. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33262535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <item interface='HTMLCollection' obj='rowsnodeList' var='rowNode' index='5'/>
           <assertNull actual='rowNode' id='rowIndexLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection10.html new file mode 100644 index 0000000000..13f4ea3753 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection10.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection10

      +

      <test name='HTMLCollection10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection10</title> +
                <creator>NIST</creator> +
                <description> + The namedItem(name) method retrieves a node using a name. It first + searches for a node with a matching id attribute. If it doesn't find + one, it then searches for a Node with a matching name attribute, but only + on those elements that are allowed a name attribute. + + Retrieve the first FORM element and create a HTMLCollection by invoking + the elements attribute. The first SELECT element is further retrieved + using the elements name attribute since the id attribute doesn't match. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem obj='formsnodeList' var='formNode' name='"select1"'/>
           <nodeName obj='formNode' var='vname'/>
           <assertEquals actual='vname' expected='"SELECT"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection11.html new file mode 100644 index 0000000000..226c6e35c2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection11.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection11

      +

      <test name='HTMLCollection11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection11</title> +
                <creator>NIST</creator> +
                <description> + The namedItem(name) method retrieves a node using a name. It first + searches for a node with a matching id attribute. If it doesn't find + one, it then searches for a Node with a matching name attribute, but only + on those elements that are allowed a name attribute. + + Retrieve the first FORM element and create a HTMLCollection by invoking + the elements attribute. The first SELECT element is further retrieved + using the elements id attribute. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem obj='formsnodeList' var='formNode' name='"selectId"'/>
           <nodeName obj='formNode' var='vname'/>
           <assertEquals actual='vname' expected='"select"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLCollection12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection12.html new file mode 100644 index 0000000000..f19b0b4a9c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLCollection12.html @@ -0,0 +1,149 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection12

      +

      <test name='HTMLCollection12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLCollection12</title> +
                <creator>NIST</creator> +
                <description> + The namedItem(name) method retrieves a node using a name. It first + searches for a node with a matching id attribute. If it doesn't find + one, it then searches for a Node with a matching name attribute, but only + on those elements that are allowed a name attribute. If there isn't + a matching node the method returns null. + + Retrieve the first FORM element and create a HTMLCollection by invoking + the elements attribute. The method returns null since there is not a + match of the name or id attribute. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-01</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21069976'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='collection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem obj='formsnodeList' var='formNode' name='"select9"'/>
           <assertNull actual='formNode' id='nameIndexLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDirectoryElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDirectoryElement01.html new file mode 100644 index 0000000000..d83de76aff --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDirectoryElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDirectoryElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDirectoryElement01

      +

      <test name='HTMLDirectoryElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDirectoryElement01</title> +
                <creator>NIST</creator> +
                <description> + The compact attribute specifies a boolean value on whether to display + the list more compactly. + + Retrieve the compact attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75317739'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='directory' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dir"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLDirectoryElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDivElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDivElement01.html new file mode 100644 index 0000000000..6e345f6955 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDivElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDivElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDivElement01

      +

      <test name='HTMLDivElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDivElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70908791'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='div' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"div"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLDivElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDlistElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDlistElement01.html new file mode 100644 index 0000000000..3d537a71c1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDlistElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDlistElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDlistElement01

      +

      <test name='HTMLDlistElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDListElement01</title> +
                <creator>NIST</creator> +
                <description> + The compact attribute specifies a boolean value on whether to display + the list more compactly. + + Retrieve the compact attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='dl' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dl"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLDListElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument01.html new file mode 100644 index 0000000000..b5a1e2bbf7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument01.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument01

      +

      <test name='HTMLDocument01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument01</title> +
                <creator>NIST</creator> +
                <description> + The title attribute is the specified title as a string. + + Retrieve the title attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <title interface='HTMLDocument' obj='doc' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NIST DOM HTML Test - DOCUMENT"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument02.html new file mode 100644 index 0000000000..274877d02c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument02.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument02

      +

      <test name='HTMLDocument02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument02</title> +
                <creator>NIST</creator> +
                <description> + The referrer attribute returns the URI of the page that linked to this + page. + + Retrieve the referrer attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95229140'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vreferrer' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <referrer interface='HTMLDocument' obj='doc' var='vreferrer'/>
           <assertEquals actual='vreferrer' expected='""' id='referrerLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument03.html new file mode 100644 index 0000000000..b3036dfff2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument03.html @@ -0,0 +1,134 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument03

      +

      <test name='HTMLDocument03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument03</title> +
                <creator>NIST</creator> +
                <description> + The domain attribute specifies the domain name of the server that served + the document, or null if the server cannot be identified by a domain name. + + Retrieve the domain attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2250147'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdomain' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <domain interface='HTMLDocument' obj='doc' var='vdomain'/>
           <assertEquals actual='vdomain' expected='""' id='domainLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument04.html new file mode 100644 index 0000000000..ea6cd77bd0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument04.html @@ -0,0 +1,132 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument04

      +

      <test name='HTMLDocument04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument04</title> +
                <creator>NIST</creator> +
                <description> + The URL attribute specifies the absolute URI of the document. + + Retrieve the URL attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46183437'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vurl' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <URL interface='HTMLDocument' obj='doc' var='vurl'/>
           <assertURIEquals actual='vurl' name='"document"' id='URLLink' isAbsolute='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument05.html new file mode 100644 index 0000000000..942c8c914f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument05

      +

      <test name='HTMLDocument05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument05</title> +
                <creator>NIST</creator> +
                <description> + The body attribute is the element that contains the content for the + document. + + Retrieve the body attribute and examine its value for the id attribute. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56360201'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbody' type='HTMLElement'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <body interface='HTMLDocument' obj='doc' var='vbody'/>
           <id interface='HTMLElement' obj='vbody' var='vid'/>
           <assertEquals actual='vid' expected='"TEST-BODY"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument07.html new file mode 100644 index 0000000000..82f8a6cae3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument07

      +

      <test name='HTMLDocument07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument07</title> +
                <creator>NIST</creator> +
                <description> + The images attribute returns a collection of all IMG elements in a document. + + Retrieve the images attribute from the document and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-04-30</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90379117'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vimages' type='HTMLCollection'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <images interface='HTMLDocument' obj='doc' var='vimages'/>
           <length interface='HTMLCollection' obj='vimages' var='vlength'/>
           <assertEquals actual='vlength' expected='1' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument09.html new file mode 100644 index 0000000000..bab6a50f0a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument09

      +

      <test name='HTMLDocument09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument09</title> +
                <creator>NIST</creator> +
                <description> + The links attribute returns a collection of all AREA and A elements + in a document with a value for the href attribute. + + Retrieve the links attribute from the document and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-04-30</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7068919'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlinks' type='HTMLCollection'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <links interface='HTMLDocument' obj='doc' var='vlinks'/>
           <length interface='HTMLCollection' obj='vlinks' var='vlength'/>
           <assertEquals actual='vlength' expected='3' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument10.html new file mode 100644 index 0000000000..c9b128b99e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument10.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument10

      +

      <test name='HTMLDocument10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument10</title> +
                <creator>NIST</creator> +
                <description> + The forms attribute returns a collection of all the forms in a document. + + Retrieve the forms attribute from the document and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-04-30</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1689064'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vforms' type='HTMLCollection'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <forms interface='HTMLDocument' obj='doc' var='vforms'/>
           <length interface='HTMLCollection' obj='vforms' var='vlength'/>
           <assertEquals actual='vlength' expected='1' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument11.html new file mode 100644 index 0000000000..58dee1d5d9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument11.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument11

      +

      <test name='HTMLDocument11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument11</title> +
                <creator>NIST</creator> +
                <description> + The anchors attribute returns a collection of all A elements with values + for the name attribute. + + Retrieve the anchors attribute from the document and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-04-30</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7577272'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vanchors' type='HTMLCollection'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <anchors interface='HTMLDocument' obj='doc' var='vanchors'/>
           <length interface='HTMLCollection' obj='vanchors' var='vlength'/>
           <assertEquals actual='vlength' expected='1' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument12.html new file mode 100644 index 0000000000..0788ec7b3f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument12.html @@ -0,0 +1,137 @@ + + + + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument12

      +

      <test name='HTMLDocument12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument02</title> +
                <creator>NIST</creator> +
                <description> + The cookie attribute returns the cookies associated with this document. + + Retrieve the cookie attribute and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-04-30</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8747038'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='vcookie' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <cookie interface='HTMLDocument' obj='doc' var='vcookie'/>
           <assertEquals actual='vcookie' expected='""' id='cookieLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument13.html new file mode 100644 index 0000000000..5ccb3fdd41 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument13.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument13

      +

      <test name='HTMLDocument13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument13</title> +
                <creator>NIST</creator> +
                <description> + The getElementsByName method returns the (possibly empty) collection + of elements whose name value is given by the elementName. + + Retrieve all the elements whose name attribute is "mapid". + Check the length of the nodelist. It should be 1. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <getElementsByName interface='HTMLDocument' var='nodeList' obj='doc' elementName='"mapid"' id='getElementsNameId'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument14.html new file mode 100644 index 0000000000..a0e0080cdc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument14.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument14

      +

      <test name='HTMLDocument14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument14</title> +
                <creator>NIST</creator> +
                <description> + The getElementsByName method returns the (possibly empty) collection + of elements whose name value is given by the elementName. + + Retrieve all the elements whose name attribute is "noid". + Check the length of the nodelist. It should be 0 since + the id "noid" does not exist. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71555259'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <getElementsByName interface='HTMLDocument' var='nodeList' obj='doc' elementName='"noid"' id='getElementsNameId'/>
           <assertSize collection='nodeList' size='0' id='Asize'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument15.html new file mode 100644 index 0000000000..b5e8940dd6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument15.html @@ -0,0 +1,142 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument15

      +

      <test name='HTMLDocument15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument15</title> +
                <creator>NIST</creator> +
                <description> + The getElementById method returns the Element whose id is given by + elementId. If no such element exists, returns null. + + Retrieve the element whose id is "mapid". + Check the value of the element. + +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId'/> +
      </metadata>
           <var name='elementNode' type='Element'/>
           <var name='elementValue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <getElementById var='elementNode' obj='doc' elementId='"mapid"' id='getElementsId'/>
           <nodeName obj='elementNode' var='elementValue'/>
           <assertEquals actual='elementValue' expected='"map"' id='elementId' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument16.html new file mode 100644 index 0000000000..98946ccd49 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument16.html @@ -0,0 +1,142 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument16

      +

      <test name='HTMLDocument16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument16</title> +
                <creator>NIST</creator> +
                <description> + The getElementById method returns the Element whose id is given by + elementId. If no such element exists, returns null. + + Retrieve the element whose id is "noid". + The value returned should be null since there are not any elements with + an id of "noid". + +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36113835'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-26809268'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBId'/> +
      </metadata>
           <var name='elementNode' type='Element'/>
           <var name='elementValue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='false'/>
           <getElementById var='elementNode' obj='doc' elementId='"noid"' id='getElementsId'/>
           <assertNull actual='elementNode' id='elementId'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument17.html new file mode 100644 index 0000000000..e922831ad4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument17.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument17

      +

      <test name='HTMLDocument17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument17</title> +
                <creator>Curt Arnold</creator> +
                <description> +Clears the current document using HTMLDocument.open immediately followed by close. +</description> +
                <date qualifier='created'>2002-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='bodyElem' type='Element'/>
           <var name='bodyChild' type='Node'/>
           <load var='doc' href='document' willBeModified='true'/>
           <open obj='doc'/>
           <close obj='doc'/>
           <body var='bodyElem' obj='doc'/>
           <if>
                <notNull obj='bodyElem'/>
                <firstChild interface='Node' var='bodyChild' obj='bodyElem'/>
                <assertNull actual='bodyChild' id='bodyContainsChildren'/>
           </if>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument18.html new file mode 100644 index 0000000000..737f79ad8a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument18.html @@ -0,0 +1,123 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument18

      +

      <test name='HTMLDocument18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument18</title> +
                <creator>Curt Arnold</creator> +
                <description> +Calls HTMLDocument.close on a document that has not been opened for modification. +</description> +
                <date qualifier='created'>2002-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <load var='doc' href='document' willBeModified='true'/>
           <close obj='doc'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument19.html new file mode 100644 index 0000000000..c7a67609db --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument19.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument19

      +

      <test name='HTMLDocument19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument19</title> +
                <creator>Curt Arnold</creator> +
                <description> +Replaces the current document with a valid HTML document using HTMLDocument.open, write and close. +</description> +
                <date qualifier='created'>2002-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='docElem' type='Element'/>
           <var name='title' type='DOMString'/>
           <load var='doc' href='document' willBeModified='true'/>
           <open obj='doc'/>
           <if>
                <contentType type='text/html'/>
                <write obj='doc' text='"<html>"'/>
                <else>
                     <write obj='doc' text='"<html xmlns='http://www.w3.org/1999/xhtml'>"'/>
                </else>
           </if>
           <write obj='doc' text='"<body>"'/>
           <write obj='doc' text='"<title>Replacement</title>"'/>
           <write obj='doc' text='"</body>"'/>
           <write obj='doc' text='"<p>"'/>
           <write obj='doc' text='"Hello, World."'/>
           <write obj='doc' text='"</p>"'/>
           <write obj='doc' text='"</body>"'/>
           <write obj='doc' text='"</html>"'/>
           <close obj='doc'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument20.html new file mode 100644 index 0000000000..81dbb8a10f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument20.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument20

      +

      <test name='HTMLDocument20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument20</title> +
                <creator>Curt Arnold</creator> +
                <description> +Replaces the current document with a valid HTML document using HTMLDocument.open, writeln and close. +</description> +
                <date qualifier='created'>2002-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='docElem' type='Element'/>
           <var name='title' type='DOMString'/>
           <load var='doc' href='document' willBeModified='true'/>
           <open obj='doc'/>
           <if>
                <contentType type='text/html'/>
                <writeln obj='doc' text='"<html>"'/>
                <else>
                     <writeln obj='doc' text='"<html xmlns='http://www.w3.org/1999/xhtml'>"'/>
                </else>
           </if>
           <writeln obj='doc' text='"<body>"'/>
           <writeln obj='doc' text='"<title>Replacement</title>"'/>
           <writeln obj='doc' text='"</body>"'/>
           <writeln obj='doc' text='"<p>"'/>
           <writeln obj='doc' text='"Hello, World."'/>
           <writeln obj='doc' text='"</p>"'/>
           <writeln obj='doc' text='"</body>"'/>
           <writeln obj='doc' text='"</html>"'/>
           <close obj='doc'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLDocument21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument21.html new file mode 100644 index 0000000000..cd6d9a5a7b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLDocument21.html @@ -0,0 +1,162 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLDocument21

      +

      <test name='HTMLDocument21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLDocument21</title> +
                <creator>Curt Arnold</creator> +
                <description> +Replaces the current document checks that writeln adds a new line. +</description> +
                <date qualifier='created'>2002-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72161170'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98948567'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75233634'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35318390'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='docElem' type='Element'/>
           <var name='preElems' type='NodeList'/>
           <var name='preElem' type='Element'/>
           <var name='preText' type='Text'/>
           <var name='preValue' type='DOMString'/>
           <load var='doc' href='document' willBeModified='true'/>
           <open obj='doc'/>
           <if>
                <contentType type='text/html'/>
                <writeln obj='doc' text='"<html>"'/>
                <else>
                     <writeln obj='doc' text='"<html xmlns='http://www.w3.org/1999/xhtml'>"'/>
                </else>
           </if>
           <writeln obj='doc' text='"<body>"'/>
           <writeln obj='doc' text='"<title>Replacement</title>"'/>
           <writeln obj='doc' text='"</body>"'/>
           <write obj='doc' text='"<pre>"'/>
           <writeln obj='doc' text='"Hello, World."'/>
           <writeln obj='doc' text='"Hello, World."'/>
           <writeln obj='doc' text='"</pre>"'/>
           <write obj='doc' text='"<pre>"'/>
           <write obj='doc' text='"Hello, World."'/>
           <write obj='doc' text='"Hello, World."'/>
           <writeln obj='doc' text='"</pre>"'/>
           <writeln obj='doc' text='"</body>"'/>
           <writeln obj='doc' text='"</html>"'/>
           <close obj='doc'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement01.html new file mode 100644 index 0000000000..33f5659ea2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement01

      +

      <test name='HTMLElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement01</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the HEAD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-HEAD"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement02.html new file mode 100644 index 0000000000..b3e0d001d3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement02

      +

      <test name='HTMLElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement02</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the SUB element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sub"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-SUB"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement03.html new file mode 100644 index 0000000000..154524f9da --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement03

      +

      <test name='HTMLElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement03</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the SUP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-SUP"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement04.html new file mode 100644 index 0000000000..99c4255625 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement04

      +

      <test name='HTMLElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement04</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the SPAN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"span"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-SPAN"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement05.html new file mode 100644 index 0000000000..5365551c11 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement05

      +

      <test name='HTMLElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement05</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the BDO element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"bdo"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-BDO"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement06.html new file mode 100644 index 0000000000..c4390b512b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement06

      +

      <test name='HTMLElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement06</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the TT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-TT"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement07.html new file mode 100644 index 0000000000..7ccf12b5e7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement07

      +

      <test name='HTMLElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement07</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the I element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"i"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-I"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement08.html new file mode 100644 index 0000000000..8738e2cdf2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement08

      +

      <test name='HTMLElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement08</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the B element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"b"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-B"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement09.html new file mode 100644 index 0000000000..42ed5bd096 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement09.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement09

      +

      <test name='HTMLElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement09</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the U element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"u"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-U"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement10.html new file mode 100644 index 0000000000..dee669c99d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement10.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement10

      +

      <test name='HTMLElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement10</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the S element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"s"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-S"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement100.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement100.html new file mode 100644 index 0000000000..b8ca6a8daa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement100.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement100 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement100

      +

      <test name='HTMLElement100' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement100</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the SMALL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"small"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement101.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement101.html new file mode 100644 index 0000000000..8162c4ce0d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement101.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement101 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement101

      +

      <test name='HTMLElement101' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement101</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the EM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"em"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement102.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement102.html new file mode 100644 index 0000000000..9a987c9455 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement102.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement102 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement102

      +

      <test name='HTMLElement102' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement102</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the STRONG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strong"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement103.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement103.html new file mode 100644 index 0000000000..d1aa2e053c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement103.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement103 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement103

      +

      <test name='HTMLElement103' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement103</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the DFN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dfn"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement104.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement104.html new file mode 100644 index 0000000000..2aa66e4d34 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement104.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement104 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement104

      +

      <test name='HTMLElement104' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement104</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the CODE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"code"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement105.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement105.html new file mode 100644 index 0000000000..a7fd6bcb0a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement105.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement105 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement105

      +

      <test name='HTMLElement105' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement105</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the SAMP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"samp"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement106.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement106.html new file mode 100644 index 0000000000..93cc16acdf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement106.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement106 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement106

      +

      <test name='HTMLElement106' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement106</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the KBD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"kbd"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement107.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement107.html new file mode 100644 index 0000000000..1de43c43dc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement107.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement107 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement107

      +

      <test name='HTMLElement107' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement107</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the VAR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"var"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement108.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement108.html new file mode 100644 index 0000000000..34549391e1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement108.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement108 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement108

      +

      <test name='HTMLElement108' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement108</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the CITE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"cite"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement109.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement109.html new file mode 100644 index 0000000000..9173777d56 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement109.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement109 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement109

      +

      <test name='HTMLElement109' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement109</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the ACRONYM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"acronym"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement11.html new file mode 100644 index 0000000000..cc7bb65547 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement11.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement11

      +

      <test name='HTMLElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement11</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the STRIKE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strike"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-STRIKE"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement110.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement110.html new file mode 100644 index 0000000000..8acf8ce736 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement110.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement110 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement110

      +

      <test name='HTMLElement110' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement110</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the ABBR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"abbr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement111.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement111.html new file mode 100644 index 0000000000..8a4105f4cd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement111.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement111 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement111

      +

      <test name='HTMLElement111' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement111</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the DD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dd"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement112.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement112.html new file mode 100644 index 0000000000..091c72bdf3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement112.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement112 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement112

      +

      <test name='HTMLElement112' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement112</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the DT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement113.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement113.html new file mode 100644 index 0000000000..ab360118a8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement113.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement113 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement113

      +

      <test name='HTMLElement113' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement113</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the NOFRAMES element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noframes"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement114.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement114.html new file mode 100644 index 0000000000..7dc20c8941 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement114.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement114 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement114

      +

      <test name='HTMLElement114' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement114</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the NOSCRIPT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noscript"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement115.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement115.html new file mode 100644 index 0000000000..8e56fd081a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement115.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement115 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement115

      +

      <test name='HTMLElement115' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement115</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the ADDRESS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"address"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement116.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement116.html new file mode 100644 index 0000000000..68961a6071 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement116.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement116 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement116

      +

      <test name='HTMLElement116' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement116</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the CENTER element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"center"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement117.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement117.html new file mode 100644 index 0000000000..69d1299219 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement117.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement117 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement117

      +

      <test name='HTMLElement117' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement117</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the HEAD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"HEAD-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement118.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement118.html new file mode 100644 index 0000000000..d386dd4051 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement118.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement118 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement118

      +

      <test name='HTMLElement118' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement118</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the SUB element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sub"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"SUB-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement119.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement119.html new file mode 100644 index 0000000000..426000c4c7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement119.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement119 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement119

      +

      <test name='HTMLElement119' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement119</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the SUP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"SUP-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement12.html new file mode 100644 index 0000000000..b71fbb4414 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement12.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement12

      +

      <test name='HTMLElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement12</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the BIG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"big"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-BIG"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement120.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement120.html new file mode 100644 index 0000000000..d947b07426 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement120.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement120 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement120

      +

      <test name='HTMLElement120' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement120</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the SPAN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"span"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"SPAN-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement121.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement121.html new file mode 100644 index 0000000000..b4beea87cd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement121.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement121 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement121

      +

      <test name='HTMLElement121' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement121</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the BDO element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"bdo"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"BDO-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement122.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement122.html new file mode 100644 index 0000000000..e5da51a91c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement122.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement122 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement122

      +

      <test name='HTMLElement122' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement122</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the TT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"TT-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement123.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement123.html new file mode 100644 index 0000000000..e2bec40d6f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement123.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement123 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement123

      +

      <test name='HTMLElement123' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement123</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the I element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"i"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"I-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement124.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement124.html new file mode 100644 index 0000000000..03d51cb312 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement124.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement124 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement124

      +

      <test name='HTMLElement124' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement124</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the B element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"b"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"B-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement125.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement125.html new file mode 100644 index 0000000000..7ca302486a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement125.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement125 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement125

      +

      <test name='HTMLElement125' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement125</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the U element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"u"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"U-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement126.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement126.html new file mode 100644 index 0000000000..512100c986 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement126.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement126 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement126

      +

      <test name='HTMLElement126' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement126</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the S element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"s"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"S-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement127.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement127.html new file mode 100644 index 0000000000..ce9589a053 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement127.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement127 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement127

      +

      <test name='HTMLElement127' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement127</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the STRIKE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strike"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"STRIKE-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement128.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement128.html new file mode 100644 index 0000000000..93a8c76b48 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement128.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement128 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement128

      +

      <test name='HTMLElement128' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement128</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the BIG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"big"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"BIG-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement129.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement129.html new file mode 100644 index 0000000000..f0ff2117dc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement129.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement129 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement129

      +

      <test name='HTMLElement129' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement129</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the SMALL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"small"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"SMALL-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement13.html new file mode 100644 index 0000000000..166b0fe143 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement13.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement13

      +

      <test name='HTMLElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement13</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the SMALL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"small"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-SMALL"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement130.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement130.html new file mode 100644 index 0000000000..4aefeef5d6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement130.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement130 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement130

      +

      <test name='HTMLElement130' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement130</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the EM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"em"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"EM-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement131.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement131.html new file mode 100644 index 0000000000..26c779f804 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement131.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement131 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement131

      +

      <test name='HTMLElement131' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement131</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the STRONG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strong"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"STRONG-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement132.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement132.html new file mode 100644 index 0000000000..53d4e6a436 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement132.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement132 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement132

      +

      <test name='HTMLElement132' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement132</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the DFN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dfn"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"DFN-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement133.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement133.html new file mode 100644 index 0000000000..27cd339f0a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement133.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement133 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement133

      +

      <test name='HTMLElement133' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement133</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the CODE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"code"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"CODE-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement134.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement134.html new file mode 100644 index 0000000000..d64f1fd210 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement134.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement134 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement134

      +

      <test name='HTMLElement134' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement134</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the SAMP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"samp"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"SAMP-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement135.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement135.html new file mode 100644 index 0000000000..b0377bcd21 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement135.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement135 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement135

      +

      <test name='HTMLElement135' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement135</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the KBD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"kbd"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"KBD-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement136.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement136.html new file mode 100644 index 0000000000..7d35fe2685 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement136.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement136 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement136

      +

      <test name='HTMLElement136' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement136</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the VAR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"var"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"VAR-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement137.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement137.html new file mode 100644 index 0000000000..52fcc7b508 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement137.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement137 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement137

      +

      <test name='HTMLElement137' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement137</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the CITE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"cite"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"CITE-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement138.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement138.html new file mode 100644 index 0000000000..a634219242 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement138.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement138 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement138

      +

      <test name='HTMLElement138' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement138</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the ACRONYM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"acronym"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"ACRONYM-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement139.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement139.html new file mode 100644 index 0000000000..db97835538 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement139.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement139 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement139

      +

      <test name='HTMLElement139' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement139</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the ABBR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"abbr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"ABBR-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement14.html new file mode 100644 index 0000000000..9986bfef1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement14.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement14

      +

      <test name='HTMLElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement14</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the EM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"em"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-EM"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement140.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement140.html new file mode 100644 index 0000000000..0a66a41e0c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement140.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement140 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement140

      +

      <test name='HTMLElement140' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement140</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the DD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dd"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"DD-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement141.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement141.html new file mode 100644 index 0000000000..c960b5fd7e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement141.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement141 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement141

      +

      <test name='HTMLElement141' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement141</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the DT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"DT-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement142.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement142.html new file mode 100644 index 0000000000..aaf0545103 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement142.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement142 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement142

      +

      <test name='HTMLElement142' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement142</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the NOFRAMES element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noframes"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"NOFRAMES-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement143.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement143.html new file mode 100644 index 0000000000..561c26d161 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement143.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement143 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement143

      +

      <test name='HTMLElement143' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement143</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the NOSCRIPT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noscript"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"NOSCRIPT-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement144.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement144.html new file mode 100644 index 0000000000..578ebe20b6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement144.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement144 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement144

      +

      <test name='HTMLElement144' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement144</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the ADDRESS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"address"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"ADDRESS-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement145.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement145.html new file mode 100644 index 0000000000..6df3fd8a89 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement145.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement145 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement145

      +

      <test name='HTMLElement145' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement145</title> +
                <creator>NIST</creator> +
                <description> + The className attribute specifies the class attribute of the element. + + Retrieve the class attribute of the CENTER element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95362176'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vclassname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"center"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <className interface='HTMLElement' obj='testNode' var='vclassname'/>
           <assertEquals actual='vclassname' expected='"CENTER-class"' id='classNameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement15.html new file mode 100644 index 0000000000..3970167dc1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement15.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement15

      +

      <test name='HTMLElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement15</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the STRONG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strong"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-STRONG"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement16.html new file mode 100644 index 0000000000..9599f1d74f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement16.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement16

      +

      <test name='HTMLElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement16</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the DFN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dfn"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-DFN"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement17.html new file mode 100644 index 0000000000..7d90786de6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement17.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement17

      +

      <test name='HTMLElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement17</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the CODE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"code"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-CODE"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement18.html new file mode 100644 index 0000000000..b3a41f9f08 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement18.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement18

      +

      <test name='HTMLElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement18</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the SAMP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"samp"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-SAMP"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement19.html new file mode 100644 index 0000000000..0500241bca --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement19.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement19

      +

      <test name='HTMLElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement19</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the KBD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"kbd"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-KBD"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement20.html new file mode 100644 index 0000000000..0a4a135580 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement20.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement20

      +

      <test name='HTMLElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement20</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the VAR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"var"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-VAR"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement21.html new file mode 100644 index 0000000000..2eeafa7472 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement21.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement21

      +

      <test name='HTMLElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement21</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the CITE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"cite"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-CITE"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement22.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement22.html new file mode 100644 index 0000000000..cdc2f0019b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement22.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement22

      +

      <test name='HTMLElement22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement22</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the ACRONYM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"acronym"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-ACRONYM"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement23.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement23.html new file mode 100644 index 0000000000..3d204d201b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement23.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement23 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement23

      +

      <test name='HTMLElement23' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement23</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the ABBR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"abbr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-ABBR"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement24.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement24.html new file mode 100644 index 0000000000..35f95826f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement24.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement24 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement24

      +

      <test name='HTMLElement24' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement24</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the DD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dd"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-DD"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement25.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement25.html new file mode 100644 index 0000000000..80e3cca658 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement25.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement25 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement25

      +

      <test name='HTMLElement25' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement25</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the DT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-DT"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement26.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement26.html new file mode 100644 index 0000000000..d76b252f66 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement26.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement26 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement26

      +

      <test name='HTMLElement26' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement26</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the NOFRAMES element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noframes"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-NOFRAMES"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement27.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement27.html new file mode 100644 index 0000000000..bc78722b68 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement27.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement27 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement27

      +

      <test name='HTMLElement27' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement27</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the NOSCRIPT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noscript"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-NOSCRIPT"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement28.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement28.html new file mode 100644 index 0000000000..99ff340b42 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement28.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement28 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement28

      +

      <test name='HTMLElement28' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement28</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the ADDRESS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"address"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-ADDRESS"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement29.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement29.html new file mode 100644 index 0000000000..05ac44dde3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement29.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement29 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement29

      +

      <test name='HTMLElement29' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement29</title> +
                <creator>NIST</creator> +
                <description> + The id specifies the elements identifier. + + Retrieve the id attribute of the CENTER element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vid' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"center"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id interface='HTMLElement' obj='testNode' var='vid'/>
           <assertEquals actual='vid' expected='"Test-CENTER"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement30.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement30.html new file mode 100644 index 0000000000..f6d34d3c95 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement30.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement30 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement30

      +

      <test name='HTMLElement30' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement30</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the HEAD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"HEAD Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement31.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement31.html new file mode 100644 index 0000000000..545c044e00 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement31.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement31 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement31

      +

      <test name='HTMLElement31' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement31</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the SUB element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sub"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"SUB Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement32.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement32.html new file mode 100644 index 0000000000..77ba145d9b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement32.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement32 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement32

      +

      <test name='HTMLElement32' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement32</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the SUP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"SUP Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement33.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement33.html new file mode 100644 index 0000000000..92b86a42af --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement33.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement33 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement33

      +

      <test name='HTMLElement33' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement33</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the SPAN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"span"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"SPAN Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement34.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement34.html new file mode 100644 index 0000000000..eecbf1d458 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement34.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement34 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement34

      +

      <test name='HTMLElement34' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement34</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the BDO element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"bdo"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"BDO Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement35.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement35.html new file mode 100644 index 0000000000..e396a94428 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement35.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement35 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement35

      +

      <test name='HTMLElement35' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement35</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the TT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"TT Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement36.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement36.html new file mode 100644 index 0000000000..03c536929b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement36.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement36 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement36

      +

      <test name='HTMLElement36' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement36</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the I element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"i"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"I Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement37.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement37.html new file mode 100644 index 0000000000..9d3c38af1d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement37.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement37 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement37

      +

      <test name='HTMLElement37' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement37</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the B element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"b"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"B Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement38.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement38.html new file mode 100644 index 0000000000..3475291755 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement38.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement38 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement38

      +

      <test name='HTMLElement38' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement38</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the U element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"u"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"U Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement39.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement39.html new file mode 100644 index 0000000000..d1077d2f01 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement39.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement39 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement39

      +

      <test name='HTMLElement39' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement39</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the S element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"s"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"S Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement40.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement40.html new file mode 100644 index 0000000000..59068fce67 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement40.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement40 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement40

      +

      <test name='HTMLElement40' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement40</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the STRIKE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strike"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"STRIKE Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement41.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement41.html new file mode 100644 index 0000000000..7585e950fa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement41.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement41 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement41

      +

      <test name='HTMLElement41' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement41</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the BIG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"big"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"BIG Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement42.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement42.html new file mode 100644 index 0000000000..329d1cd5f2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement42.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement42 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement42

      +

      <test name='HTMLElement42' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement42</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the SMALL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"small"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"SMALL Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement43.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement43.html new file mode 100644 index 0000000000..a4ca5977c4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement43.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement43 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement43

      +

      <test name='HTMLElement43' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement43</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the EM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"em"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"EM Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement44.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement44.html new file mode 100644 index 0000000000..56f5e9cbf6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement44.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement44 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement44

      +

      <test name='HTMLElement44' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement44</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the STRONG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strong"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"STRONG Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement45.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement45.html new file mode 100644 index 0000000000..c0457ff67b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement45.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement45 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement45

      +

      <test name='HTMLElement45' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement45</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the DFN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dfn"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"DFN Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement46.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement46.html new file mode 100644 index 0000000000..ebfb593d13 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement46.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement46 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement46

      +

      <test name='HTMLElement46' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement46</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the CODE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"code"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"CODE Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement47.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement47.html new file mode 100644 index 0000000000..7d01dfb3f2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement47.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement47 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement47

      +

      <test name='HTMLElement47' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement47</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the SAMP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"samp"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"SAMP Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement48.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement48.html new file mode 100644 index 0000000000..bf2535a366 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement48.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement48 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement48

      +

      <test name='HTMLElement48' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement48</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the KBD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"kbd"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"KBD Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement49.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement49.html new file mode 100644 index 0000000000..6fa0e76e02 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement49.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement49 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement49

      +

      <test name='HTMLElement49' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement49</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the VAR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"var"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"VAR Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement50.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement50.html new file mode 100644 index 0000000000..dbea976bec --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement50.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement50 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement50

      +

      <test name='HTMLElement50' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement50</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the CITE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"cite"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"CITE Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement51.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement51.html new file mode 100644 index 0000000000..9d48ce5d04 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement51.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement51 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement51

      +

      <test name='HTMLElement51' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement51</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the ACRONYM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"acronym"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"ACRONYM Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement52.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement52.html new file mode 100644 index 0000000000..c76b615a16 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement52.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement52 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement52

      +

      <test name='HTMLElement52' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement52</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the ABBR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"abbr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"ABBR Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement53.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement53.html new file mode 100644 index 0000000000..92d168a89f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement53.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement53 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement53

      +

      <test name='HTMLElement53' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement53</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the DD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dd"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"DD Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement54.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement54.html new file mode 100644 index 0000000000..2916e0187c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement54.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement54 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement54

      +

      <test name='HTMLElement54' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement54</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the DT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"DT Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement55.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement55.html new file mode 100644 index 0000000000..532e13f69f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement55.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement55 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement55

      +

      <test name='HTMLElement55' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement55</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the NOFRAMES element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noframes"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NOFRAMES Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement56.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement56.html new file mode 100644 index 0000000000..f839b6bf1b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement56.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement56 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement56

      +

      <test name='HTMLElement56' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement56</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the NOSCRIPT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noscript"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NOSCRIPT Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement57.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement57.html new file mode 100644 index 0000000000..e075ab5f2a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement57.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement57 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement57

      +

      <test name='HTMLElement57' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement57</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the ADDRESS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"address"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"ADDRESS Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement58.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement58.html new file mode 100644 index 0000000000..cc793c9a1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement58.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement58 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement58

      +

      <test name='HTMLElement58' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement58</title> +
                <creator>NIST</creator> +
                <description> + The title attribute specifies the elements advisory title. + + Retrieve the title attribute of the CENTER element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78276800'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"center"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <title interface='HTMLElement' obj='testNode' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"CENTER Element"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement59.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement59.html new file mode 100644 index 0000000000..61a12495aa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement59.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement59 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement59

      +

      <test name='HTMLElement59' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement59</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the HEAD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement60.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement60.html new file mode 100644 index 0000000000..ec9fa2e8ce --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement60.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement60 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement60

      +

      <test name='HTMLElement60' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement60</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the SUB element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sub"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement61.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement61.html new file mode 100644 index 0000000000..5960690bb8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement61.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement61 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement61

      +

      <test name='HTMLElement61' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement61</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the SUP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement62.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement62.html new file mode 100644 index 0000000000..43f4d603ab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement62.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement62 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement62

      +

      <test name='HTMLElement62' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement62</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the SPAN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"span"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement63.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement63.html new file mode 100644 index 0000000000..619ac4cba5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement63.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement63 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement63

      +

      <test name='HTMLElement63' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement63</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the BDO element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"bdo"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement64.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement64.html new file mode 100644 index 0000000000..36af3dc1af --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement64.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement64 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement64

      +

      <test name='HTMLElement64' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement64</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the TT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement65.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement65.html new file mode 100644 index 0000000000..2b885c7b31 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement65.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement65 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement65

      +

      <test name='HTMLElement65' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement65</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the I element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"i"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement66.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement66.html new file mode 100644 index 0000000000..9fe2113f1d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement66.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement66 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement66

      +

      <test name='HTMLElement66' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement66</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the B element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"b"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement67.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement67.html new file mode 100644 index 0000000000..9da62642c0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement67.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement67 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement67

      +

      <test name='HTMLElement67' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement67</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the U element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"u"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement68.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement68.html new file mode 100644 index 0000000000..1ba4fdeea6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement68.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement68 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement68

      +

      <test name='HTMLElement68' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement68</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the S element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"s"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement69.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement69.html new file mode 100644 index 0000000000..3eec8ec8ab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement69.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement69 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement69

      +

      <test name='HTMLElement69' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement69</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the STRIKE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strike"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement70.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement70.html new file mode 100644 index 0000000000..8247d2fc63 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement70.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement70 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement70

      +

      <test name='HTMLElement70' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement70</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the BIG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"big"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement71.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement71.html new file mode 100644 index 0000000000..3faa251eae --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement71.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement71 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement71

      +

      <test name='HTMLElement71' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement71</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the SMALL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"small"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement72.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement72.html new file mode 100644 index 0000000000..ae85358b29 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement72.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement72 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement72

      +

      <test name='HTMLElement72' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement72</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the EM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"em"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement73.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement73.html new file mode 100644 index 0000000000..8f0334f13f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement73.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement73 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement73

      +

      <test name='HTMLElement73' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement73</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the STRONG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strong"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement74.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement74.html new file mode 100644 index 0000000000..be11da8aaa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement74.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement74 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement74

      +

      <test name='HTMLElement74' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement74</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the DFN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dfn"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement75.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement75.html new file mode 100644 index 0000000000..7f351ac550 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement75.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement75 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement75

      +

      <test name='HTMLElement75' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement75</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the CODE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"code"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement76.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement76.html new file mode 100644 index 0000000000..3e821ac7f9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement76.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement76 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement76

      +

      <test name='HTMLElement76' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement76</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the SAMP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"samp"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement77.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement77.html new file mode 100644 index 0000000000..b5fff09002 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement77.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement77 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement77

      +

      <test name='HTMLElement77' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement77</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the KBD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"kbd"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement78.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement78.html new file mode 100644 index 0000000000..dae8008331 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement78.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement78 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement78

      +

      <test name='HTMLElement78' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement78</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the VAR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"var"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement79.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement79.html new file mode 100644 index 0000000000..3cab31d8d0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement79.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement79 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement79

      +

      <test name='HTMLElement79' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement79</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the CITE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"cite"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement80.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement80.html new file mode 100644 index 0000000000..a064e4cff0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement80.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement80 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement80

      +

      <test name='HTMLElement80' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement80</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the ACRONYM element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"acronym"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement81.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement81.html new file mode 100644 index 0000000000..da67f24eae --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement81.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement81 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement81

      +

      <test name='HTMLElement81' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement81</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the ABBR element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"abbr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement82.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement82.html new file mode 100644 index 0000000000..7a5ca9ee3c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement82.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement82 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement82

      +

      <test name='HTMLElement82' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement82</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the DD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dd"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement83.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement83.html new file mode 100644 index 0000000000..da5d9aff84 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement83.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement83 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement83

      +

      <test name='HTMLElement83' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement83</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the DT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement84.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement84.html new file mode 100644 index 0000000000..f40fdf3c87 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement84.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement84 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement84

      +

      <test name='HTMLElement84' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement84</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the NOFRAMES element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noframes"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement85.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement85.html new file mode 100644 index 0000000000..d6373f3978 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement85.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement85 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement85

      +

      <test name='HTMLElement85' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement85</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the NOSCRIPT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"noscript"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement86.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement86.html new file mode 100644 index 0000000000..d509540c80 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement86.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement86 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement86

      +

      <test name='HTMLElement86' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement86</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the ADDRESS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"address"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement87.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement87.html new file mode 100644 index 0000000000..cf14b95c9d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement87.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement87 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement87

      +

      <test name='HTMLElement87' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement87</title> +
                <creator>NIST</creator> +
                <description> + The lang attribute specifies the language code defined in RFC 1766. + + Retrieve the lang attribute of the CENTER element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59132807'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"center"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <lang interface='HTMLElement' obj='testNode' var='vlang'/>
           <assertEquals actual='vlang' expected='"en"' id='langLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement88.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement88.html new file mode 100644 index 0000000000..092b098c1b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement88.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement88 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement88

      +

      <test name='HTMLElement88' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement88</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the HEAD element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"head"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement89.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement89.html new file mode 100644 index 0000000000..e4ad0850e8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement89.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement89 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement89

      +

      <test name='HTMLElement89' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement89</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the SUB element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sub"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement90.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement90.html new file mode 100644 index 0000000000..38feff556f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement90.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement90 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement90

      +

      <test name='HTMLElement90' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement90</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the SUP element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"sup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement91.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement91.html new file mode 100644 index 0000000000..5e4a617c0b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement91.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement91 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement91

      +

      <test name='HTMLElement91' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement91</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the SPAN element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"span"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement92.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement92.html new file mode 100644 index 0000000000..faf54c2759 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement92.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement92 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement92

      +

      <test name='HTMLElement92' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement92</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the BDO element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"bdo"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement93.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement93.html new file mode 100644 index 0000000000..a9ee0d3ddb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement93.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement93 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement93

      +

      <test name='HTMLElement93' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement93</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the TT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tt"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement94.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement94.html new file mode 100644 index 0000000000..27f9d9a140 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement94.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement94 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement94

      +

      <test name='HTMLElement94' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement94</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the I element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"i"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement95.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement95.html new file mode 100644 index 0000000000..2979e1c77f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement95.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement95 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement95

      +

      <test name='HTMLElement95' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement95</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the B element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"b"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement96.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement96.html new file mode 100644 index 0000000000..b8b0b915d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement96.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement96 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement96

      +

      <test name='HTMLElement96' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement96</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the U element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"u"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement97.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement97.html new file mode 100644 index 0000000000..af72e7a4ba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement97.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement97 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement97

      +

      <test name='HTMLElement97' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement97</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the S element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"s"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement98.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement98.html new file mode 100644 index 0000000000..0e54b74031 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement98.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement98 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement98

      +

      <test name='HTMLElement98' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement98</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the STRIKE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"strike"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLElement99.html b/dom/tests/mochitest/dom-level2-html/test_HTMLElement99.html new file mode 100644 index 0000000000..20d47bbc0f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLElement99.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement99 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLElement99

      +

      <test name='HTMLElement99' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLElement99</title> +
                <creator>NIST</creator> +
                <description> + The dir attribute specifies the base direction of directionally neutral text and the directionality of tables. + + Retrieve the dir attribute of the BIG element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52460740'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdir' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='element' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"big"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dir interface='HTMLElement' obj='testNode' var='vdir'/>
           <assertEquals actual='vdir' expected='"ltr"' id='dirLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement01.html new file mode 100644 index 0000000000..99fb8119a3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement01.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement01

      +

      <test name='HTMLFieldSetElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFieldSetElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='fieldset' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"fieldset"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLFieldSetElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form2"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement02.html new file mode 100644 index 0000000000..e4b21432f4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFieldSetElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFieldSetElement02

      +

      <test name='HTMLFieldSetElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFieldSetElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + form. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75392630'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='fieldset' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"fieldset"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLFieldSetElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement01.html new file mode 100644 index 0000000000..0b29d8be1c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement01

      +

      <test name='HTMLFontElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFontElement01</title> +
                <creator>NIST</creator> +
                <description> + The color attribute specifies the font's color. + + Retrieve the color attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53532975'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='font' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"font"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <color interface='HTMLFontElement' obj='testNode' var='vcolor'/>
           <assertEquals actual='vcolor' expected='"#000000"' id='colorLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement02.html new file mode 100644 index 0000000000..be9b470e18 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement02

      +

      <test name='HTMLFontElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFontElement02</title> +
                <creator>NIST</creator> +
                <description> + The face attribute specifies the font's face identifier. + + Retrieve the face attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55715655'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vface' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='font' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"font"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <face interface='HTMLFontElement' obj='testNode' var='vface'/>
           <assertEquals actual='vface' expected='"arial,helvetica"' id='faceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement03.html new file mode 100644 index 0000000000..055a52d10a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFontElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFontElement03

      +

      <test name='HTMLFontElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFontElement03</title> +
                <creator>NIST</creator> +
                <description> + The size attribute specifies the font's size. + + Retrieve the size attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90127284'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsize' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='font' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"font"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <size interface='HTMLFontElement' obj='testNode' var='vsize'/>
           <assertEquals actual='vsize' expected='"4"' id='sizeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement01.html new file mode 100644 index 0000000000..6915eeffd4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement01.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement01

      +

      <test name='HTMLFormElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement01</title> +
                <creator>NIST</creator> +
                <description> + The elements attribute specifies a collection of all control element + in the form. + + Retrieve the elements attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76728479'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='elementnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='velements' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='elementnodeList'/>
           <length interface='HTMLCollection' obj='elementnodeList' var='velements'/>
           <assertEquals actual='velements' expected='3' id='elementsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement02.html new file mode 100644 index 0000000000..109a308a6d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement02

      +

      <test name='HTMLFormElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement02</title> +
                <creator>NIST</creator> +
                <description> + The length attribute specifies the number of form controls + in the form. + + Retrieve the length attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40002357'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLFormElement-length'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <length interface='HTMLFormElement' obj='testNode' var='vlength'/>
           <assertEquals actual='vlength' expected='3' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement03.html new file mode 100644 index 0000000000..a014f1fbc6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement03

      +

      <test name='HTMLFormElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement03</title> +
                <creator>NIST</creator> +
                <description> + The id(name) attribute specifies the name of the form. + + Retrieve the id attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22051454'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <id obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"form1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement04.html new file mode 100644 index 0000000000..7c5b42a1e9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement04

      +

      <test name='HTMLFormElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement04</title> +
                <creator>NIST</creator> +
                <description> + The acceptCharset attribute specifies the list of character sets + supported by the server. + + Retrieve the acceptCharset attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19661795'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vacceptcharset' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <acceptCharset interface='HTMLFormElement' obj='testNode' var='vacceptcharset'/>
           <assertEquals actual='vacceptcharset' expected='"US-ASCII"' id='acceptCharsetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement05.html new file mode 100644 index 0000000000..975cc5274f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement05

      +

      <test name='HTMLFormElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement05</title> +
                <creator>NIST</creator> +
                <description> + The action attribute specifies the server-side form handler. + + Retrieve the action attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaction' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <action interface='HTMLFormElement' obj='testNode' var='vaction'/>
           <assertURIEquals actual='vaction' file='"getData.pl"' id='actionLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement06.html new file mode 100644 index 0000000000..da41587654 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement06

      +

      <test name='HTMLFormElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement06</title> +
                <creator>NIST</creator> +
                <description> + The enctype attribute specifies the content of the submitted form. + + Retrieve the enctype attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84227810'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='venctype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <enctype interface='HTMLFormElement' obj='testNode' var='venctype'/>
           <assertEquals actual='venctype' expected='"application/x-www-form-urlencoded"' id='enctypeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement07.html new file mode 100644 index 0000000000..d9467ffc09 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement07

      +

      <test name='HTMLFormElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement07</title> +
                <creator>NIST</creator> +
                <description> + The method attribute specifies the HTTP method used to submit the form. + + Retrieve the method attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmethod' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <method interface='HTMLFormElement' obj='testNode' var='vmethod'/>
           <assertEquals actual='vmethod' expected='"post"' id='methodLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement08.html new file mode 100644 index 0000000000..e22ff74842 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement08

      +

      <test name='HTMLFormElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement08</title> +
                <creator>NIST</creator> +
                <description> + The target attribute specifies the frame to render the resource in. + + Retrieve the target attribute and examine it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6512890'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtarget' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <target interface='HTMLFormElement' obj='testNode' var='vtarget'/>
           <assertEquals actual='vtarget' expected='"dynamic"' id='targetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement09.html new file mode 100644 index 0000000000..f4f4a8c4da --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement09.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement09

      +

      <test name='HTMLFormElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement09</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLFormElement.reset restores the forms default values. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767677'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form2' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <reset interface='HTMLFormElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement10.html new file mode 100644 index 0000000000..584a43b8c8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFormElement10.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFormElement10

      +

      <test name='HTMLFormElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFormElement10</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLFormElement.submit submits the form. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76767676'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='form3' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <submit interface='HTMLFormElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement01.html new file mode 100644 index 0000000000..f871ac85de --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement01.html @@ -0,0 +1,141 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement01

      +

      <test name='HTMLFrameElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement01</title> +
                <creator>NIST</creator> +
                <description> + The frameBorder attribute specifies the request for frame borders. + (frameBorder=1 A border is drawn) + (FrameBorder=0 A border is not drawn) + + Retrieve the frameBorder attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11858633'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vframeborder' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <frameBorder interface='HTMLFrameElement' obj='testNode' var='vframeborder'/>
           <assertEquals actual='vframeborder' expected='"1"' id='frameborderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement02.html new file mode 100644 index 0000000000..4a6a00fccf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement02

      +

      <test name='HTMLFrameElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement02</title> +
                <creator>NIST</creator> +
                <description> + The longDesc attribute specifies a URI designating a long description + of this image or frame. + + Retrieve the longDesc attribute of the first FRAME element and examine + its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-7836998'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlongdesc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <longDesc interface='HTMLFrameElement' obj='testNode' var='vlongdesc'/>
           <assertEquals actual='vlongdesc' expected='"about:blank"' ignoreCase='false' id='longdescLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement03.html new file mode 100644 index 0000000000..b39e74e197 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement03

      +

      <test name='HTMLFrameElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement03</title> +
                <creator>NIST</creator> +
                <description> + The marginHeight attribute specifies the frame margin height, in pixels. + + Retrieve the marginHeight attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-55569778'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmarginheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <marginHeight interface='HTMLFrameElement' obj='testNode' var='vmarginheight'/>
           <assertEquals actual='vmarginheight' expected='"10"' id='marginheightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement04.html new file mode 100644 index 0000000000..3bc2423d0c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement04

      +

      <test name='HTMLFrameElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement04</title> +
                <creator>NIST</creator> +
                <description> + The marginWidth attribute specifies the frame margin width, in pixels. + + Retrieve the marginWidth attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8369969'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmarginwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <marginWidth interface='HTMLFrameElement' obj='testNode' var='vmarginwidth'/>
           <assertEquals actual='vmarginwidth' expected='"5"' id='marginwidthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement05.html new file mode 100644 index 0000000000..d027d6e38e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement05.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement05

      +

      <test name='HTMLFrameElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement05</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the frame name(object of the target + attribute). + + Retrieve the name attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91128709'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLFrameElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"Frame1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement06.html new file mode 100644 index 0000000000..571774cead --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement06

      +

      <test name='HTMLFrameElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement06</title> +
                <creator>NIST</creator> +
                <description> + The noResize attribute specifies if the user can resize the frame. When + true, forbid user from resizing frame. + + Retrieve the noResize attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80766578'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnoresize' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <noResize interface='HTMLFrameElement' obj='testNode' var='vnoresize'/>
           <assertTrue actual='vnoresize' id='noresizeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement07.html new file mode 100644 index 0000000000..9fb425376c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement07

      +

      <test name='HTMLFrameElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement07</title> +
                <creator>NIST</creator> +
                <description> + The scrolling attribute specifies whether or not the frame should have + scrollbars. + + Retrieve the scrolling attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45411424'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscrolling' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <scrolling interface='HTMLFrameElement' obj='testNode' var='vscrolling'/>
           <assertEquals actual='vscrolling' expected='"yes"' id='scrollingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement08.html new file mode 100644 index 0000000000..f2a74c41ba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement08

      +

      <test name='HTMLFrameElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameElement08</title> +
                <creator>NIST</creator> +
                <description> + The src attribute specifies a URI designating the initial frame contents. + + Retrieve the src attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78799535'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsrc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frame"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <src interface='HTMLFrameElement' obj='testNode' var='vsrc'/>
           <assertURIEquals actual='vsrc' name='"right"' id='srcLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement09.html new file mode 100644 index 0000000000..344df70670 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameElement09.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameElement09

      +

      <test name='HTMLFrameElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLFrameElement09</title> +
                <creator>NIST</creator> +
                <description> + The contentDocument attribute specifies the document this frame contains, + if there is any and it is available, or null otherwise. + + Retrieve the contentDocument attribute of the first FRAME element + and examine its TITLE value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-03</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-78799536'/> +
      </metadata>
           <var name='testNode' type='Element'/>
           <var name='cd' type='Document'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frame2' willBeModified='false'/>
           <getElementById interface='Document' obj='doc' var='testNode' elementId='"Frame1"'/>
           <contentDocument interface='HTMLFrameElement' obj='testNode' var='cd'/>
           <title interface='HTMLDocument' obj='cd' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NIST DOM HTML Test - FRAMESET"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement01.html new file mode 100644 index 0000000000..06f52a0873 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement01

      +

      <test name='HTMLFrameSetElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameSetElement01</title> +
                <creator>NIST</creator> +
                <description> + The cols attribute specifies the number of columns of frames in the + frameset. + + Retrieve the cols attribute of the first FRAMESET element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98869594'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcols' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frameset' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frameset"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cols interface='HTMLFrameSetElement' obj='testNode' var='vcols'/>
           <assertEquals actual='vcols' expected='"20, 80"' id='colsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement02.html new file mode 100644 index 0000000000..4a767a9d6b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLFrameSetElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLFrameSetElement02

      +

      <test name='HTMLFrameSetElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLFrameSetElement02</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute specifies the number of rows of frames in the + frameset. + + Retrieve the rows attribute of the second FRAMESET element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19739247'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrows' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='frameset' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"frameset"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLFrameSetElement' obj='testNode' var='vrows'/>
           <assertEquals actual='vrows' expected='"100, 200"' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement01.html new file mode 100644 index 0000000000..1eadba1215 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement01

      +

      <test name='HTMLHRElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHRElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the rule alignment on the page. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15235012'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='hr' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"hr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHRElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement02.html new file mode 100644 index 0000000000..18ad685e81 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement02

      +

      <test name='HTMLHRElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHRElement02</title> +
                <creator>NIST</creator> +
                <description> + The noShade attribute specifies that the rule should be drawn as + a solid color. + + Retrieve the noShade attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79813978'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnoshade' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='hr' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"hr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <noShade interface='HTMLHRElement' obj='testNode' var='vnoshade'/>
           <assertTrue actual='vnoshade' id='noShadeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement03.html new file mode 100644 index 0000000000..2820932898 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement03

      +

      <test name='HTMLHRElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHRElement03</title> +
                <creator>NIST</creator> +
                <description> + The size attribute specifies the height of the rule. + + Retrieve the size attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77612587'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsize' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='hr' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"hr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <size interface='HTMLHRElement' obj='testNode' var='vsize'/>
           <assertEquals actual='vsize' expected='"5"' id='sizeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement04.html new file mode 100644 index 0000000000..301edc1bdb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHRElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHRElement04

      +

      <test name='HTMLHRElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHRElement04</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the width of the rule. + + Retrieve the width attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87744198'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='hr' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"hr"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLHRElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"400"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement01.html new file mode 100644 index 0000000000..df5f7d886a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement01

      +

      <test name='HTMLHeadingElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H1). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h1"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement02.html new file mode 100644 index 0000000000..e6e8d3b264 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement02

      +

      <test name='HTMLHeadingElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement02</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H2). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h2"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"left"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement03.html new file mode 100644 index 0000000000..72d16f779f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement03

      +

      <test name='HTMLHeadingElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement03</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H3). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h3"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"right"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement04.html new file mode 100644 index 0000000000..e50f4dce72 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement04

      +

      <test name='HTMLHeadingElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement04</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H4). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h4"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"justify"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement05.html new file mode 100644 index 0000000000..1ea1487337 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement05

      +

      <test name='HTMLHeadingElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement05</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H5). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h5"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement06.html new file mode 100644 index 0000000000..f93610a501 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHeadingElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHeadingElement06

      +

      <test name='HTMLHeadingElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHeadingElement06</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment(H6). + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6796462'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='heading' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"h6"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLHeadingElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"left"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLHtmlElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLHtmlElement01.html new file mode 100644 index 0000000000..69c90c2adc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLHtmlElement01.html @@ -0,0 +1,149 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHtmlElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLHtmlElement01

      +

      <test name='HTMLHtmlElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLHtmlElement01</title> +
                <creator>NIST</creator> +
                <description> + The version attribute specifies version information about the document's + DTD. + + Retrieve the version attribute and examine its value. + + Test is only applicable to HTML, version attribute is not supported in XHTML. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9383775'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vversion' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='html' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"html"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <version interface='HTMLHtmlElement' obj='testNode' var='vversion'/>
           <if>
                <contentType type='text/html'/>
                <assertEquals actual='vversion' expected='"-//W3C//DTD HTML 4.01 Transitional//EN"' id='versionLink' ignoreCase='false'/>
           </if>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement01.html new file mode 100644 index 0000000000..74bc9e5bf3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement01

      +

      <test name='HTMLIFrameElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute aligns this object(vertically or horizontally with + respect to its surrounding text. + + Retrieve the align attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11309947'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLIFrameElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement02.html new file mode 100644 index 0000000000..161b4264e6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement02.html @@ -0,0 +1,141 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement02

      +

      <test name='HTMLIFrameElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement02</title> +
                <creator>NIST</creator> +
                <description> + The frameBorder attribute specifies the request for frame borders. + (frameBorder=1 A border is drawn) + (FrameBorder=0 A border is not drawn) + + Retrieve the frameBorder attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22463410'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vframeborder' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <frameBorder interface='HTMLIFrameElement' obj='testNode' var='vframeborder'/>
           <assertEquals actual='vframeborder' expected='"1"' id='frameborderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement03.html new file mode 100644 index 0000000000..c84981f86b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement03

      +

      <test name='HTMLIFrameElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement03</title> +
                <creator>NIST</creator> +
                <description> + The height attribute specifies the frame height. + + Retrieve the height attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-1678118'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <height interface='HTMLIFrameElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"50"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement04.html new file mode 100644 index 0000000000..c8e09efefc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement04

      +

      <test name='HTMLIFrameElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement04</title> +
                <creator>NIST</creator> +
                <description> + The longDesc attribute specifies a URI designating a long description + of this image or frame. + + Retrieve the longDesc attribute of the first IFRAME element and examine + its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70472105'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlongdesc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <longDesc interface='HTMLIFrameElement' obj='testNode' var='vlongdesc'/>
           <assertEquals actual='vlongdesc' expected='"about:blank"' ignoreCase='false' id='longdescLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement05.html new file mode 100644 index 0000000000..66fb0fc39d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement05

      +

      <test name='HTMLIFrameElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement05</title> +
                <creator>NIST</creator> +
                <description> + The marginWidth attribute specifies the frame margin width, in pixels. + + Retrieve the marginWidth attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66486595'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmarginwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <marginWidth interface='HTMLIFrameElement' obj='testNode' var='vmarginwidth'/>
           <assertEquals actual='vmarginwidth' expected='"5"' id='marginwidthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement06.html new file mode 100644 index 0000000000..8efbabba8f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement06.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement06

      +

      <test name='HTMLIFrameElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement06</title> +
                <creator>NIST</creator> +
                <description> + The marginHeight attribute specifies the frame margin height, in pixels. + + Retrieve the marginHeight attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91371294'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmarginheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <marginHeight interface='HTMLIFrameElement' obj='testNode' var='vmarginheight'/>
           <assertEquals actual='vmarginheight' expected='"10"' id='marginheightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement07.html new file mode 100644 index 0000000000..4bb0465f4d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement07

      +

      <test name='HTMLIFrameElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement07</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the frame name(object of the target + attribute). + + Retrieve the name attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96819659'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLIFrameElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"Iframe1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement08.html new file mode 100644 index 0000000000..78d8445ce5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement08.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement08

      +

      <test name='HTMLIFrameElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement08</title> +
                <creator>NIST</creator> +
                <description> + The scrolling attribute specifies whether or not the frame should have + scrollbars. + + Retrieve the scrolling attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36369822'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscrolling' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <scrolling interface='HTMLIFrameElement' obj='testNode' var='vscrolling'/>
           <assertEquals actual='vscrolling' expected='"yes"' id='scrollingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement09.html new file mode 100644 index 0000000000..c44d2a9a82 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement09

      +

      <test name='HTMLIFrameElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement09</title> +
                <creator>NIST</creator> +
                <description> + The src attribute specifies a URI designating the initial frame contents. + + Retrieve the src attribute of the first FRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43933957'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsrc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <src interface='HTMLIFrameElement' obj='testNode' var='vsrc'/>
           <assertURIEquals actual='vsrc' name='"right"' id='srcLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement10.html new file mode 100644 index 0000000000..241740df36 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement10.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement10

      +

      <test name='HTMLIFrameElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLIFrameElement10</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the frame width. + + Retrieve the width attribute of the first IFRAME element and examine + it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67133005'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"iframe"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLIFrameElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"60"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement11.html new file mode 100644 index 0000000000..a53e0cab28 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLIFrameElement11.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLIFrameElement11

      +

      <test name='HTMLIFrameElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLIFrameElement11</title> +
                <creator>NIST</creator> +
                <description> + Retrieve the contentDocument attribute of the second IFRAME element + and examine its title. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-03</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-67133006'/> +
      </metadata>
           <var name='testNode' type='Element'/>
           <var name='cd' type='Document'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='iframe2' willBeModified='false'/>
           <getElementById interface='Document' obj='doc' var='testNode' elementId='"Iframe2"'/>
           <contentDocument interface='HTMLIFrameElement' obj='testNode' var='cd'/>
           <title interface='HTMLDocument' obj='cd' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NIST DOM HTML Test - FRAME"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement01.html new file mode 100644 index 0000000000..187152d5a6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement01

      +

      <test name='HTMLImageElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement01</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the name of the element. + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47534097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLImageElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"IMAGE-1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement02.html new file mode 100644 index 0000000000..73fdaa3a84 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement02

      +

      <test name='HTMLImageElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement02</title> +
                <creator>NIST</creator> +
                <description> + The align attribute aligns this object with respect to its surrounding + text. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-3211094'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLImageElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"middle"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement03.html new file mode 100644 index 0000000000..cb1c741426 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement03

      +

      <test name='HTMLImageElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement03</title> +
                <creator>NIST</creator> +
                <description> + The alt attribute specifies an alternative text for user agenst not + rendering the normal content of this element. + + Retrieve the alt attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95636861'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valt' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <alt interface='HTMLImageElement' obj='testNode' var='valt'/>
           <assertEquals actual='valt' expected='"DTS IMAGE LOGO"' id='altLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement04.html new file mode 100644 index 0000000000..704a4baeaf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement04

      +

      <test name='HTMLImageElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement04</title> +
                <creator>NIST</creator> +
                <description> + The border attribute specifies the width of the border around the image. + + Retrieve the border attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-136671'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vborder' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <border interface='HTMLImageElement' obj='testNode' var='vborder'/>
           <assertEquals actual='vborder' expected='"0"' id='borderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement05.html new file mode 100644 index 0000000000..f67477065f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement05

      +

      <test name='HTMLImageElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLImageElement05</title> +
                <creator>NIST</creator> +
                <description> + The height attribute overrides the natural "height" of the image. + + Retrieve the height attribute and examine it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2001-12-26</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-91561496'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <height interface='HTMLImageElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='47' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement06.html new file mode 100644 index 0000000000..0f977f2932 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement06.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement06

      +

      <test name='HTMLImageElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLImageElement06</title> +
                <creator>NIST</creator> +
                <description> + The hspace attribute specifies the horizontal space to the left and + right of this image. + + Retrieve the hspace attribute and examine it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2001-12-26</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-53675471'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <hspace interface='HTMLImageElement' obj='testNode' var='vhspace'/>
           <assertEquals actual='vhspace' expected='4' id='hspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement07.html new file mode 100644 index 0000000000..60d513edeb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement07

      +

      <test name='HTMLImageElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement07</title> +
                <creator>NIST</creator> +
                <description> + The isMap attribute indicates the use of server-side image map. + + Retrieve the isMap attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58983880'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vismap' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <isMap interface='HTMLImageElement' obj='testNode' var='vismap'/>
           <assertFalse actual='vismap' id='isMapLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement08.html new file mode 100644 index 0000000000..2f12bac200 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement08

      +

      <test name='HTMLImageElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement08</title> +
                <creator>NIST</creator> +
                <description> + The longDesc attribute contains an URI designating a long description + of this image or frame. + + Retrieve the longDesc attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77376969'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlongdesc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <longDesc interface='HTMLImageElement' obj='testNode' var='vlongdesc'/>
           <assertURIEquals actual='vlongdesc' file='"desc.html"' id='longDescLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement09.html new file mode 100644 index 0000000000..f3a648d680 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement09.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement09

      +

      <test name='HTMLImageElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement09</title> +
                <creator>NIST</creator> +
                <description> + The src attribute contains an URI designating the source of this image. + + Retrieve the src attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87762984'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsrc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <src interface='HTMLImageElement' obj='testNode' var='vsrc'/>
           <assertURIEquals actual='vsrc' file='"dts.gif"' id='srcLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement10.html new file mode 100644 index 0000000000..b1b64db783 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement10.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement10

      +

      <test name='HTMLImageElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLImageElement10</title> +
                <creator>NIST</creator> +
                <description> + The useMap attribute specifies to use the client-side image map. + + Retrieve the useMap attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35981181'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vusemap' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <useMap interface='HTMLImageElement' obj='testNode' var='vusemap'/>
           <assertEquals actual='vusemap' expected='"#DTS-MAP"' id='useMapLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement11.html new file mode 100644 index 0000000000..56b654d7ab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement11.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement11

      +

      <test name='HTMLImageElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLImageElement11</title> +
                <creator>NIST</creator> +
                <description> + The vspace attribute specifies the vertical space above and below this + image. + + Retrieve the vspace attribute and examine it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2001-12-26</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-85374897'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vspace interface='HTMLImageElement' obj='testNode' var='vvspace'/>
           <assertEquals actual='vvspace' expected='10' id='vspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement12.html new file mode 100644 index 0000000000..0861258fc2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLImageElement12.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLImageElement12

      +

      <test name='HTMLImageElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLImageElement12</title> +
                <creator>NIST</creator> +
                <description> + The width attribute overrides the natural "width" of the image. + + Retrieve the width attribute and examine it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2001-12-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13839076'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='img' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"img"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLImageElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='115' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement01.html new file mode 100644 index 0000000000..98919e5427 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement01

      +

      <test name='HTMLInputElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement01</title> +
                <creator>NIST</creator> +
                <description> + The defaultValue attribute represents the HTML value of the attribute + when the type attribute has the value of "Text", "File" or "Password". + + Retrieve the defaultValue attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26091157'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdefaultvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <defaultValue interface='HTMLInputElement' obj='testNode' var='vdefaultvalue'/>
           <assertEquals actual='vdefaultvalue' expected='"Password"' id='defaultValueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement02.html new file mode 100644 index 0000000000..12fda82550 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement02

      +

      <test name='HTMLInputElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement02</title> +
                <creator>NIST</creator> +
                <description> + The defaultChecked attribute represents the HTML checked attribute of + the element when the type attribute has the value checkbox or radio. + + Retrieve the defaultValue attribute of the 4th INPUT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20509171'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdefaultchecked' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <defaultChecked interface='HTMLInputElement' obj='testNode' var='vdefaultchecked'/>
           <assertTrue actual='vdefaultchecked' id='defaultCheckedLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement03.html new file mode 100644 index 0000000000..94b46e3d19 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement03.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement03

      +

      <test name='HTMLInputElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement03</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute of the 1st INPUT element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63239895'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLInputElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement04.html new file mode 100644 index 0000000000..e74f1547ca --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement04

      +

      <test name='HTMLInputElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement04</title> +
                <creator>NIST</creator> +
                <description> + The accept attribute is a comma-seperated list of content types that + a server processing this form will handle correctly. + + Retrieve the accept attribute of the 9th INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15328520'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccept' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='8'/>
           <accept interface='HTMLInputElement' obj='testNode' var='vaccept'/>
           <assertEquals actual='vaccept' expected='"GIF,JPEG"' id='acceptLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement05.html new file mode 100644 index 0000000000..369add7bd0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement05.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement05

      +

      <test name='HTMLInputElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement05</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute is a single character access key to give access + to the form control. + + Retrieve the accessKey attribute of the 2nd INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59914154'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <accessKey interface='HTMLInputElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"c"' id='accesskeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement06.html new file mode 100644 index 0000000000..354c90cee2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement06

      +

      <test name='HTMLInputElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement06</title> +
                <creator>NIST</creator> +
                <description> + The align attribute aligns this object(vertically or horizontally) + with respect to the surrounding text. + + Retrieve the align attribute of the 4th INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96991182'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <align interface='HTMLInputElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"bottom"' id='alignLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement07.html new file mode 100644 index 0000000000..37068e9d64 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement07

      +

      <test name='HTMLInputElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement07</title> +
                <creator>NIST</creator> +
                <description> + The alt attribute alternates text for user agents not rendering the + normal content of this element. + + Retrieve the alt attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92701314'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valt' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <alt interface='HTMLInputElement' obj='testNode' var='valt'/>
           <assertEquals actual='valt' expected='"Password entry"' id='altLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement08.html new file mode 100644 index 0000000000..0147f10ec1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement08.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement08

      +

      <test name='HTMLInputElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement08</title> +
                <creator>NIST</creator> +
                <description> + The checked attribute represents the current state of the corresponding + form control when type has the value Radio or Checkbox. + + Retrieve the accept attribute of the 3rd INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30233917'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchecked' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <checked interface='HTMLInputElement' obj='testNode' var='vchecked'/>
           <assertTrue actual='vchecked' id='checkedLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement09.html new file mode 100644 index 0000000000..fbc9383e41 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement09

      +

      <test name='HTMLInputElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement09</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute has a TRUE value if it is explicitly set. + + Retrieve the disabled attribute of the 7th INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50886781'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='6'/>
           <disabled interface='HTMLInputElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement10.html new file mode 100644 index 0000000000..545c5a3bf6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement10

      +

      <test name='HTMLInputElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement10</title> +
                <creator>NIST</creator> +
                <description> + The maxLength attribute is the maximum number of text characters for text + fields, when type has the value of Text or Password. + + Retrieve the maxLenght attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-54719353'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmaxlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <maxLength interface='HTMLInputElement' obj='testNode' var='vmaxlength'/>
           <assertEquals actual='vmaxlength' expected='5' id='maxlengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement11.html new file mode 100644 index 0000000000..384fc3f42b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement11

      +

      <test name='HTMLInputElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement11</title> +
                <creator>NIST</creator> +
                <description> + The name attribute is the form control or object name when submitted with + a form. + + Retrieve the name attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89658498'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLInputElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"Password"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement12.html new file mode 100644 index 0000000000..7045d724c2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement12.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement12

      +

      <test name='HTMLInputElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement12</title> +
                <creator>NIST</creator> +
                <description> + The readOnly attribute indicates that this control is read-only when + type has a value of text or password only. + + Retrieve the readOnly attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88461592'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vreadonly' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <readOnly interface='HTMLInputElement' obj='testNode' var='vreadonly'/>
           <assertTrue actual='vreadonly' id='readonlyLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement13.html new file mode 100644 index 0000000000..643d392553 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement13.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement13

      +

      <test name='HTMLInputElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLInputElement13</title> +
                <creator>NIST</creator> +
                <description> + The size attribute contains the size information. Its precise meaning + is specific to each type of field. + + Retrieve the size attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2001-12-26</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-79659438'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsize' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <size interface='HTMLInputElement' obj='testNode' var='vsize'/>
           <assertEquals actual='vsize' expected='25' id='size' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement14.html new file mode 100644 index 0000000000..ebc2c0402a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement14.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement14

      +

      <test name='HTMLInputElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement14</title> +
                <creator>NIST</creator> +
                <description> + The src attribute specifies the location of the image to decorate the + graphical submit button when the type has the value Image. + + Retrieve the src attribute of the 8th INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-97320704'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsrc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='7'/>
           <src interface='HTMLInputElement' obj='testNode' var='vsrc'/>
           <assertURIEquals actual='vsrc' file='"submit.gif"' id='srcLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement15.html new file mode 100644 index 0000000000..51ce20e629 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement15.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement15

      +

      <test name='HTMLInputElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement15</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute is an index that represents the elements position + in the tabbing order. + + Retrieve the tabIndex attribute of the 3rd INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62176355'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <tabIndex interface='HTMLInputElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='9' id='tabindexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement16.html new file mode 100644 index 0000000000..c88e2497d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement16.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement16

      +

      <test name='HTMLInputElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement16</title> +
                <creator>NIST</creator> +
                <description> + The type attribute is the type of control created. + + Retrieve the type attribute of the 1st INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62883744'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLInputElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"password"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement17.html new file mode 100644 index 0000000000..924a3b7a1b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement17.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement17

      +

      <test name='HTMLInputElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement17</title> +
                <creator>NIST</creator> +
                <description> + The useMap attribute specifies the use of the client-side image map. + + Retrieve the useMap attribute of the 8th INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32463706'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vusemap' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='7'/>
           <useMap interface='HTMLInputElement' obj='testNode' var='vusemap'/>
           <assertEquals actual='vusemap' expected='"#submit-map"' id='usemapLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement18.html new file mode 100644 index 0000000000..d95f9845c4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement18.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement18

      +

      <test name='HTMLInputElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement18</title> +
                <creator>NIST</creator> +
                <description> + The value attribute is the current content of the corresponding form + control when the type attribute has the value Text, File or Password. + + Retrieve the value attribute of the 2nd INPUT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49531485'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <value interface='HTMLInputElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"ReHire"' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement19.html new file mode 100644 index 0000000000..75436630a8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement19.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement19

      +

      <test name='HTMLInputElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement19</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLInputElement.blur should surrender input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26838235'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <blur interface='HTMLInputElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement20.html new file mode 100644 index 0000000000..81345a94f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement20.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement20

      +

      <test name='HTMLInputElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement20</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLInputElement.focus should capture input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-65996295'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='input' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <focus interface='HTMLInputElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement21.html new file mode 100644 index 0000000000..6e2d0ac5da --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement21.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement21

      +

      <test name='HTMLInputElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement21</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLInputElement.click should change the state of checked on a radio button. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-2651361'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='checked' type='boolean'/>
           <load var='doc' href='input' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <checked var='checked' obj='testNode'/>
           <assertFalse actual='checked' id='notCheckedBeforeClick'/>
           <click interface='HTMLInputElement' obj='testNode'/>
           <checked var='checked' obj='testNode'/>
           <assertTrue actual='checked' id='checkedAfterClick'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement22.html b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement22.html new file mode 100644 index 0000000000..68da44c48c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLInputElement22.html @@ -0,0 +1,127 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLInputElement22

      +

      <test name='HTMLInputElement22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLInputElement22</title> +
                <creator>Curt Arnold</creator> +
                <description> +HTMLInputElement.select should select the contents of a text area. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-34677168'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='checked' type='boolean'/>
           <load var='doc' href='input' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"input"'/>
           <assertSize collection='nodeList' size='9' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <select interface='HTMLInputElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement01.html new file mode 100644 index 0000000000..c4cbcf4fba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement01

      +

      <test name='HTMLLIElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLIElement01</title> +
                <creator>NIST</creator> +
                <description> + The type attribute is a list item bullet style. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52387668'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='li' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"li"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLLIElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"square"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement02.html new file mode 100644 index 0000000000..d4a1fb7ad0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLIElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLIElement02

      +

      <test name='HTMLLIElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLIElement02</title> +
                <creator>NIST</creator> +
                <description> + The value attribute is a reset sequence number when used in OL. + + Retrieve the value attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-45496263'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='li' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"li"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLLIElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='2' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement01.html new file mode 100644 index 0000000000..769273fd2c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement01.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement01

      +

      <test name='HTMLLabelElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLabelElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='label' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"label"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLLabelElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement02.html new file mode 100644 index 0000000000..bbeb70fc05 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement02

      +

      <test name='HTMLLabelElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLabelElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + form. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32480901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='label' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"label"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLLabelElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement03.html new file mode 100644 index 0000000000..b6adb084c2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement03

      +

      <test name='HTMLLabelElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLabelElement03</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute is a single character access key to give access + to the form control. + + Retrieve the accessKey attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-43589892'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='label' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"label"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLLabelElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"b"' id='accesskeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement04.html new file mode 100644 index 0000000000..52b287f56f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLabelElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLabelElement04

      +

      <test name='HTMLLabelElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLabelElement04</title> +
                <creator>NIST</creator> +
                <description> + The htmlFor attribute links this label with another form control by + id attribute. + + Retrieve the htmlFor attribute of the first LABEL element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96509813'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhtmlfor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='label' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"label"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <htmlFor interface='HTMLLabelElement' obj='testNode' var='vhtmlfor'/>
           <assertEquals actual='vhtmlfor' expected='"input1"' id='htmlForLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement01.html new file mode 100644 index 0000000000..fe5dca94f2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement01.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement01

      +

      <test name='HTMLLegendElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLLegendElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute from the first LEGEND element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='legend' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"legend"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLLegendElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement02.html new file mode 100644 index 0000000000..5d7895685b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement02

      +

      <test name='HTMLLegendElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLegendElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + form. + + Retrieve the second ELEMENT and examine its form element. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-29594519'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='legend' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"legend"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLLegendElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement03.html new file mode 100644 index 0000000000..50694fc20a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement03

      +

      <test name='HTMLLegendElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLegendElement03</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute is a single character access key to give access + to the form control. + + Retrieve the accessKey attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11297832'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='legend' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"legend"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLLegendElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"b"' id='accesskeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement04.html new file mode 100644 index 0000000000..a1fae91dce --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLegendElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLegendElement04

      +

      <test name='HTMLLegendElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLegendElement04</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the text alignment relative to FIELDSET. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79538067'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='legend' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"legend"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLLegendElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement01.html new file mode 100644 index 0000000000..646f0c0de2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement01

      +

      <test name='HTMLLinkElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement01</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute enables/disables the link. + + Retrieve the disabled attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87355129'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <disabled interface='HTMLLinkElement' obj='testNode' var='vdisabled'/>
           <assertFalse actual='vdisabled' id='disabled'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement02.html new file mode 100644 index 0000000000..f2563cdfa2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement02

      +

      <test name='HTMLLinkElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement02</title> +
                <creator>NIST</creator> +
                <description> + The charset attribute indicates the character encoding of the linked + resource. + + Retrieve the charset attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63954491'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharset' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <charset interface='HTMLLinkElement' obj='testNode' var='vcharset'/>
           <assertEquals actual='vcharset' expected='"Latin-1"' id='charsetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement03.html new file mode 100644 index 0000000000..6abc60f5d6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement03

      +

      <test name='HTMLLinkElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement03</title> +
                <creator>NIST</creator> +
                <description> + The href attribute specifies the URI of the linked resource. + + Retrieve the href attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33532588'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhref' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <href interface='HTMLLinkElement' obj='testNode' var='vhref'/>
           <assertURIEquals actual='vhref' file='"glossary.html"' id='hrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement04.html new file mode 100644 index 0000000000..9589ded343 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement04

      +

      <test name='HTMLLinkElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement04</title> +
                <creator>NIST</creator> +
                <description> + The hreflang attribute specifies the language code of the linked resource. + + Retrieve the hreflang attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85145682'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhreflang' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <hreflang interface='HTMLLinkElement' obj='testNode' var='vhreflang'/>
           <assertEquals actual='vhreflang' expected='"en"' id='hreflangLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement05.html new file mode 100644 index 0000000000..f5e21e3f1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement05

      +

      <test name='HTMLLinkElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement05</title> +
                <creator>NIST</creator> +
                <description> + The media attribute specifies the targeted media. + + Retrieve the media attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75813125'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmedia' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <media interface='HTMLLinkElement' obj='testNode' var='vmedia'/>
           <assertEquals actual='vmedia' expected='"screen"' id='mediaLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement06.html new file mode 100644 index 0000000000..151fcd50c5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement06.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement06

      +

      <test name='HTMLLinkElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement06</title> +
                <creator>NIST</creator> +
                <description> + The rel attribute specifies the forward link type. + + Retrieve the rel attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41369587'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrel' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rel interface='HTMLLinkElement' obj='testNode' var='vrel'/>
           <assertEquals actual='vrel' expected='"Glossary"' id='relLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement07.html new file mode 100644 index 0000000000..28b2f7794a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement07.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement07

      +

      <test name='HTMLLinkElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement07</title> +
                <creator>NIST</creator> +
                <description> + The rev attribute specifies the reverse link type. + + Retrieve the rev attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40715461'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrev' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rev interface='HTMLLinkElement' obj='testNode' var='vrev'/>
           <assertEquals actual='vrev' expected='"stylesheet"' id='revLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement08.html new file mode 100644 index 0000000000..fe8373ad84 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement08.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement08

      +

      <test name='HTMLLinkElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement08</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the advisory content type. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32498296'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLLinkElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"text/html"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement09.html new file mode 100644 index 0000000000..9e1f95129e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLLinkElement09.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLLinkElement09

      +

      <test name='HTMLLinkElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLLinkElement09</title> +
                <creator>NIST</creator> +
                <description> + The target attribute specifies the frame to render the resource in. + + Retrieve the target attribute and examine it's value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84183095'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtarget' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='link2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"link"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <target interface='HTMLLinkElement' obj='testNode' var='vtarget'/>
           <assertEquals actual='vtarget' expected='"dynamic"' id='targetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement01.html new file mode 100644 index 0000000000..1ced2c0995 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement01.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement01

      +

      <test name='HTMLMapElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMapElement01</title> +
                <creator>NIST</creator> +
                <description> + The areas attribute is a list of areas defined for the image map. + + Retrieve the areas attribute and find the number of areas defined. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71838730'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='areasnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vareas' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='map' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"map"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <areas interface='HTMLMapElement' obj='testNode' var='areasnodeList'/>
           <length interface='HTMLCollection' obj='areasnodeList' var='vareas'/>
           <assertEquals actual='vareas' expected='3' id='areasLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement02.html new file mode 100644 index 0000000000..d65deb3956 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMapElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMapElement02

      +

      <test name='HTMLMapElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMapElement02</title> +
                <creator>NIST</creator> +
                <description> + The name attribute names the map(for use with usemap). + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52696514'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='map' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"map"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLMapElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"mapid"' id='mapLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMenuElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMenuElement01.html new file mode 100644 index 0000000000..0f37aff79c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMenuElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMenuElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMenuElement01

      +

      <test name='HTMLMenuElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMenuElement01</title> +
                <creator>NIST</creator> +
                <description> + The compact attribute specifies a boolean value on whether to display + the list more compactly. + + Retrieve the compact attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68436464'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='menu' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"menu"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLMenuElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement01.html new file mode 100644 index 0000000000..bc84b775b1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement01

      +

      <test name='HTMLMetaElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMetaElement01</title> +
                <creator>NIST</creator> +
                <description> + The content attribute specifies associated information. + + Retrieve the content attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-87670826'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcontent' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='meta' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"meta"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <content interface='HTMLMetaElement' obj='testNode' var='vcontent'/>
           <assertEquals actual='vcontent' expected='"text/html; CHARSET=utf-8"' id='contentLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement02.html new file mode 100644 index 0000000000..dbea6bcf10 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement02

      +

      <test name='HTMLMetaElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMetaElement02</title> +
                <creator>NIST</creator> +
                <description> + The httpEquiv attribute specifies an HTTP respnse header name. + + Retrieve the httpEquiv attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77289449'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhttpequiv' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='meta' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"meta"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <httpEquiv interface='HTMLMetaElement' obj='testNode' var='vhttpequiv'/>
           <assertEquals actual='vhttpequiv' expected='"Content-Type"' id='httpEquivLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement03.html new file mode 100644 index 0000000000..12925a90ac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement03

      +

      <test name='HTMLMetaElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMetaElement03</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the meta information name. + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31037081'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='meta' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"meta"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLMetaElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"Meta-Name"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement04.html new file mode 100644 index 0000000000..23f0f286e3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLMetaElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLMetaElement04

      +

      <test name='HTMLMetaElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLMetaElement04</title> +
                <creator>NIST</creator> +
                <description> + The scheme attribute specifies a select form of content. + + Retrieve the scheme attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35993789'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscheme' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='meta' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"meta"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <scheme interface='HTMLMetaElement' obj='testNode' var='vscheme'/>
           <assertEquals actual='vscheme' expected='"NIST"' id='schemeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLModElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement01.html new file mode 100644 index 0000000000..cbe1693e45 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement01

      +

      <test name='HTMLModElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLModElement01</title> +
                <creator>NIST</creator> +
                <description> + The cite attribute specifies an URI designating a document that describes + the reason for the change. + + Retrieve the cite attribute of the INS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcite' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='mod' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ins"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cite interface='HTMLModElement' obj='testNode' var='vcite'/>
           <assertURIEquals actual='vcite' file='"ins-reasons.html"' id='citeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLModElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement02.html new file mode 100644 index 0000000000..5d4a7213f5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement02

      +

      <test name='HTMLModElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLModElement02</title> +
                <creator>NIST</creator> +
                <description> + The dateTime attribute specifies the date and time of the change. + + Retrieve the dateTime attribute of the INS element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdatetime' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='mod' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ins"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dateTime interface='HTMLModElement' obj='testNode' var='vdatetime'/>
           <assertEquals actual='vdatetime' expected='"January 1, 2002"' id='dateTimeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLModElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement03.html new file mode 100644 index 0000000000..35dcdd3376 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement03

      +

      <test name='HTMLModElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLModElement03</title> +
                <creator>NIST</creator> +
                <description> + The cite attribute specifies an URI designating a document that describes + the reason for the change. + + Retrieve the cite attribute of the DEL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75101708'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcite' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='mod' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"del"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cite interface='HTMLModElement' obj='testNode' var='vcite'/>
           <assertURIEquals actual='vcite' file='"del-reasons.html"' id='citeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLModElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement04.html new file mode 100644 index 0000000000..c5eb3ac39e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLModElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLModElement04

      +

      <test name='HTMLModElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLModElement04</title> +
                <creator>NIST</creator> +
                <description> + The dateTime attribute specifies the date and time of the change. + + Retrieve the dateTime attribute of the DEL element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88432678'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdatetime' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='mod' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"del"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <dateTime interface='HTMLModElement' obj='testNode' var='vdatetime'/>
           <assertEquals actual='vdatetime' expected='"January 2, 2002"' id='dateTimeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement01.html new file mode 100644 index 0000000000..f3cef3fec0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement01

      +

      <test name='HTMLOListElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOListElement01</title> +
                <creator>NIST</creator> +
                <description> + The compact attribute specifies a boolean value on whether to display + the list more compactly. + + Retrieve the compact attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76448506'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='olist' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ol"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLOListElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement02.html new file mode 100644 index 0000000000..6dee163987 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement02

      +

      <test name='HTMLOListElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOListElement02</title> +
                <creator>NIST</creator> +
                <description> + The start attribute specifies the starting sequence number. + + Retrieve the start attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14793325'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vstart' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='olist' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ol"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <start interface='HTMLOListElement' obj='testNode' var='vstart'/>
           <assertEquals actual='vstart' expected='1' id='startLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement03.html new file mode 100644 index 0000000000..4fb9f4fda5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOListElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOListElement03

      +

      <test name='HTMLOListElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOListElement03</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the numbering style. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40971103'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='olist' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ol"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLOListElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"1"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement01.html new file mode 100644 index 0000000000..4c4f3eee04 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement01.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement01

      +

      <test name='HTMLObjectElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-19</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='vform' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLObjectElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"object2"' id='idLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement02.html new file mode 100644 index 0000000000..371b72bc78 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement02

      +

      <test name='HTMLObjectElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement02</title> +
                <creator>NIST</creator> +
                <description> +The code attribute specifies an Applet class file. + +Retrieve the code attribute of the second OBJECT element and examine +its value. Should be "" since CODE is not a valid attribute for OBJECT. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75241146'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcode' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <code interface='HTMLObjectElement' obj='testNode' var='vcode'/>
           <assertEquals actual='vcode' expected='""' id='codeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement03.html new file mode 100644 index 0000000000..57f9cb397f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement03

      +

      <test name='HTMLObjectElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement03</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the alignment of this object with respect + to its surrounding text. + + Retrieve the align attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLObjectElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"middle"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement04.html new file mode 100644 index 0000000000..e453aa6d6d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement04

      +

      <test name='HTMLObjectElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement04</title> +
                <creator>NIST</creator> +
                <description> + The archive attribute specifies a space-separated list of archives. + + Retrieve the archive attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='varchive' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <archive interface='HTMLObjectElement' obj='testNode' var='varchive'/>
           <assertEquals actual='varchive' expected='""' id='archiveLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement05.html new file mode 100644 index 0000000000..1201d96652 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement05

      +

      <test name='HTMLObjectElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement05</title> +
                <creator>NIST</creator> +
                <description> + The border attribute specifies the widht of the border around the object. + + Retrieve the border attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vborder' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <border interface='HTMLObjectElement' obj='testNode' var='vborder'/>
           <assertEquals actual='vborder' expected='"0"' id='borderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement06.html new file mode 100644 index 0000000000..eccc553d57 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement06

      +

      <test name='HTMLObjectElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement06</title> +
                <creator>NIST</creator> +
                <description> + The codeBase attribute specifies the base URI for the classid, data and + archive attributes. + + Retrieve the codeBase attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcodebase' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <codeBase interface='HTMLObjectElement' obj='testNode' var='vcodebase'/>
           <assertURIEquals actual='vcodebase' path='"//xw2k.sdct.itl.nist.gov/brady/dom/"' id='codebaseLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement07.html new file mode 100644 index 0000000000..80f88e5125 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement07

      +

      <test name='HTMLObjectElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement07</title> +
                <creator>NIST</creator> +
                <description> + The codeType attribute specifies the data downloaded via the classid + attribute. + + Retrieve the codeType attribute of the second OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcodetype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <codeType interface='HTMLObjectElement' obj='testNode' var='vcodetype'/>
           <assertEquals actual='vcodetype' expected='"image/gif"' id='codetypeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement08.html new file mode 100644 index 0000000000..c02fdbe664 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement08

      +

      <test name='HTMLObjectElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement08</title> +
                <creator>NIST</creator> +
                <description> + The data attribute specifies the URI of the location of the objects data. + + Retrieve the data attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdata' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <data interface='HTMLObjectElement' obj='testNode' var='vdata'/>
           <assertURIEquals actual='vdata' file='"logo.gif"' id='dataLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement09.html new file mode 100644 index 0000000000..f73724ed54 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement09.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement09

      +

      <test name='HTMLObjectElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement09</title> +
                <creator>NIST</creator> +
                <description> + The declare attribute specifies this object should be declared only and + no instance of it should be created. + + Retrieve the declare attribute of the second OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-942770'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdeclare' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <declare interface='HTMLObjectElement' obj='testNode' var='vdeclare'/>
           <assertTrue actual='vdeclare' id='declareLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement10.html new file mode 100644 index 0000000000..1d29317784 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement10

      +

      <test name='HTMLObjectElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement10</title> +
                <creator>NIST</creator> +
                <description> + The height attribute overrides the value of the actual height of the + object. + + Retrieve the height attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <height interface='HTMLObjectElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"60"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement11.html new file mode 100644 index 0000000000..13f6d5903a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement11

      +

      <test name='HTMLObjectElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLObjectElement11</title> +
                <creator>NIST</creator> +
                <description> + The hspace attribute specifies the horizontal space to the left and right + of this image, applet or object. + + Retrieve the hspace attribute of the first OBJECT element and examine + it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <hspace interface='HTMLObjectElement' obj='testNode' var='vhspace'/>
           <assertEquals actual='vhspace' expected='0' id='hspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement12.html new file mode 100644 index 0000000000..536cf8e0c0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement12.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement12

      +

      <test name='HTMLObjectElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement12</title> +
                <creator>NIST</creator> +
                <description> + The standby attribute specifies a message to render while loading the + object. + + Retrieve the standby attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vstandby' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <standby interface='HTMLObjectElement' obj='testNode' var='vstandby'/>
           <assertEquals actual='vstandby' expected='"Loading Image ..."' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement13.html new file mode 100644 index 0000000000..c0ef4ff6cd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement13.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement13

      +

      <test name='HTMLObjectElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement13</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute specifies the elements position in the tabbing + order. + + Retrieve the tabIndex attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLObjectElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='0' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement14.html new file mode 100644 index 0000000000..e29e05f06e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement14.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement14

      +

      <test name='HTMLObjectElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement14</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the content type for data downloaded via + the data attribute. + + Retrieve the type attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLObjectElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"image/gif"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement15.html new file mode 100644 index 0000000000..ce452d6b01 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement15.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement15

      +

      <test name='HTMLObjectElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement15</title> +
                <creator>NIST</creator> +
                <description> + The useMap attribute specifies the used client-side image map. + + Retrieve the useMap attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vusemap' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <useMap interface='HTMLObjectElement' obj='testNode' var='vusemap'/>
           <assertEquals actual='vusemap' expected='"#DivLogo-map"' id='useMapLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement16.html new file mode 100644 index 0000000000..2f2739b6e9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement16.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement16

      +

      <test name='HTMLObjectElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLObjectElement16</title> +
                <creator>NIST</creator> +
                <description> + The vspace attribute specifies the vertical space above or below this + image, applet or object. + + Retrieve the vspace attribute of the first OBJECT element and examine + it's value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-01-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vspace interface='HTMLObjectElement' obj='testNode' var='vvspace'/>
           <assertEquals actual='vvspace' expected='0' id='vspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement17.html new file mode 100644 index 0000000000..f0a8ff1707 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement17.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement17

      +

      <test name='HTMLObjectElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement17</title> +
                <creator>NIST</creator> +
                <description> + The width attribute overrides the original width value. + + Retrieve the width attribute of the first OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLObjectElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"550"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement18.html new file mode 100644 index 0000000000..eaac546f83 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement18.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement18

      +

      <test name='HTMLObjectElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement18</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies form control or object name when submitted + with a form. + + Retrieve the name attribute of the second OBJECT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20110362'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <name interface='HTMLObjectElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"OBJECT2"' id='vspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement19.html new file mode 100644 index 0000000000..1ca95e5223 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement19.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement19

      +

      <test name='HTMLObjectElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLObjectElement19</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + form. + + Retrieve the form attribute and examine its value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-19</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='object2' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLObjectElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement20.html new file mode 100644 index 0000000000..aca8fe3cc5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLObjectElement20.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLObjectElement20

      +

      <test name='HTMLObjectElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLObjectElement20</title> +
                <creator>NIST</creator> +
                <description> + The contentDocument attribute specifies the document this object contains, + if there is any and it is available, or null otherwise. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-07-03</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-38538621'/> +
      </metadata>
           <var name='testNode' type='Element'/>
           <var name='cd' type='Document'/>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Document'/>
           <var name='nodeList' type='NodeList'/>
           <load var='doc' href='object2' willBeModified='false'/>
           <getElementsByTagName var='nodeList' obj='doc' interface='Document' tagname='"object"'/>
           <item var='testNode' obj='nodeList' index='1' interface='NodeList'/>
           <contentDocument interface='HTMLObjectElement' obj='testNode' var='cd'/>
           <assertNull actual='cd' id='noContentDocument'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement01.html new file mode 100644 index 0000000000..a009cf9044 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement01

      +

      <test name='HTMLOptGroupElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptGroupElement01</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute indicates that the control is unavailable in + this context. + + Retrieve the disabled attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-15518803'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optgroup' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"optgroup"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <disabled interface='HTMLOptGroupElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement02.html new file mode 100644 index 0000000000..f1dc5e2c33 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptGroupElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptGroupElement02

      +

      <test name='HTMLOptGroupElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptGroupElement02</title> +
                <creator>NIST</creator> +
                <description> + The label attribute specifies the label assigned to this option group. + + Retrieve the label attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-95806054'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlabel' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optgroup' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"optgroup"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <label interface='HTMLOptGroupElement' obj='testNode' var='vlabel'/>
           <assertEquals actual='vlabel' expected='"Regular Employees"' id='labelLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement01.html new file mode 100644 index 0000000000..a5bfd416f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement01.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement01

      +

      <test name='HTMLOptionElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement01</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute from the first SELECT element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLOptionElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement02.html new file mode 100644 index 0000000000..d5b9c605ed --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement02

      +

      <test name='HTMLOptionElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + a form. + + Retrieve the first OPTION attribute from the second select element and + examine its form element. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-17116503'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='6'/>
           <form interface='HTMLOptionElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement03.html new file mode 100644 index 0000000000..45e90fe106 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement03

      +

      <test name='HTMLOptionElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement03</title> +
                <creator>NIST</creator> +
                <description> + The defaultSelected attribute contains the value of the selected + attribute. + + Retrieve the defaultSelected attribute from the first OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-37770574'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdefaultselected' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <defaultSelected interface='HTMLOptionElement' obj='testNode' var='vdefaultselected'/>
           <assertTrue actual='vdefaultselected' id='defaultSelectedLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement04.html new file mode 100644 index 0000000000..e85f2aced9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement04

      +

      <test name='HTMLOptionElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement04</title> +
                <creator>NIST</creator> +
                <description> + The text attribute contains the text contained within the option element. + + Retrieve the text attribute from the second OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48154426'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtext' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <text interface='HTMLOptionElement' obj='testNode' var='vtext'/>
           <assertEquals actual='vtext' expected='"EMP10002"' id='textLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement05.html new file mode 100644 index 0000000000..4ddfab2f72 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement05.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement05

      +

      <test name='HTMLOptionElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement05</title> +
                <creator>NIST</creator> +
                <description> + The index attribute indicates th index of this OPTION in ints parent + SELECT. + + Retrieve the index attribute from the seventh OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14038413'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='6'/>
           <index interface='HTMLOptionElement' obj='testNode' var='vindex'/>
           <assertEquals actual='vindex' expected='1' id='indexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement06.html new file mode 100644 index 0000000000..2e27c7dc71 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement06

      +

      <test name='HTMLOptionElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement06</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute indicates that this control is not available + within this context. + + Retrieve the disabled attribute from the last OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23482473'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='9'/>
           <disabled interface='HTMLOptionElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement07.html new file mode 100644 index 0000000000..0d85407a62 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement07

      +

      <test name='HTMLOptionElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement07</title> +
                <creator>NIST</creator> +
                <description> + The label attribute is used in hierarchical menus. It specifies + a shorter label for an option that the content of the OPTION element. + + Retrieve the label attribute from the second OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40736115'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlabel' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <label interface='HTMLOptionElement' obj='testNode' var='vlabel'/>
           <assertEquals actual='vlabel' expected='"l1"' id='labelLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement08.html new file mode 100644 index 0000000000..8d82008f85 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement08.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement08

      +

      <test name='HTMLOptionElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement08</title> +
                <creator>NIST</creator> +
                <description> + The selected attribute indicates the current state of the corresponding + form control in an interactive user-agent. + + Retrieve the selected attribute from the first OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70874476'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vselected' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <defaultSelected interface='HTMLOptionElement' obj='testNode' var='vselected'/>
           <assertTrue actual='vselected' id='selectedLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement09.html new file mode 100644 index 0000000000..692da1686f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionElement09

      +

      <test name='HTMLOptionElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLOptionElement09</title> +
                <creator>NIST</creator> +
                <description> + The value attribute contains the current form control value. + + Retrieve the value attribute from the first OPTION element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6185554'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='option' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"option"'/>
           <assertSize collection='nodeList' size='10' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLOptionElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"10001"' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection01.html new file mode 100644 index 0000000000..01fd99e8ae --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection01.html @@ -0,0 +1,144 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection01

      +

      <test name='HTMLOptionsCollection01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection01</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + The length attribute specifies the length or size of the list. + + Retrieve the first SELECT element and create a HTMLOptionsCollection + of the OPTION elements. Check the size of the length of OPTION elements. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-length'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsList' type='HTMLOptionsCollection'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <options interface='HTMLSelectElement' obj='testNode' var='optionsList'/>
           <length interface='HTMLOptionsCollection' obj='optionsList' var='vlength'/>
           <assertEquals actual='vlength' expected='5' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection02.html new file mode 100644 index 0000000000..c08d936743 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection02.html @@ -0,0 +1,157 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection02

      +

      <test name='HTMLOptionsCollection02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection02</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test ordinal index=3). + The item() method retrieves a node specified by ordinal index. + Nodes are numbered in tree order. The index origin is 0. + + Retrieve the first SELECT element. Create a HTMLOptionsCollection. + Retrieve the fourth item in the list and examine its firstChild's + nodeValue. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='optionsValueNode' type='Node'/>
           <var name='optionsList' type='HTMLOptionsCollection'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <options interface='HTMLSelectElement' obj='testNode' var='optionsList'/>
           <item interface='HTMLOptionsCollection' obj='optionsList' var='optionsNode' index='3'/>
           <firstChild interface='Node' obj='optionsNode' var='optionsValueNode'/>
           <nodeValue obj='optionsValueNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"EMP10004"' id='valueIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection03.html new file mode 100644 index 0000000000..5796b4878f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection03.html @@ -0,0 +1,158 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection03

      +

      <test name='HTMLOptionsCollection03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection03</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test node name). + The namedItem method retrieves a Node using a name. It first searches + for a node with a matching id attribute. If it doesn't find one, it + then searches for a Node with a matching name attribute, but only + those elements that are allowed a name attribute. + + Retrieve the first FORM element. Create a HTMLCollection of the elements. + Search for an element that has select1 as the value for the name attribute. + Get the nodeName of that element. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem interface='HTMLOptionsCollection' obj='formsnodeList' var='optionsNode' name='"select1"'/>
           <nodeName obj='optionsNode' var='vname'/>
           <assertEquals actual='vname' expected='"select"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection04.html new file mode 100644 index 0000000000..a759055091 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection04.html @@ -0,0 +1,158 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection04

      +

      <test name='HTMLOptionsCollection04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection04</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test node name). + The namedItem method retrieves a Node using a name. It first searches + for a node with a matching id attribute. If it doesn't find one, it + then searches for a Node with a matching name attribute, but only + those elements that are allowed a name attribute. + + Retrieve the first FORM element. Create a HTMLCollection of the elements. + Search for an element that has selectId as the value for the id attribute. + Get the nodeName of that element. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem interface='HTMLOptionsCollection' obj='formsnodeList' var='optionsNode' name='"selectId"'/>
           <nodeName obj='optionsNode' var='vname'/>
           <assertEquals actual='vname' expected='"select"' id='nameIndexLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection05.html new file mode 100644 index 0000000000..46922420f9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection05.html @@ -0,0 +1,160 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection05

      +

      <test name='HTMLOptionsCollection05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection05</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test node name). + The namedItem method retrieves a Node using a name. It first searches + for a node with a matching id attribute. If it doesn't find one, it + then searches for a Node with a matching name attribute, but only + those elements that are allowed a name attribute. Upon failure(e.q., no + node with this name exists), returns null. + + Retrieve the first FORM element. Create a HTMLCollection of the elements. + Search for an element that has select9 as the value for the name attribute. + Null should be returned since there is not any name or id attribute with + select9 as a value. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-namedItem'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='formsnodeList' type='HTMLCollection'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"form"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <elements interface='HTMLFormElement' obj='testNode' var='formsnodeList'/>
           <namedItem interface='HTMLOptionsCollection' obj='formsnodeList' var='optionsNode' name='"select9"'/>
           <assertNull actual='optionsNode' id='nameIndexLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection06.html new file mode 100644 index 0000000000..d3638d4d00 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection06.html @@ -0,0 +1,153 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection06

      +

      <test name='HTMLOptionsCollection06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection06</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test ordinal index). + The item() method retrieves a node specified by ordinal index. + A value of null is returned if the index is out of range. + + Retrieve the first SELECT element. Create a HTMLOptionsCollection. + Retrieve the tenth item in the list - null should be returned since + there are not 10 items in the list. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='optionsValueNode' type='Node'/>
           <var name='optionsList' type='HTMLOptionsCollection'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <options interface='HTMLSelectElement' obj='testNode' var='optionsList'/>
           <item interface='HTMLOptionsCollection' obj='optionsList' var='optionsNode' index='10'/>
           <assertNull actual='optionsNode' id='optionsIndexLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection07.html new file mode 100644 index 0000000000..b41c12c6b9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLOptionsCollection07.html @@ -0,0 +1,157 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLOptionsCollection07

      +

      <test name='HTMLOptionsCollection07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLOptionsCollection07</title> +
                <creator>NIST</creator> +
                <description> + An HTMLOptionsCollection is a list of nodes representing HTML option + element. + An individual node may be accessed by either ordinal index, the node's + name or id attributes. (Test ordinal index=0). + The item() method retrieves a node specified by ordinal index. Nodes + are numbered in tree order. The index origin is 0. + + Retrieve the first SELECT element. Create a HTMLOptionsCollection. + Retrieve the first item in the list and examine its firstChild's + nodeValue. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-08-01</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTMLOptionsCollection-item'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='optionsNode' type='Node'/>
           <var name='optionsValueNode' type='Node'/>
           <var name='optionsList' type='HTMLOptionsCollection'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='optionscollection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <options interface='HTMLSelectElement' obj='testNode' var='optionsList'/>
           <item interface='HTMLOptionsCollection' obj='optionsList' var='optionsNode' index='0'/>
           <firstChild interface='Node' obj='optionsNode' var='optionsValueNode'/>
           <nodeValue obj='optionsValueNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"EMP10001"' id='valueIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLParagraphElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLParagraphElement01.html new file mode 100644 index 0000000000..3c47050e96 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLParagraphElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParagraphElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParagraphElement01

      +

      <test name='HTMLParagraphElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLParagraphElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal text alignment. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53465507'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='paragraph' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"p"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLParagraphElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement01.html new file mode 100644 index 0000000000..ba01514f72 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement01

      +

      <test name='HTMLParamElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLParamElement01</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the name of the run-time parameter. + + Retrieve the name attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59871447'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='param' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"param"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLParamElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"image3"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement02.html new file mode 100644 index 0000000000..c79cac1946 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement02

      +

      <test name='HTMLParamElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLParamElement02</title> +
                <creator>NIST</creator> +
                <description> + The value attribute specifies the value of the run-time parameter. + + Retrieve the value attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77971357'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='param' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"param"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLParamElement' obj='testNode' var='vvalue'/>
           <assertURIEquals actual='vvalue' file='"file.gif"' id='valueLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement03.html new file mode 100644 index 0000000000..5a65288e1f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement03

      +

      <test name='HTMLParamElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLParamElement03</title> +
                <creator>NIST</creator> +
                <description> + The valueType attribute specifies information about the meaning of the + value specified by the value attribute. + + Retrieve the valueType attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23931872'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvaluetype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='param' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"param"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <valueType interface='HTMLParamElement' obj='testNode' var='vvaluetype'/>
           <assertEquals actual='vvaluetype' expected='"ref"' id='valueTypeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement04.html new file mode 100644 index 0000000000..a22a8f6982 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLParamElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLParamElement04

      +

      <test name='HTMLParamElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLParamElement04</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the content type for the value attribute + when valuetype has the value ref. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18179888'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='param' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"param"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLParamElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"image/gif"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLPreElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLPreElement01.html new file mode 100644 index 0000000000..806a0b4544 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLPreElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLPreElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLPreElement01

      +

      <test name='HTMLPreElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLPreElement01</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the fixed width for content. + + Retrieve the width attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13894083'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='pre' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"pre"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLPreElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='277' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement01.html new file mode 100644 index 0000000000..7a18ed3b89 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement01

      +

      <test name='HTMLQuoteElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLQuoteElement01</title> +
                <creator>NIST</creator> +
                <description> + The cite attribute specifies a URI designating a source document + or message. + + Retrieve the cite attribute from the Q element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcite' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='quote' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"q"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cite interface='HTMLQuoteElement' obj='testNode' var='vcite'/>
           <assertURIEquals actual='vcite' file='"Q.html"' id='citeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement02.html new file mode 100644 index 0000000000..d26872b8f8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLQuoteElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLQuoteElement02

      +

      <test name='HTMLQuoteElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLQuoteElement02</title> +
                <creator>NIST</creator> +
                <description> + The cite attribute specifies a URI designating a source document + or message. + + Retrieve the cite attribute from the BLOCKQUOTE element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53895598'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcite' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='quote' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"blockquote"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cite interface='HTMLQuoteElement' obj='testNode' var='vcite'/>
           <assertURIEquals actual='vcite' file='"BLOCKQUOTE.html"' id='citeLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement01.html new file mode 100644 index 0000000000..43e488f372 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement01

      +

      <test name='HTMLScriptElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement01</title> +
                <creator>NIST</creator> +
                <description> + The text attribute specifies the script content of the element. + + Retrieve the text attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46872999'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtext' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <text interface='HTMLScriptElement' obj='testNode' var='vtext'/>
           <assertEquals actual='vtext' expected='"var a=2;"' id='textLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement02.html new file mode 100644 index 0000000000..45613a60f0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement02

      +

      <test name='HTMLScriptElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement02</title> +
                <creator>NIST</creator> +
                <description> + The charset attribute specifies the character encoding of the linked + resource. + + Retrieve the charset attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-35305677'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharset' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <charset interface='HTMLScriptElement' obj='testNode' var='vcharset'/>
           <assertEquals actual='vcharset' expected='"US-ASCII"' id='charsetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement03.html new file mode 100644 index 0000000000..db02ff8e4e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement03

      +

      <test name='HTMLScriptElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement03</title> +
                <creator>NIST</creator> +
                <description> + The defer attribute specifies the user agent can defer processing of + the script. + + Retrieve the defer attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93788534'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdefer' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <defer interface='HTMLScriptElement' obj='testNode' var='vdefer'/>
           <assertTrue actual='vdefer' id='deferLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement04.html new file mode 100644 index 0000000000..5d509e4982 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement04.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement04

      +

      <test name='HTMLScriptElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement04</title> +
                <creator>NIST</creator> +
                <description> + The src attribute specifies a URI designating an external script. + + Retrieve the src attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-75147231'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsrc' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <src interface='HTMLScriptElement' obj='testNode' var='vsrc'/>
           <assertURIEquals actual='vsrc' file='"script1.js"' id='srcLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement05.html new file mode 100644 index 0000000000..a36529b3e1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement05.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement05

      +

      <test name='HTMLScriptElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement05</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the content of the script language. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30534818'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLScriptElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"text/javaScript"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement06.html new file mode 100644 index 0000000000..9609977cbc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement06.html @@ -0,0 +1,128 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement06

      +

      <test name='HTMLScriptElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement06</title> +
                <creator>Curt Arnold</creator> +
                <description> +htmlFor is described as for future use. Test accesses the value, but makes no assertions about its value. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66979266'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='htmlFor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <htmlFor interface='HTMLScriptElement' obj='testNode' var='htmlFor'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement07.html new file mode 100644 index 0000000000..6fad56b2f0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLScriptElement07.html @@ -0,0 +1,128 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLScriptElement07

      +

      <test name='HTMLScriptElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLScriptElement07</title> +
                <creator>Curt Arnold</creator> +
                <description> +event is described as for future use. Test accesses the value, but makes no assertions about its value. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-56700403'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='event' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='script' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"script"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <event interface='HTMLScriptElement' obj='testNode' var='event'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement01.html new file mode 100644 index 0000000000..3c2d78628e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement01

      +

      <test name='HTMLSelectElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement01</title> +
                <creator>NIST</creator> +
                <description> + The type attribute is the string "select-multiple" when multiple + attribute is true. + + Retrieve the type attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58783172'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLSelectElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"select-multiple"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement02.html new file mode 100644 index 0000000000..ca1d52fc03 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement02

      +

      <test name='HTMLSelectElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement02</title> +
                <creator>NIST</creator> +
                <description> + The selectedIndex attribute specifies the ordinal index of the selected + option. + + Retrieve the selectedIndex attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vselectedindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='vselectedindex'/>
           <assertEquals actual='vselectedindex' expected='0' id='selectedIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement03.html new file mode 100644 index 0000000000..3fed838e63 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement03.html @@ -0,0 +1,146 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement03

      +

      <test name='HTMLSelectElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement03</title> +
                <creator>NIST</creator> +
                <description> + The selectedIndex attribute specifies the ordinal index of the selected + option. If no element is selected -1 is returned. + + Retrieve the selectedIndex attribute from the second SELECT element and + examine its value. + + Per http://www.w3.org/TR/html401/interact/forms.html#h-17.6.1, + without an explicit selected attribute, user agent behavior is + undefined. There is no way to coerce no option to be selected. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-85676760'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vselectedindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='vselectedindex'/>
           <!-- Commented assertion per section 17.6.3 -->
           <!-- assertEquals actual="vselectedindex" expected="-1" id="selectedIndexLink" ignoreCase="false"/ -->
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement04.html new file mode 100644 index 0000000000..6300196dd9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement04

      +

      <test name='HTMLSelectElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement04</title> +
                <creator>NIST</creator> +
                <description> + The value attribute specifies the current form control value. + + Retrieve the value attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59351919'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLSelectElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"EMP1"' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement05.html new file mode 100644 index 0000000000..a81c6bca81 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement05

      +

      <test name='HTMLSelectElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement05</title> +
                <creator>NIST</creator> +
                <description> + The length attribute specifies the number of options in this select. + + Retrieve the length attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5933486'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vlength' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <length interface='HTMLSelectElement' obj='testNode' var='vlength'/>
           <assertEquals actual='vlength' expected='5' id='lengthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement06.html new file mode 100644 index 0000000000..bf90e3aa10 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement06.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement06

      +

      <test name='HTMLSelectElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement06</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute from the first SELECT element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLSelectElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement07.html new file mode 100644 index 0000000000..0bcaef7c5b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement07

      +

      <test name='HTMLSelectElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement07</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + a form. + + Retrieve the second SELECT element and + examine its form element. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20489458'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLSelectElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement08.html new file mode 100644 index 0000000000..05d58530ef --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement08.html @@ -0,0 +1,158 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement08

      +

      <test name='HTMLSelectElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement08</title> +
                <creator>NIST</creator> +
                <description> + The options attribute returns a collection of OPTION elements contained + by this element. + + Retrieve the options attribute from the first SELECT element and + examine the items of the returned collection. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30606413'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='optionsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vareas' type='int'/>
           <var name='doc' type='Document'/>
           <var name='optionName' type='DOMString'/>
           <var name='voption' type='Node'/>
           <var name='result' type='List'/>
           <var name='expectedOptions' type='List'>
                <member/>
                <member/>
                <member/>
                <member/>
                <member/>
           </var>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <options interface='HTMLSelectElement' obj='testNode' var='optionsnodeList'/>
           <for-each collection='optionsnodeList' member='voption'>
                <nodeName obj='voption' var='optionName'/>
                <append collection='result' item='optionName'/>
           </for-each>
           <assertEquals actual='result' expected='expectedOptions' id='optionsLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement09.html new file mode 100644 index 0000000000..268628c7f0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement09.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement09

      +

      <test name='HTMLSelectElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement09</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute indicates that this control is not available + within this context. + + Retrieve the disabled attribute from the third SELECT element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79102918'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <disabled interface='HTMLSelectElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement10.html new file mode 100644 index 0000000000..875bed5983 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement10

      +

      <test name='HTMLSelectElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement10</title> +
                <creator>NIST</creator> +
                <description> + The multiple attribute(if true) indicates that multiple OPTION elements + may be selected + + Retrieve the multiple attribute from the first SELECT element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13246613'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmultiple' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <multiple interface='HTMLSelectElement' obj='testNode' var='vmultiple'/>
           <assertTrue actual='vmultiple' id='multipleLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement11.html new file mode 100644 index 0000000000..7594a3bb72 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement11

      +

      <test name='HTMLSelectElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement11</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the form control or object name when + submitted with a form. + + Retrieve the name attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-41636323'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLSelectElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"select1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement12.html new file mode 100644 index 0000000000..803b7953d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement12.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement12

      +

      <test name='HTMLSelectElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement12</title> +
                <creator>NIST</creator> +
                <description> + The size attribute specifies the number of visible rows. + + Retrieve the size attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18293826'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsize' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <size interface='HTMLSelectElement' obj='testNode' var='vsize'/>
           <assertEquals actual='vsize' expected='1' id='sizeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement13.html new file mode 100644 index 0000000000..7e79e15d11 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement13.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement13

      +

      <test name='HTMLSelectElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement13</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute specifies an index that represents the elements + position in the tabbing order. + + Retrieve the tabIndex attribute from the first SELECT element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40676705'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLSelectElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='7' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement14.html new file mode 100644 index 0000000000..cf63a9f0c4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement14.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement14

      +

      <test name='HTMLSelectElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement14</title> +
                <creator>Curt Arnold</creator> +
                <description> +focus should give the select element input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-32130014'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <focus interface='HTMLSelectElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement15.html new file mode 100644 index 0000000000..ada148e6d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement15.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement15

      +

      <test name='HTMLSelectElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement15</title> +
                <creator>Curt Arnold</creator> +
                <description> +blur should surrender input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-28216144'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <blur interface='HTMLSelectElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement16.html new file mode 100644 index 0000000000..f829270ce0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement16.html @@ -0,0 +1,134 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement16

      +

      <test name='HTMLSelectElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement16</title> +
                <creator>Curt Arnold</creator> +
                <description> +Removes an option using HTMLSelectElement.remove. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='optLength' type='int'/>
           <var name='selected' type='int'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <remove interface='HTMLSelectElement' obj='testNode' index='0'/>
           <length interface='HTMLSelectElement' obj='testNode' var='optLength'/>
           <assertEquals actual='optLength' expected='4' id='optLength' ignoreCase='false'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='selected'/>
           <assertEquals actual='selected' expected='-1' id='selected' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement17.html new file mode 100644 index 0000000000..8090af6a93 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement17.html @@ -0,0 +1,134 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement17

      +

      <test name='HTMLSelectElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement17</title> +
                <creator>Curt Arnold</creator> +
                <description> +Removes a non-existant option using HTMLSelectElement.remove. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-33404570'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='optLength' type='int'/>
           <var name='selected' type='int'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <remove interface='HTMLSelectElement' obj='testNode' index='6'/>
           <length interface='HTMLSelectElement' obj='testNode' var='optLength'/>
           <assertEquals actual='optLength' expected='5' id='optLength' ignoreCase='false'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='selected'/>
           <assertEquals actual='selected' expected='0' id='selected' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement18.html new file mode 100644 index 0000000000..c5839fcfa9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement18.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement18

      +

      <test name='HTMLSelectElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement18</title> +
                <creator>Curt Arnold</creator> +
                <description> +Add a new option at the end of an select using HTMLSelectElement.add. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='optLength' type='int'/>
           <var name='selected' type='int'/>
           <var name='newOpt' type='Element'/>
           <var name='newOptText' type='Text'/>
           <var name='opt' type='Element'/>
           <var name='optText' type='Text'/>
           <var name='optValue' type='DOMString'/>
           <var name='retNode' type='Node'/>
           <var name='nullNode' type='Node' isNull='true'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <createElement var='newOpt' obj='doc' tagName='"option"'/>
           <createTextNode var='newOptText' obj='doc' data='"EMP31415"'/>
           <appendChild var='retNode' obj='newOpt' newChild='newOptText'/>
           <add interface='HTMLSelectElement' obj='testNode' element='newOpt' before='nullNode'/>
           <length interface='HTMLSelectElement' obj='testNode' var='optLength'/>
           <assertEquals actual='optLength' expected='6' id='optLength' ignoreCase='false'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='selected'/>
           <assertEquals actual='selected' expected='0' id='selected' ignoreCase='false'/>
           <lastChild var='opt' obj='testNode' interface='Node'/>
           <firstChild var='optText' obj='opt' interface='Node'/>
           <nodeValue var='optValue' obj='optText'/>
           <assertEquals actual='optValue' expected='"EMP31415"' id='lastValue' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement19.html new file mode 100644 index 0000000000..ea8b546d84 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement19.html @@ -0,0 +1,156 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement19

      +

      <test name='HTMLSelectElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLSelectElement19</title> +
                <creator>Curt Arnold</creator> +
                <description> +Add a new option before the selected node using HTMLSelectElement.add. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14493106'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='optLength' type='int'/>
           <var name='selected' type='int'/>
           <var name='newOpt' type='Element'/>
           <var name='newOptText' type='Text'/>
           <var name='opt' type='Element'/>
           <var name='optText' type='Text'/>
           <var name='optValue' type='DOMString'/>
           <var name='retNode' type='Node'/>
           <var name='options' type='HTMLCollection'/>
           <var name='selectedNode' type='Node'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <createElement var='newOpt' obj='doc' tagName='"option"'/>
           <createTextNode var='newOptText' obj='doc' data='"EMP31415"'/>
           <appendChild var='retNode' obj='newOpt' newChild='newOptText'/>
           <options var='options' obj='testNode'/>
           <item var='selectedNode' obj='options' index='0' interface='HTMLCollection'/>
           <add interface='HTMLSelectElement' obj='testNode' element='newOpt' before='selectedNode'/>
           <length interface='HTMLSelectElement' obj='testNode' var='optLength'/>
           <assertEquals actual='optLength' expected='6' id='optLength' ignoreCase='false'/>
           <selectedIndex interface='HTMLSelectElement' obj='testNode' var='selected'/>
           <assertEquals actual='selected' expected='1' id='selected' ignoreCase='false'/>
           <options var='options' obj='testNode'/>
           <item var='opt' obj='options' index='0' interface='HTMLCollection'/>
           <firstChild var='optText' obj='opt' interface='Node'/>
           <nodeValue var='optValue' obj='optText'/>
           <assertEquals actual='optValue' expected='"EMP31415"' id='lastValue' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement20.html new file mode 100644 index 0000000000..328319679d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLSelectElement20.html @@ -0,0 +1,153 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLSelectElement20

      +

      <test name='HTMLSelectElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLSelectElement20</title> +
                <creator>Curt Arnold</creator> +
                <description> +Attempting to add an new option using HTMLSelectElement.add before a node that is not a child of the select +element should raise a NOT_FOUND_ERR. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-14493106'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='optLength' type='int'/>
           <var name='selected' type='int'/>
           <var name='newOpt' type='Element'/>
           <var name='newOptText' type='Text'/>
           <var name='retNode' type='Node'/>
           <var name='options' type='HTMLCollection'/>
           <var name='otherSelect' type='Element'/>
           <var name='selectedNode' type='Node'/>
           <load var='doc' href='select' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"select"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <item interface='NodeList' obj='nodeList' var='otherSelect' index='1'/>
           <createElement var='newOpt' obj='doc' tagName='"option"'/>
           <createTextNode var='newOptText' obj='doc' data='"EMP31415"'/>
           <appendChild var='retNode' obj='newOpt' newChild='newOptText'/>
           <options var='options' obj='otherSelect'/>
           <item var='selectedNode' obj='options' index='0' interface='HTMLCollection'/>
           <assertDOMException id='throw_NOT_FOUND_ERR'>
                <NOT_FOUND_ERR>
                     <add interface='HTMLSelectElement' obj='testNode' element='newOpt' before='selectedNode'/>
                </NOT_FOUND_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement01.html new file mode 100644 index 0000000000..d7d0299df3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement01

      +

      <test name='HTMLStyleElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLStyleElement01</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute enables/disables the stylesheet. + + Retrieve the disabled attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51162010'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='style' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"style"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <disabled interface='HTMLStyleElement' obj='testNode' var='vdisabled'/>
           <assertFalse actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement02.html new file mode 100644 index 0000000000..2d3836e30a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement02

      +

      <test name='HTMLStyleElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLStyleElement02</title> +
                <creator>NIST</creator> +
                <description> + The media attribute identifies the intended medium of the style info. + + Retrieve the media attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76412738'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vmedia' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='style' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"style"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <media interface='HTMLStyleElement' obj='testNode' var='vmedia'/>
           <assertEquals actual='vmedia' expected='"screen"' id='mediaLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement03.html new file mode 100644 index 0000000000..085162e8a2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLStyleElement03.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLStyleElement03

      +

      <test name='HTMLStyleElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLStyleElement03</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the style sheet language(Internet media type). + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22472002'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='style' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"style"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLStyleElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"text/css"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCaptionElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCaptionElement01.html new file mode 100644 index 0000000000..1c14c4efe7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCaptionElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCaptionElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCaptionElement01

      +

      <test name='HTMLTableCaptionElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCaptionElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the caption alignment with respect to + the table. + + Retrieve the align attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79875068'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecaption' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"caption"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableCaptionElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement01.html new file mode 100644 index 0000000000..6ba550abcb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement01

      +

      <test name='HTMLTableCellElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement01</title> +
                <creator>NIST</creator> +
                <description> + The cellIndex attribute specifies the index of this cell in the row(TH). + + Retrieve the cellIndex attribute of the first TH element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcellindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cellIndex interface='HTMLTableCellElement' obj='testNode' var='vcellindex'/>
           <assertEquals actual='vcellindex' expected='0' id='cellIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement02.html new file mode 100644 index 0000000000..ae0f5cc064 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement02.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement02

      +

      <test name='HTMLTableCellElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement02</title> +
                <creator>NIST</creator> +
                <description> + The cellIndex attribute specifies the index of this cell in the row(TD). + + Retrieve the cellIndex attribute of the first TD element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcellindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cellIndex interface='HTMLTableCellElement' obj='testNode' var='vcellindex'/>
           <assertEquals actual='vcellindex' expected='0' id='cellIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement03.html new file mode 100644 index 0000000000..f4f4ecacbe --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement03.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement03

      +

      <test name='HTMLTableCellElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement03</title> +
                <creator>NIST</creator> +
                <description> + The abbr attribute specifies the abbreviation for table header cells(TH). + + Retrieve the abbr attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vabbr' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <abbr interface='HTMLTableCellElement' obj='testNode' var='vabbr'/>
           <assertEquals actual='vabbr' expected='"hd1"' id='abbrLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement04.html new file mode 100644 index 0000000000..0a4bc172a3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement04.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement04

      +

      <test name='HTMLTableCellElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement04</title> +
                <creator>NIST</creator> +
                <description> + The abbr attribute specifies the abbreviation for table data cells(TD). + + Retrieve the abbr attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vabbr' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <abbr interface='HTMLTableCellElement' obj='testNode' var='vabbr'/>
           <assertEquals actual='vabbr' expected='"hd2"' id='abbrLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement05.html new file mode 100644 index 0000000000..2bc8733184 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement05.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement05

      +

      <test name='HTMLTableCellElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement05</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment for table + header cells(TH). + + Retrieve the align attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableCellElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement06.html new file mode 100644 index 0000000000..bca537692b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement06

      +

      <test name='HTMLTableCellElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement06</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment for table + data cells(TD). + + Retrieve the align attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableCellElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement07.html new file mode 100644 index 0000000000..56ff764300 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement07

      +

      <test name='HTMLTableCellElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement07</title> +
                <creator>NIST</creator> +
                <description> + The axis attribute specifies the names group of related headers for table + header cells(TH). + + Retrieve the align attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaxis' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <axis interface='HTMLTableCellElement' obj='testNode' var='vaxis'/>
           <assertEquals actual='vaxis' expected='"center"' id='axisLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement08.html new file mode 100644 index 0000000000..d8ef6e2c7b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement08.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement08

      +

      <test name='HTMLTableCellElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement08</title> +
                <creator>NIST</creator> +
                <description> + The axis attribute specifies the names group of related headers for table + data cells(TD). + + Retrieve the axis attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaxis' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <axis interface='HTMLTableCellElement' obj='testNode' var='vaxis'/>
           <assertEquals actual='vaxis' expected='"center"' id='axisLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement09.html new file mode 100644 index 0000000000..8e1f04a6b8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement09.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement09

      +

      <test name='HTMLTableCellElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement09</title> +
                <creator>NIST</creator> +
                <description> + The bgColor attribute specifies the cells background color for + table header cells(TH). + + Retrieve the bgColor attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableCellElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#00FFFF"' id='bgColorLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement10.html new file mode 100644 index 0000000000..032bdb4877 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement10

      +

      <test name='HTMLTableCellElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement10</title> +
                <creator>NIST</creator> +
                <description> + The bgColor attribute specifies the cells background color for table + data cells(TD). + + Retrieve the bgColor attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableCellElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#FF0000"' id='bgColorLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement11.html new file mode 100644 index 0000000000..f2ebe30902 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement11

      +

      <test name='HTMLTableCellElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement11</title> +
                <creator>NIST</creator> +
                <description> + The char attribute specifies the alignment character for cells in a column + of table header cells(TH). + + Retrieve the char attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableCellElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='":"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement12.html new file mode 100644 index 0000000000..7b72839190 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement12.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement12

      +

      <test name='HTMLTableCellElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement12</title> +
                <creator>NIST</creator> +
                <description> + The char attribute specifies the alignment character for cells in a column + of table data cells(TD). + + Retrieve the char attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableCellElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='":"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement13.html new file mode 100644 index 0000000000..89bee078a6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement13.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement13

      +

      <test name='HTMLTableCellElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement13</title> +
                <creator>NIST</creator> +
                <description> + The charoff attribute specifies the offset of alignment characacter + of table header cells(TH). + + Retrieve the charoff attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableCellElement' obj='testNode' var='vcharoff'/>
           <assertEquals actual='vcharoff' expected='"1"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement14.html new file mode 100644 index 0000000000..96e0286baf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement14.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement14

      +

      <test name='HTMLTableCellElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement14</title> +
                <creator>NIST</creator> +
                <description> + The charoff attribute specifies the offset of alignment character + of table data cells(TD). + + Retrieve the charoff attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableCellElement' obj='testNode' var='vcharoff'/>
           <assertEquals actual='vcharoff' expected='"1"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement15.html new file mode 100644 index 0000000000..278bb4d8f4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement15.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement15

      +

      <test name='HTMLTableCellElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement15</title> +
                <creator>NIST</creator> +
                <description> + The colSpan attribute specifies the number of columns spanned by a table + header(TH) cell. + + Retrieve the colspan attribute of the second TH element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcolspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <colSpan interface='HTMLTableCellElement' obj='testNode' var='vcolspan'/>
           <assertEquals actual='vcolspan' expected='1' id='colSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement16.html new file mode 100644 index 0000000000..935cb0300e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement16.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement16

      +

      <test name='HTMLTableCellElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement16</title> +
                <creator>NIST</creator> +
                <description> + The colSpan attribute specifies the number of columns spanned by a + table data(TD) cell. + + Retrieve the colSpan attribute of the second TD element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcolspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <colSpan interface='HTMLTableCellElement' obj='testNode' var='vcolspan'/>
           <assertEquals actual='vcolspan' expected='1' id='colSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement17.html new file mode 100644 index 0000000000..67d5ac17b8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement17.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement17

      +

      <test name='HTMLTableCellElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement17</title> +
                <creator>NIST</creator> +
                <description> + The headers attribute specifies a list of id attribute values for + table header cells(TH). + + Retrieve the headers attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheaders' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <headers interface='HTMLTableCellElement' obj='testNode' var='vheaders'/>
           <assertEquals actual='vheaders' expected='"header-1"' id='headersLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement18.html new file mode 100644 index 0000000000..8e61c56593 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement18.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement18

      +

      <test name='HTMLTableCellElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement18</title> +
                <creator>NIST</creator> +
                <description> + The headers attribute specifies a list of id attribute values for + table data cells(TD). + + Retrieve the headers attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheaders' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <headers interface='HTMLTableCellElement' obj='testNode' var='vheaders'/>
           <assertEquals actual='vheaders' expected='"header-3"' id='headersLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement19.html new file mode 100644 index 0000000000..7d13255cd0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement19.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement19

      +

      <test name='HTMLTableCellElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement19</title> +
                <creator>NIST</creator> +
                <description> + The height attribute specifies the cell height. + + Retrieve the height attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <height interface='HTMLTableCellElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"50"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement20.html new file mode 100644 index 0000000000..249c18aba1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement20.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement20

      +

      <test name='HTMLTableCellElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement20</title> +
                <creator>NIST</creator> +
                <description> + The height attribute specifies the cell height. + + Retrieve the height attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <height interface='HTMLTableCellElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"50"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement21.html new file mode 100644 index 0000000000..639ff2218a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement21.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement21

      +

      <test name='HTMLTableCellElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement21</title> +
                <creator>NIST</creator> +
                <description> + The noWrap attribute supresses word wrapping. + + Retrieve the noWrap attribute of the second TH Element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnowrap' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <noWrap interface='HTMLTableCellElement' obj='testNode' var='vnowrap'/>
           <assertTrue actual='vnowrap' id='noWrapLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement22.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement22.html new file mode 100644 index 0000000000..fb390e2968 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement22.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement22

      +

      <test name='HTMLTableCellElement22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement22</title> +
                <creator>NIST</creator> +
                <description> + The noWrap attribute supresses word wrapping. + + Retrieve the noWrap attribute of the second TD Element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnowrap' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <noWrap interface='HTMLTableCellElement' obj='testNode' var='vnowrap'/>
           <assertTrue actual='vnowrap' id='noWrapLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement23.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement23.html new file mode 100644 index 0000000000..7c885c712e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement23.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement23 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement23

      +

      <test name='HTMLTableCellElement23' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement23</title> +
                <creator>NIST</creator> +
                <description> + The rowSpan attribute specifies the number of rows spanned by a table + header(TH) cell. + + Retrieve the rowSpan attribute of the second TH element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrowspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rowSpan interface='HTMLTableCellElement' obj='testNode' var='vrowspan'/>
           <assertEquals actual='vrowspan' expected='1' id='rowSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement24.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement24.html new file mode 100644 index 0000000000..1031269e79 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement24.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement24 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement24

      +

      <test name='HTMLTableCellElement24' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement24</title> +
                <creator>NIST</creator> +
                <description> + The rowSpan attribute specifies the number of rows spanned by a + table data(TD) cell. + + Retrieve the rowSpan attribute of the second TD element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrowspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rowSpan interface='HTMLTableCellElement' obj='testNode' var='vrowspan'/>
           <assertEquals actual='vrowspan' expected='1' id='rowSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement25.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement25.html new file mode 100644 index 0000000000..b32dec2f73 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement25.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement25 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement25

      +

      <test name='HTMLTableCellElement25' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement25</title> +
                <creator>NIST</creator> +
                <description> + The scope attribute specifies the scope covered by header cells. + + Retrieve the scope attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscope' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <scope interface='HTMLTableCellElement' obj='testNode' var='vscope'/>
           <assertEquals actual='vscope' expected='"col"' id='scopeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement26.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement26.html new file mode 100644 index 0000000000..4d1f179aee --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement26.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement26 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement26

      +

      <test name='HTMLTableCellElement26' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement26</title> +
                <creator>NIST</creator> +
                <description> + The scope attribute specifies the scope covered by data cells. + + Retrieve the scope attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscope' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <scope interface='HTMLTableCellElement' obj='testNode' var='vscope'/>
           <assertEquals actual='vscope' expected='"col"' id='scopeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement27.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement27.html new file mode 100644 index 0000000000..4eae8b05cd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement27.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement27 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement27

      +

      <test name='HTMLTableCellElement27' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement27</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of data in cell. + + Retrieve the vAlign attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableCellElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement28.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement28.html new file mode 100644 index 0000000000..d017964239 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement28.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement28 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement28

      +

      <test name='HTMLTableCellElement28' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement28</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of data in cell. + + Retrieve the vAlign attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableCellElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement29.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement29.html new file mode 100644 index 0000000000..22d5db0034 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement29.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement29 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement29

      +

      <test name='HTMLTableCellElement29' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement29</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the cells width. + + Retrieve the width attribute from the second TH element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"th"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <width interface='HTMLTableCellElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"170"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement30.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement30.html new file mode 100644 index 0000000000..834a3c4f3f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableCellElement30.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement30 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableCellElement30

      +

      <test name='HTMLTableCellElement30' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableCellElement30</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the cells width. + + Retrieve the width attribute from the second TD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <width interface='HTMLTableCellElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"175"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement01.html new file mode 100644 index 0000000000..917fc4f830 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement01

      +

      <test name='HTMLTableColElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of cell data + in column(COL). + + Retrieve the align attribute from the COL element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableColElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement02.html new file mode 100644 index 0000000000..e6795a2ec3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement02

      +

      <test name='HTMLTableColElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement02</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of cell data + in column(COLGROUP). + + Retrieve the align attribute from the COLGROUP element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-31128447'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableColElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement03.html new file mode 100644 index 0000000000..b1e692809e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement03

      +

      <test name='HTMLTableColElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement03</title> +
                <creator>NIST</creator> +
                <description> + The char attribute specifies the alignment character for cells + in a column(COL). + + Retrieve the char attribute from the COL element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <ch interface='HTMLTableColElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement04.html new file mode 100644 index 0000000000..45d6f725b1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement04

      +

      <test name='HTMLTableColElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement04</title> +
                <creator>NIST</creator> +
                <description> + The char attribute specifies the alignment character for cells + in a column(COLGROUP). + + Retrieve the char attribute from the COLGROUP element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9447412'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <ch interface='HTMLTableColElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"$"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement05.html new file mode 100644 index 0000000000..737760b5ba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement05

      +

      <test name='HTMLTableColElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement05</title> +
                <creator>NIST</creator> +
                <description> + The charoff attribute specifies offset of alignment character(COL). + + Retrieve the charoff attribute from the COL element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <chOff interface='HTMLTableColElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"20"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement06.html new file mode 100644 index 0000000000..c485b5f797 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement06.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement06

      +

      <test name='HTMLTableColElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement06</title> +
                <creator>NIST</creator> +
                <description> + The charoff attribute specifies offset of alignment character(COLGROUP). + + Retrieve the charoff attribute from the COLGROUP element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57779225'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <chOff interface='HTMLTableColElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"15"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement07.html new file mode 100644 index 0000000000..090fb95a7c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement07

      +

      <test name='HTMLTableColElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement07</title> +
                <creator>NIST</creator> +
                <description> + The span attribute indicates the number of columns in a group or affected + by a grouping(COL). + + Retrieve the span attribute of the COL element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <span interface='HTMLTableColElement' obj='testNode' var='vspan'/>
           <assertEquals actual='vspan' expected='1' id='spanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement08.html new file mode 100644 index 0000000000..1ab84ef4b0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement08.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement08

      +

      <test name='HTMLTableColElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement08</title> +
                <creator>NIST</creator> +
                <description> + The span attribute indicates the number of columns in a group or affected + by a grouping(COLGROUP). + + Retrieve the span attribute of the COLGROUP element and examine its + value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vspan' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <span interface='HTMLTableColElement' obj='testNode' var='vspan'/>
           <assertEquals actual='vspan' expected='2' id='spanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement09.html new file mode 100644 index 0000000000..9c5294b9ba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement09.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement09

      +

      <test name='HTMLTableColElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement09</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of cell data + in column(COL). + + Retrieve the vAlign attribute from the COL element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vAlign interface='HTMLTableColElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement10.html new file mode 100644 index 0000000000..1d0dbf023d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement10

      +

      <test name='HTMLTableColElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement10</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of cell data + in column(COLGROUP). + + Retrieve the vAlign attribute from the COLGROUP element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vAlign interface='HTMLTableColElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement11.html new file mode 100644 index 0000000000..f4e07af382 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement11.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement11

      +

      <test name='HTMLTableColElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement11</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the default column width(COL). + + Retrieve the width attribute from the COL element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLTableColElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"20"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement12.html new file mode 100644 index 0000000000..685a037ca7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableColElement12.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableColElement12

      +

      <test name='HTMLTableColElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement12</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the default column width(COLGORUP). + + Retrieve the width attribute from the COLGROUP element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"colgroup"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLTableColElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"20"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement01.html new file mode 100644 index 0000000000..7f3f16605c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement01.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement01

      +

      <test name='HTMLTableElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement01</title> +
                <creator>NIST</creator> +
                <description> + The caption attribute returns the tables CAPTION. + + Retrieve the align attribute of the CAPTION element from the second + TABLE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcaption' type='HTMLTableCaptionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vcaption'/>
           <align interface='HTMLTableCaptionElement' obj='vcaption' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement02.html new file mode 100644 index 0000000000..8a888ce495 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement02

      +

      <test name='HTMLTableElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement02</title> +
                <creator>NIST</creator> +
                <description> + The caption attribute returns the tables CAPTION or void if it does not + exist. + + Retrieve the CAPTION element from within the first TABLE element. + Since one does not exist it should be void. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcaption' type='HTMLTableCaptionElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vcaption'/>
           <assertNull actual='vcaption' id='captionLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement03.html new file mode 100644 index 0000000000..9ddb9ee6b5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement03.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement03

      +

      <test name='HTMLTableElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement03</title> +
                <creator>NIST</creator> +
                <description> + The tHead attribute returns the tables THEAD. + + Retrieve the align attribute of the THEAD element from the second + TABLE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement04.html new file mode 100644 index 0000000000..4d2ec31874 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement04

      +

      <test name='HTMLTableElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement04</title> +
                <creator>NIST</creator> +
                <description> + The tHead attribute returns the tables THEAD or null if it does not + exist. + + Retrieve the THEAD element from within the first TABLE element. + Since one does not exist it should be null. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <assertNull actual='vsection' id='sectionLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement05.html new file mode 100644 index 0000000000..98c07400f8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement05.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement05

      +

      <test name='HTMLTableElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement05</title> +
                <creator>NIST</creator> +
                <description> + The tFoot attribute returns the tables TFOOT. + + Retrieve the align attribute of the TFOOT element from the second + TABLE element and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement06.html new file mode 100644 index 0000000000..d78abe3fa8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement06

      +

      <test name='HTMLTableElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement06</title> +
                <creator>NIST</creator> +
                <description> + The tFoot attribute returns the tables TFOOT or null if it does not + exist. + + Retrieve the TFOOT element from within the first TABLE element. + Since one does not exist it should be null. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <assertNull actual='vsection' id='sectionLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement07.html new file mode 100644 index 0000000000..d8d352c141 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement07.html @@ -0,0 +1,156 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement07

      +

      <test name='HTMLTableElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement07</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute returns a collection of all the rows in the table, + including al in THEAD, TFOOT, all TBODY elements. + + Retrieve the rows attribute from the second TABLE element and + examine the items of the returned collection. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6156016'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='rowName' type='DOMString'/>
           <var name='vrow' type='Node'/>
           <var name='result' type='List'/>
           <var name='expectedOptions' type='List'>
                <member/>
                <member/>
                <member/>
                <member/>
           </var>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <for-each collection='rowsnodeList' member='vrow'>
                <nodeName obj='vrow' var='rowName'/>
                <append collection='result' item='rowName'/>
           </for-each>
           <assertEquals actual='result' expected='expectedOptions' id='rowsLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement08.html new file mode 100644 index 0000000000..4863f471f3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement08.html @@ -0,0 +1,153 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement08

      +

      <test name='HTMLTableElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement08</title> +
                <creator>NIST</creator> +
                <description> + The tBodies attribute returns a collection of all the defined + table bodies. + + Retrieve the tBodies attribute from the second TABLE element and + examine the items of the returned collection. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='tbodiesName' type='DOMString'/>
           <var name='vtbodies' type='Node'/>
           <var name='result' type='List'/>
           <var name='expectedOptions' type='List'>
                <member/>
           </var>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <for-each collection='tbodiesnodeList' member='vtbodies'>
                <nodeName obj='vtbodies' var='tbodiesName'/>
                <append collection='result' item='tbodiesName'/>
           </for-each>
           <assertEquals actual='result' expected='expectedOptions' id='tbodiesLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement09.html new file mode 100644 index 0000000000..3a971c920d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement09.html @@ -0,0 +1,157 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement09

      +

      <test name='HTMLTableElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement09</title> +
                <creator>NIST</creator> +
                <description> + The tBodies attribute returns a collection of all the defined + table bodies. + + Retrieve the tBodies attribute from the third TABLE element and + examine the items of the returned collection. Tests multiple TBODY + elements. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63206416'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <var name='tbodiesName' type='DOMString'/>
           <var name='vtbodies' type='Node'/>
           <var name='result' type='List'/>
           <var name='expectedOptions' type='List'>
                <member/>
                <member/>
                <member/>
           </var>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <for-each collection='tbodiesnodeList' member='vtbodies'>
                <nodeName obj='vtbodies' var='tbodiesName'/>
                <append collection='result' item='tbodiesName'/>
           </for-each>
           <assertEquals actual='result' expected='expectedOptions' id='tbodiesLink' ignoreCase='auto'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement10.html new file mode 100644 index 0000000000..b070679933 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement10

      +

      <test name='HTMLTableElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement10</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the table's position with respect to the + rest of the document. + + Retrieve the align attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement11.html new file mode 100644 index 0000000000..08dcfb0cc8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement11.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement11

      +

      <test name='HTMLTableElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement11</title> +
                <creator>NIST</creator> +
                <description> + The bgColor attribute specifies cell background color. + + Retrieve the bgColor attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#ff0000"' id='bgColorLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement12.html new file mode 100644 index 0000000000..773d84d638 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement12.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement12

      +

      <test name='HTMLTableElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement12</title> +
                <creator>NIST</creator> +
                <description> + The border attribute specifies the width of the border around the table. + + Retrieve the border attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vborder' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <border interface='HTMLTableElement' obj='testNode' var='vborder'/>
           <assertEquals actual='vborder' expected='"4"' id='borderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement13.html new file mode 100644 index 0000000000..68c78c1389 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement13.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement13

      +

      <test name='HTMLTableElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement13</title> +
                <creator>NIST</creator> +
                <description> + The cellpadding attribute specifies the horizontal and vertical space + between cell content and cell borders. + + Retrieve the cellpadding attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcellpadding' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <cellPadding interface='HTMLTableElement' obj='testNode' var='vcellpadding'/>
           <assertEquals actual='vcellpadding' expected='"2"' id='cellPaddingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement14.html new file mode 100644 index 0000000000..c63ba0faea --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement14.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement14

      +

      <test name='HTMLTableElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement14</title> +
                <creator>NIST</creator> +
                <description> + The cellSpacing attribute specifies the horizontal and vertical separation + between cells. + + Retrieve the cellSpacing attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='cellSpacing' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <cellSpacing interface='HTMLTableElement' obj='testNode' var='cellSpacing'/>
           <assertEquals actual='cellSpacing' expected='"2"' id='cellSpacingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement15.html new file mode 100644 index 0000000000..8d1b2f7604 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement15.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement15

      +

      <test name='HTMLTableElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement15</title> +
                <creator>NIST</creator> +
                <description> + The frame attribute specifies which external table borders to render. + + Retrieve the frame attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vframe' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <frame interface='HTMLTableElement' obj='testNode' var='vframe'/>
           <assertEquals actual='vframe' expected='"border"' id='frameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement16.html new file mode 100644 index 0000000000..872086b3e2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement16.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement16

      +

      <test name='HTMLTableElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement16</title> +
                <creator>NIST</creator> +
                <description> + The rules attribute specifies which internal table borders to render. + + Retrieve the rules attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrules' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rules interface='HTMLTableElement' obj='testNode' var='vrules'/>
           <assertEquals actual='vrules' expected='"all"' id='rulesLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement17.html new file mode 100644 index 0000000000..afb9bd3f75 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement17.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement17

      +

      <test name='HTMLTableElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement17</title> +
                <creator>NIST</creator> +
                <description> + The summary attribute is a description about the purpose or structure + of a table. + + Retrieve the summary attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsummary' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <summary interface='HTMLTableElement' obj='testNode' var='vsummary'/>
           <assertEquals actual='vsummary' expected='"HTML Control Table"' id='summaryLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement18.html new file mode 100644 index 0000000000..47825f49b8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement18.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement18

      +

      <test name='HTMLTableElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement18</title> +
                <creator>NIST</creator> +
                <description> + The width attribute specifies the desired table width. + + Retrieve the width attribute of the first TABLE element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <width interface='HTMLTableElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"680"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement19.html new file mode 100644 index 0000000000..572d2b963c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement19.html @@ -0,0 +1,149 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement19

      +

      <test name='HTMLTableElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement19</title> +
                <creator>NIST</creator> +
                <description> + The createTHead() method creates a table header row or returns + an existing one. + + Create a new THEAD element on the first TABLE element. The first + TABLE element should return null to make sure one doesn't exist. + After creation of the THEAD element the value is once again + checked and should not be null. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='newHead' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNull actual='vsection1' id='vsection1Id'/>
           <createTHead interface='HTMLTableElement' obj='testNode' var='newHead'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <assertNotNull actual='vsection2' id='vsection2Id'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement20.html new file mode 100644 index 0000000000..ba10424562 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement20.html @@ -0,0 +1,148 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement20

      +

      <test name='HTMLTableElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement20</title> +
                <creator>NIST</creator> +
                <description> + The createTHead() method creates a table header row or returns + an existing one. + + Try to create a new THEAD element on the second TABLE element. + Since a THEAD element already exists in the TABLE element a new + THEAD element is not created and information from the already + existing THEAD element is returned. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70313345'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='newHead' type='HTMLElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <createTHead interface='HTMLTableElement' obj='testNode' var='newHead'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement21.html new file mode 100644 index 0000000000..a10acbf56e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement21.html @@ -0,0 +1,164 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement21

      +

      <test name='HTMLTableElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement21</title> +
                <creator>NIST</creator> +
                <description> + The deleteTHead() method deletes the header from the table. + + The deleteTHead() method will delete the THEAD Element from the + second TABLE element. First make sure that the THEAD element exists + and then count the number of rows. After the THEAD element is + deleted there should be one less row. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38310198'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableElement'/>
           <var name='vsection2' type='HTMLTableElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <var name='result' type='List'/>
           <var name='expectedResult' type='List'>
                <member/>
                <member/>
           </var>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNotNull actual='vsection1' id='vsection1Id'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <append collection='result' item='vrows'/>
           <deleteTHead obj='testNode' interface='HTMLTableElement'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <append collection='result' item='vrows'/>
           <assertEquals actual='result' expected='expectedResult' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement22.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement22.html new file mode 100644 index 0000000000..234280236a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement22.html @@ -0,0 +1,149 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement22

      +

      <test name='HTMLTableElement22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement22</title> +
                <creator>NIST</creator> +
                <description> + The createTFoot() method creates a table footer row or returns + an existing one. + + Create a new TFOOT element on the first TABLE element. The first + TABLE element should return null to make sure one doesn't exist. + After creation of the TFOOT element the value is once again + checked and should not be null. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='newFoot' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNull actual='vsection1' id='vsection1Id'/>
           <createTFoot interface='HTMLTableElement' obj='testNode' var='newFoot'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <assertNotNull actual='vsection2' id='vsection2Id'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement23.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement23.html new file mode 100644 index 0000000000..773012256e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement23.html @@ -0,0 +1,148 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement23 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement23

      +

      <test name='HTMLTableElement23' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement23</title> +
                <creator>NIST</creator> +
                <description> + The createTFoot() method creates a table footer row or returns + an existing one. + + Try to create a new TFOOT element on the second TABLE element. + Since a TFOOT element already exists in the TABLE element a new + TFOOT element is not created and information from the already + existing TFOOT element is returned. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8453710'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='newFoot' type='HTMLElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <createTFoot interface='HTMLTableElement' obj='testNode' var='newFoot'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement24.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement24.html new file mode 100644 index 0000000000..c87461a1ab --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement24.html @@ -0,0 +1,164 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement24 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement24

      +

      <test name='HTMLTableElement24' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement24</title> +
                <creator>NIST</creator> +
                <description> + The deleteTFoot() method deletes the footer from the table. + + The deleteTFoot() method will delete the TFOOT Element from the + second TABLE element. First make sure that the TFOOT element exists + and then count the number of rows. After the TFOOT element is + deleted there should be one less row. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-78363258'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableElement'/>
           <var name='vsection2' type='HTMLTableElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <var name='result' type='List'/>
           <var name='expectedResult' type='List'>
                <member/>
                <member/>
           </var>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNotNull actual='vsection1' id='vsection1Id'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <append collection='result' item='vrows'/>
           <deleteTFoot obj='testNode' interface='HTMLTableElement'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <append collection='result' item='vrows'/>
           <assertEquals actual='result' expected='expectedResult' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement25.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement25.html new file mode 100644 index 0000000000..5b0c03ee2e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement25.html @@ -0,0 +1,145 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement25 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement25

      +

      <test name='HTMLTableElement25' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement25</title> +
                <creator>NIST</creator> +
                <description> + The createCaption() method creates a new table caption object or returns + an existing one. + + Create a new CAPTION element on the first TABLE element. Since + one does not currently exist the CAPTION element is created. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableCaptionElement'/>
           <var name='vsection2' type='HTMLTableCaptionElement'/>
           <var name='newCaption' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNull actual='vsection1' id='vsection1Id'/>
           <createCaption interface='HTMLTableElement' obj='testNode' var='newCaption'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <assertNotNull actual='vsection2' id='vsection2Id'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement26.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement26.html new file mode 100644 index 0000000000..68807e72aa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement26.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement26 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement26

      +

      <test name='HTMLTableElement26' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement26</title> +
                <creator>NIST</creator> +
                <description> + The createCaption() method creates a new table caption object or returns + an existing one. + + Create a new CAPTION element on the first TABLE element. Since + one currently exists the CAPTION element is not created and you + can get the align attribute from the CAPTION element that exists. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96920263'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vcaption' type='HTMLTableCaptionElement'/>
           <var name='newCaption' type='HTMLElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNotNull actual='vsection1' id='vsection1Id'/>
           <createCaption interface='HTMLTableElement' obj='testNode' var='newCaption'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vcaption'/>
           <align interface='HTMLTableCaptionElement' obj='vcaption' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement27.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement27.html new file mode 100644 index 0000000000..33a09d04c2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement27.html @@ -0,0 +1,141 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement27 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement27

      +

      <test name='HTMLTableElement27' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement27</title> +
                <creator>NIST</creator> +
                <description> + The deleteCaption() method deletes the table caption. + + Delete the CAPTION element on the second TABLE element. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-22930071'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <assertNotNull actual='vsection1' id='vsection1Id'/>
           <deleteCaption interface='HTMLTableElement' obj='testNode'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <assertNull actual='vsection2' id='vsection2Id'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement28.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement28.html new file mode 100644 index 0000000000..5be023fcad --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement28.html @@ -0,0 +1,159 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement28 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement28

      +

      <test name='HTMLTableElement28' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement28</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the second TABLE element and invoke the insertRow() method + with an index of 0. Currently the zero indexed row is in the THEAD + section of the TABLE. The number of rows in the THEAD section before + insertion of the new row is one. After the new row is inserted the number + of rows in the THEAD section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <rows interface='HTMLTableSectionElement' obj='vsection1' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='0'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection2'/>
           <rows interface='HTMLTableSectionElement' obj='vsection2' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement29.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement29.html new file mode 100644 index 0000000000..7dc54e90e3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement29.html @@ -0,0 +1,163 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement29 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement29

      +

      <test name='HTMLTableElement29' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement29</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the second TABLE element and invoke the insertRow() method + with an index of two. Currently the 2nd indexed row is in the TBODY + section of the TABLE. The number of rows in the TBODY section before + insertion of the new row is two. After the new row is inserted the number + of rows in the TBODY section is three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='bodyNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <item interface='HTMLCollection' obj='tbodiesnodeList' var='bodyNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='bodyNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='2'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <item interface='HTMLCollection' obj='tbodiesnodeList' var='bodyNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='bodyNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement30.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement30.html new file mode 100644 index 0000000000..5dd3835ae3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement30.html @@ -0,0 +1,171 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement30 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement30

      +

      <test name='HTMLTableElement30' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement30</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the second TABLE element and invoke the insertRow() method + with an index of four. After the new row is inserted the number of rows + in the table should be five. + Also the number of rows in the TFOOT section before + insertion of the new row is one. After the new row is inserted the number + of rows in the TFOOT section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='4' id='rowsLink1' ignoreCase='false'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <rows interface='HTMLTableSectionElement' obj='vsection1' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink' ignoreCase='false'/>
           <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='4'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='5' id='rowsLink2' ignoreCase='false'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection1'/>
           <rows interface='HTMLTableSectionElement' obj='vsection1' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink3' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement31.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement31.html new file mode 100644 index 0000000000..6d6138c774 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement31.html @@ -0,0 +1,169 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement31 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement31

      +

      <test name='HTMLTableElement31' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement31</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. In addition, when + the table is empty the row is inserted into a TBODY which is created + and inserted into the table. + + Load the table1 file which has a non-empty table element. + Create an empty TABLE element and append to the document. + Check to make sure that the empty TABLE element doesn't + have a TBODY element. Insert a new row into the empty + TABLE element. Check for existence of the a TBODY element + in the table. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39872903'/> +
                <subject resource='http://lists.w3.org/Archives/Public/www-dom-ts/2002Aug/0019.html'/> +
                <subject resource='http://www.w3.org/Bugs/Public/show_bug.cgi?id=502'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='tableNode' type='Node'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <var name='table' type='Element'/>
           <var name='tbodiesLength' type='int'/>
           <load var='doc' href='table1' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='tableSize1'/>
           <item interface='NodeList' obj='nodeList' index='0' var='testNode'/>
           <createElement obj='doc' var='table' tagName='"table"'/>
           <appendChild obj='testNode' newChild='table' var='tableNode'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='tableSize2'/>
           <tBodies interface='HTMLTableElement' obj='tableNode' var='tbodiesnodeList'/>
           <length var='tbodiesLength' obj='tbodiesnodeList' interface='HTMLCollection'/>
           <assertEquals actual='tbodiesLength' expected='0' id='Asize3' ignoreCase='false'/>
           <insertRow interface='HTMLTableElement' obj='tableNode' var='newRow' index='0'/>
           <tBodies interface='HTMLTableElement' obj='tableNode' var='tbodiesnodeList'/>
           <length var='tbodiesLength' obj='tbodiesnodeList' interface='HTMLCollection'/>
           <assertEquals actual='tbodiesLength' expected='1' id='Asize4' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement32.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement32.html new file mode 100644 index 0000000000..5368c9788b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement32.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement32 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement32

      +

      <test name='HTMLTableElement32' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement32</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a table row. + + Retrieve the second TABLE element and invoke the deleteRow() method + with an index of 0(first row). Currently there are four rows in the + table. After the deleteRow() method is called there should be + three rows in the table. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='4' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableElement' obj='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement33.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement33.html new file mode 100644 index 0000000000..b418ededb7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement33.html @@ -0,0 +1,148 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement33 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement33

      +

      <test name='HTMLTableElement33' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableElement33</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a table row. + + Retrieve the second TABLE element and invoke the deleteRow() method + with an index of 3(last row). Currently there are four rows in the + table. The deleteRow() method is called and now there should be three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-13114938'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='4' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableElement' obj='testNode' index='3'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement34.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement34.html new file mode 100644 index 0000000000..e43e8e8236 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement34.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement34 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement34

      +

      <test name='HTMLTableElement34' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement34</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of rows. + + Retrieve the second TABLE element which has four rows. Try + to insert a new row using an index of five. This should throw + a INDEX_SIZE_ERR DOMException since there are only four rows. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <assertDOMException id='HTMLTableElement34'>
                <INDEX_SIZE_ERR>
                     <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='5'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement35.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement35.html new file mode 100644 index 0000000000..b1a942ca5e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement35.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement35 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement35

      +

      <test name='HTMLTableElement35' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement35</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the second TABLE element which has four rows. Try + to insert a new row using an index of negative five. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-39872903')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <assertDOMException id='HTMLTableElement35'>
                <INDEX_SIZE_ERR>
                     <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='-5'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement36.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement36.html new file mode 100644 index 0000000000..8cd5111f86 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement36.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement36 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement36

      +

      <test name='HTMLTableElement36' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement36</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of rows. + + Retrieve the second TABLE element which has four rows. Try + to delete a new row using an index of five. This should throw + a INDEX_SIZE_ERR DOMException since there are only four rows. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <assertDOMException id='HTMLTableElement36'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableElement' obj='testNode' index='5'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement37.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement37.html new file mode 100644 index 0000000000..896786dfb2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement37.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement37 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement37

      +

      <test name='HTMLTableElement37' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement37</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is equal the number of rows. + + Retrieve the second TABLE element which has four rows. Try + to delete a new row using an index of four. This should throw + a INDEX_SIZE_ERR DOMException since the index is equal to the + number of rows. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <assertDOMException id='HTMLTableElement37'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableElement' obj='testNode' index='4'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement38.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement38.html new file mode 100644 index 0000000000..0b7db508f5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement38.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement38 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement38

      +

      <test name='HTMLTableElement38' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement38</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the second TABLE element which has four rows. Try + to delete a new row using an index of negative five. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-13114938')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <assertDOMException id='HTMLTableElement38'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableElement' obj='testNode' index='-5'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement39.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement39.html new file mode 100644 index 0000000000..61fabe6308 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement39.html @@ -0,0 +1,177 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement39 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement39

      +

      <test name='HTMLTableElement39' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement39</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + If index is -1 or equal to the number of rows, the new row + is appended. + + Retrieve the second TABLE element and invoke the insertRow() method + with an index of negative one. + The number of rows in the TBODY section before insertion with an index + of negative one is two. After the new row is inserted the number + of rows in the TBODY section is three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-39872903'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='tbodiesnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='bodyNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vsection1' type='HTMLTableSectionElement'/>
           <var name='vsection2' type='HTMLTableSectionElement'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <item interface='HTMLCollection' obj='tbodiesnodeList' var='bodyNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='bodyNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='-1'/>
           <tBodies interface='HTMLTableElement' obj='testNode' var='tbodiesnodeList'/>
           <item interface='HTMLCollection' obj='tbodiesnodeList' var='bodyNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='bodyNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement40.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement40.html new file mode 100644 index 0000000000..f2b3344003 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableElement40.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement40 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableElement40

      +

      <test name='HTMLTableElement40' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableElement40</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a table row. If the index is -1 + the last row of the table is deleted. + + Retrieve the second TABLE element and invoke the deleteRow() method + with an index of negative one. Currently there are four rows in the + table. The deleteRow() method is called and now there should be three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-13114938'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='table' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='4' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableElement' obj='testNode' index='-1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement01.html new file mode 100644 index 0000000000..2364932865 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement01.html @@ -0,0 +1,143 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement01

      +

      <test name='HTMLTableRowElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement01</title> +
                <creator>NIST</creator> +
                <description> + The rowIndex attribute specifies the index of the row, relative to the + entire table, starting from 0. This is in document tree order and + not display order. The rowIndex does not take into account sections + (THEAD, TFOOT, or TBODY) within the table. + + Retrieve the third TR element within the document and examine + its rowIndex value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <rowIndex interface='HTMLTableRowElement' obj='testNode' var='vrowindex'/>
           <assertEquals actual='vrowindex' expected='1' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement02.html new file mode 100644 index 0000000000..d97296143f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement02

      +

      <test name='HTMLTableRowElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement02</title> +
                <creator>NIST</creator> +
                <description> + The sectionRowIndex attribute specifies the index of this row, relative + to the current section(THEAD, TFOOT, or TBODY),starting from 0. + + Retrieve the second TR(1st In THEAD) element within the document and + examine its sectionRowIndex value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsectionrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <sectionRowIndex interface='HTMLTableRowElement' obj='testNode' var='vsectionrowindex'/>
           <assertEquals actual='vsectionrowindex' expected='0' id='sectionRowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement03.html new file mode 100644 index 0000000000..94e1b4cb23 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement03

      +

      <test name='HTMLTableRowElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement03</title> +
                <creator>NIST</creator> +
                <description> + The sectionRowIndex attribute specifies the index of this row, relative + to the current section(THEAD, TFOOT, or TBODY),starting from 0. + + Retrieve the third TR(1st In TFOOT) element within the document and + examine its sectionRowIndex value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsectionrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <sectionRowIndex interface='HTMLTableRowElement' obj='testNode' var='vsectionrowindex'/>
           <assertEquals actual='vsectionrowindex' expected='0' id='sectionRowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement04.html new file mode 100644 index 0000000000..00cde3b3a4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement04

      +

      <test name='HTMLTableRowElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement04</title> +
                <creator>NIST</creator> +
                <description> + The sectionRowIndex attribute specifies the index of this row, relative + to the current section(THEAD, TFOOT, or TBODY),starting from 0. + + Retrieve the fifth TR(2nd In TBODY) element within the document and + examine its sectionRowIndex value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-79105901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsectionrowindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='4'/>
           <sectionRowIndex interface='HTMLTableRowElement' obj='testNode' var='vsectionrowindex'/>
           <assertEquals actual='vsectionrowindex' expected='1' id='sectionRowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement05.html new file mode 100644 index 0000000000..4a41966ed2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement05.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement05

      +

      <test name='HTMLTableRowElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement05</title> +
                <creator>NIST</creator> +
                <description> + The cells attribute specifies the collection of cells in this row. + + Retrieve the fourth TR element and examine the value of + the cells length attribute. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67349879'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement06.html new file mode 100644 index 0000000000..31c48480a2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement06

      +

      <test name='HTMLTableRowElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement06</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of data within + cells of this row. + + Retrieve the align attribute of the second TR element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableRowElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement07.html new file mode 100644 index 0000000000..0ad342c73f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement07.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement07

      +

      <test name='HTMLTableRowElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement07</title> +
                <creator>NIST</creator> +
                <description> + The bgColor attribute specifies the background color of rows. + + Retrieve the bgColor attribute of the second TR element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableRowElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#00FFFF"' id='bgColorLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement08.html new file mode 100644 index 0000000000..851c288de6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement08

      +

      <test name='HTMLTableRowElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement08</title> +
                <creator>NIST</creator> +
                <description> + The ch attribute specifies the alignment character for cells in a column. + + Retrieve the char attribute of the second TR element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableRowElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement09.html new file mode 100644 index 0000000000..8e4cd60f95 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement09

      +

      <test name='HTMLTableRowElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement09</title> +
                <creator>NIST</creator> +
                <description> + The chOff attribute specifies the offset of alignment character. + + Retrieve the charoff attribute of the second TR element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableRowElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"1"' id='charOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement10.html new file mode 100644 index 0000000000..9cbaee53f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement10

      +

      <test name='HTMLTableRowElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement10</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of data within + cells of this row. + + Retrieve the vAlign attribute of the second TR element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableRowElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement11.html new file mode 100644 index 0000000000..c938cb0125 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement11.html @@ -0,0 +1,173 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement11

      +

      <test name='HTMLTableRowElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement11</title> +
                <creator>NIST</creator> +
                <description> + The insertCell() method inserts an empty TD cell into this row. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the first TD element. Invoke the + insertCell() which will create an empty TD cell at the + zero index position. Check the value of the newly created + cell and make sure it is null and also the numbers of cells + should now be seven. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-06</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='newCell' type='HTMLElement'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='0'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"EMP0001"' id='value1Link' ignoreCase='false'/>
           <insertCell interface='HTMLTableRowElement' obj='testNode' var='newCell' index='0'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='7' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='0'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <assertNull actual='cellNode' id='value2Link'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement12.html new file mode 100644 index 0000000000..3f208f88a3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement12.html @@ -0,0 +1,171 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement12

      +

      <test name='HTMLTableRowElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement12</title> +
                <creator>NIST</creator> +
                <description> + The insertCell() method inserts an empty TD cell into this row. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the last TD element. Invoke the + insertCell() which will append the empty cell to the end of the list. + Check the value of the newly created cell and make sure it is null + and also the numbers of cells should now be seven. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-06</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68927016'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='newCell' type='HTMLElement'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='5'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"1230 North Ave. Dallas, Texas 98551"' id='value1Link' ignoreCase='false'/>
           <insertCell interface='HTMLTableRowElement' obj='testNode' var='newCell' index='6'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='7' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='6'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <assertNull actual='cellNode' id='value2Link'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement13.html new file mode 100644 index 0000000000..56f71638a4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement13.html @@ -0,0 +1,172 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement13

      +

      <test name='HTMLTableRowElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement13</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method deletes a cell from the current row. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the first TD element. Invoke the + deleteCell() method which will delete a cell from the current row. + Check the value of the cell at the zero index and also check + the number of cells which should now be five. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-06</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='0'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"EMP0001"' id='value1Link' ignoreCase='false'/>
           <deleteCell interface='HTMLTableRowElement' obj='testNode' index='0'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='5' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='0'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"Margaret Martin"' id='value2Link' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement14.html new file mode 100644 index 0000000000..4faad2ce5c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement14.html @@ -0,0 +1,172 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement14

      +

      <test name='HTMLTableRowElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableRowElement14</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method deletes a cell from the current row. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the third(index 2) TD element. Invoke the + deleteCell() method which will delete a cell from the current row. + Check the value of the third cell(index 2) and also check + the number of cells which should now be five. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-06</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-11738598'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='2'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"Accountant"' id='value1Link' ignoreCase='false'/>
           <deleteCell interface='HTMLTableRowElement' obj='testNode' index='2'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='5' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='2'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"56,000"' id='value2Link' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement15.html new file mode 100644 index 0000000000..3cf3ed2819 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement15.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement15

      +

      <test name='HTMLTableRowElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement15</title> +
                <creator>NIST</creator> +
                <description> + The insertCell() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of cells. + + Retrieve the fourth TR element which has six cells. Try + to insert a cell using an index of seven. This should throw + a INDEX_SIZE_ERR DOMException since there are only six cells. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newCell' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <assertDOMException id='HTMLTableRowElement15'>
                <INDEX_SIZE_ERR>
                     <insertCell interface='HTMLTableRowElement' obj='testNode' var='newCell' index='7'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement16.html new file mode 100644 index 0000000000..fc63764ef1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement16.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement16

      +

      <test name='HTMLTableRowElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement16</title> +
                <creator>NIST</creator> +
                <description> + The insertCell() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the fourth TR element which has six cells. Try + to insert a cell using an index of negative seven. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-68927016')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newCell' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <assertDOMException id='HTMLTableRowElement16'>
                <INDEX_SIZE_ERR>
                     <insertCell interface='HTMLTableRowElement' obj='testNode' var='newCell' index='-7'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement17.html new file mode 100644 index 0000000000..9321704af8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement17.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement17

      +

      <test name='HTMLTableRowElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement17</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of cells. + + Retrieve the fourth TR element which has six cells. Try + to delete a cell using an index of seven. This should throw + a INDEX_SIZE_ERR DOMException since there are only six cells. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <assertDOMException id='HTMLTableRowElement17'>
                <INDEX_SIZE_ERR>
                     <deleteCell interface='HTMLTableRowElement' obj='testNode' index='7'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement18.html new file mode 100644 index 0000000000..ec7bb985f4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement18.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement18

      +

      <test name='HTMLTableRowElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement18</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method throws a INDEX_SIZE_ERR DOMException + if the specified index is equal to the number of cells. + + Retrieve the fourth TR element which has six cells. Try + to delete a cell using an index of six. This should throw + a INDEX_SIZE_ERR DOMException since there are only six cells. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <assertDOMException id='HTMLTableRowElement18'>
                <INDEX_SIZE_ERR>
                     <deleteCell interface='HTMLTableRowElement' obj='testNode' index='6'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement19.html new file mode 100644 index 0000000000..6d277d373d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement19.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement19

      +

      <test name='HTMLTableRowElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement19</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the fourth TR element which has six cells. Try + to delete a cell using an index of negative six. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-11738598')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <assertDOMException id='HTMLTableRowElement19'>
                <INDEX_SIZE_ERR>
                     <deleteCell interface='HTMLTableRowElement' obj='testNode' index='-6'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement20.html new file mode 100644 index 0000000000..672b3f2033 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement20.html @@ -0,0 +1,177 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement20

      +

      <test name='HTMLTableRowElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement20</title> +
                <creator>NIST</creator> +
                <description> + The insertCell() method inserts an empty TD cell into this row. + If index is -1 or equal to the number of cells, the new cell is + appended. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the last TD element. Invoke the + insertCell() with an index of negative one + which will append the empty cell to the end of the list. + Check the value of the newly created cell and make sure it is null + and also the numbers of cells should now be seven. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-68927016'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='newCell' type='HTMLElement'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='5'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"1230 North Ave. Dallas, Texas 98551"' id='value1Link' ignoreCase='false'/>
           <insertCell interface='HTMLTableRowElement' obj='testNode' var='newCell' index='-1'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='7' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='6'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <assertNull actual='cellNode' id='value2Link'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement21.html new file mode 100644 index 0000000000..65e859bd0a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableRowElement21.html @@ -0,0 +1,176 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableRowElement21

      +

      <test name='HTMLTableRowElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableRowElement21</title> +
                <creator>NIST</creator> +
                <description> + The deleteCell() method deletes a cell from the currtent row. If + the index is -1 the last cell in the row is deleted. + + + Retrieve the fourth TR element and examine the value of + the cells length attribute which should be set to six. + Check the value of the last TD element. Invoke the + deleteCell() with an index of negative one + which will delete the last cell in the row. + Check the value of the of the last cell + and also the numbers of cells should now be five. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-11738598'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='cellsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='trNode' type='Node'/>
           <var name='cellNode' type='Node'/>
           <var name='value' type='DOMString'/>
           <var name='vcells' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablerow' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='6' id='cellsLink1' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='5'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"1230 North Ave. Dallas, Texas 98551"' id='value1Link' ignoreCase='false'/>
           <deleteCell interface='HTMLTableRowElement' obj='testNode' index='-1'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='3'/>
           <cells interface='HTMLTableRowElement' obj='testNode' var='cellsnodeList'/>
           <length interface='HTMLCollection' obj='cellsnodeList' var='vcells'/>
           <assertEquals actual='vcells' expected='5' id='cellsLink2' ignoreCase='false'/>
           <item interface='HTMLCollection' obj='cellsnodeList' var='trNode' index='4'/>
           <firstChild interface='Node' obj='trNode' var='cellNode'/>
           <nodeValue obj='cellNode' var='value'/>
           <assertEquals actual='value' expected='"Female"' id='value2Link' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement01.html new file mode 100644 index 0000000000..e0cbd5d1d3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement01

      +

      <test name='HTMLTableSectionElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement01</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of data within + cells. + + Retrieve the align attribute of the first THEAD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableSectionElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement02.html new file mode 100644 index 0000000000..c55881bfcd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement02.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement02

      +

      <test name='HTMLTableSectionElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement02</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of data within + cells. + + Retrieve the align attribute of the first TFOOT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableSectionElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement03.html new file mode 100644 index 0000000000..787e25b046 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement03

      +

      <test name='HTMLTableSectionElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement03</title> +
                <creator>NIST</creator> +
                <description> + The align attribute specifies the horizontal alignment of data within + cells. + + Retrieve the align attribute of the first TBODY element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40530119'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableSectionElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement04.html new file mode 100644 index 0000000000..b0fb6a4bf8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement04

      +

      <test name='HTMLTableSectionElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement04</title> +
                <creator>NIST</creator> +
                <description> + The ch attribute specifies the alignment character for cells in a + column. + + Retrieve the char attribute of the first THEAD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <ch interface='HTMLTableSectionElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement05.html new file mode 100644 index 0000000000..a185d0aea1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement05.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement05

      +

      <test name='HTMLTableSectionElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement05</title> +
                <creator>NIST</creator> +
                <description> + The ch attribute specifies the alignment character for cells in a + column. + + Retrieve the char attribute of the first TFOOT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <ch interface='HTMLTableSectionElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"+"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement06.html new file mode 100644 index 0000000000..110bfacf50 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement06

      +

      <test name='HTMLTableSectionElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement06</title> +
                <creator>NIST</creator> +
                <description> + The ch attribute specifies the alignment character for cells in a + column. + + Retrieve the char attribute of the first TBODY element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83470012'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableSectionElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"$"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement07.html new file mode 100644 index 0000000000..c7f63a5b25 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement07.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement07

      +

      <test name='HTMLTableSectionElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement07</title> +
                <creator>NIST</creator> +
                <description> + The chOff attribute specifies the offset of alignment character. + + Retrieve the charoff attribute of the first THEAD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <chOff interface='HTMLTableSectionElement' obj='testNode' var='vcharoff'/>
           <assertEquals actual='vcharoff' expected='"1"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement08.html new file mode 100644 index 0000000000..6adfbdc0f7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement08

      +

      <test name='HTMLTableSectionElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement08</title> +
                <creator>NIST</creator> +
                <description> + The chOff attribute specifies the offset of alignment character. + + Retrieve the charoff attribute of the first TFOOT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <chOff interface='HTMLTableSectionElement' obj='testNode' var='vcharoff'/>
           <assertEquals actual='vcharoff' expected='"2"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement09.html new file mode 100644 index 0000000000..20db3cd3d9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement09

      +

      <test name='HTMLTableSectionElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement09</title> +
                <creator>NIST</creator> +
                <description> + The chOff attribute specifies the offset of alignment character. + + Retrieve the charoff attribute of the first TBODY element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-53459732'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharoff' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableSectionElement' obj='testNode' var='vcharoff'/>
           <assertEquals actual='vcharoff' expected='"3"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement10.html new file mode 100644 index 0000000000..756fa15fba --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement10

      +

      <test name='HTMLTableSectionElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement10</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of cell data in + column. + + Retrieve the vAlign attribute of the first THEAD element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vAlign interface='HTMLTableSectionElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement11.html new file mode 100644 index 0000000000..a42b1adea9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement11

      +

      <test name='HTMLTableSectionElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement11</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of cell data in + column. + + Retrieve the vAlign attribute of the first TFOOT element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vAlign interface='HTMLTableSectionElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement12.html new file mode 100644 index 0000000000..e14140aa1e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement12.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement12

      +

      <test name='HTMLTableSectionElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement12</title> +
                <creator>NIST</creator> +
                <description> + The vAlign attribute specifies the vertical alignment of cell data in + column. + + Retrieve the vAlign attribute of the first TBODY element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-4379116'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableSectionElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement13.html new file mode 100644 index 0000000000..ea72e4f4c9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement13.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement13

      +

      <test name='HTMLTableSectionElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement13</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute specifies the collection of rows in this table section. + + Retrieve the first THEAD element and examine the value of + the rows length attribute. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement14.html new file mode 100644 index 0000000000..71955d803e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement14.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement14

      +

      <test name='HTMLTableSectionElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement14</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute specifies the collection of rows in this table section. + + Retrieve the first TFOOT element and examine the value of + the rows length attribute. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement15.html new file mode 100644 index 0000000000..464e10219e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement15.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement15

      +

      <test name='HTMLTableSectionElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement15</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute specifies the collection of rows in this table section. + + Retrieve the first TBODY element and examine the value of + the rows length attribute. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-52092650'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='testNode' type='Node'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement16.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement16.html new file mode 100644 index 0000000000..7845ad66f4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement16.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement16 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement16

      +

      <test name='HTMLTableSectionElement16' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement16</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first THEAD element and invoke the insertRow() method + with an index of 0. The nuber of rows in the THEAD section before + insertion of the new row is one. After the new row is inserted the number + of rows in the THEAD section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement17.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement17.html new file mode 100644 index 0000000000..51cb27c421 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement17.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement17

      +

      <test name='HTMLTableSectionElement17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement17</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first TFOOT element and invoke the insertRow() method + with an index of 0. The nuber of rows in the TFOOT section before + insertion of the new row is one. After the new row is inserted the number + of rows in the TFOOT section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement18.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement18.html new file mode 100644 index 0000000000..b4fffa75b2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement18.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement18

      +

      <test name='HTMLTableSectionElement18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement18</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first TBODY element and invoke the insertRow() method + with an index of 0. The nuber of rows in the TBODY section before + insertion of the new row is two. After the new row is inserted the number + of rows in the TBODY section is three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement19.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement19.html new file mode 100644 index 0000000000..cdc90cd894 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement19.html @@ -0,0 +1,153 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement19

      +

      <test name='HTMLTableSectionElement19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement19</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first THEAD element and invoke the insertRow() method + with an index of 1. The nuber of rows in the THEAD section before + insertion of the new row is one therefore the new row is appended. + After the new row is inserted the number of rows in the THEAD + section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement20.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement20.html new file mode 100644 index 0000000000..4992bf58f5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement20.html @@ -0,0 +1,153 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement20

      +

      <test name='HTMLTableSectionElement20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement20</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first TFOOT element and invoke the insertRow() method + with an index of one. The nuber of rows in the TFOOT section before + insertion of the new row is one therefore the new row is appended. + After the new row is inserted the number of rows in the TFOOT section + is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement21.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement21.html new file mode 100644 index 0000000000..b75311295f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement21.html @@ -0,0 +1,155 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement21

      +

      <test name='HTMLTableSectionElement21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement21</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. + + Retrieve the first TBODY element and invoke the insertRow() method + with an index of two. The number of rows in the TBODY section before + insertion of the new row is two therefore the row is appended. + After the new row is inserted the number of rows in the TBODY section is + three. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93995626'/> +
                <subject resource='http://www.w3.org/Bugs/Public/show_bug.cgi?id=502'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='2'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='3' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement22.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement22.html new file mode 100644 index 0000000000..08d024c80b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement22.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement22

      +

      <test name='HTMLTableSectionElement22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement22</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a row from this section. + + Retrieve the first THEAD element and invoke the deleteRow() method + with an index of 0. The nuber of rows in the THEAD section before + the deletion of the row is one. After the row is deleted the number + of rows in the THEAD section is zero. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='0' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement23.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement23.html new file mode 100644 index 0000000000..18e65d2921 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement23.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement23 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement23

      +

      <test name='HTMLTableSectionElement23' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement23</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a row from this section. + + Retrieve the first TFOOT element and invoke the deleteRow() method + with an index of 0. The nuber of rows in the TFOOT section before + the deletion of the row is one. After the row is deleted the number + of rows in the TFOOT section is zero. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tfoot"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='0' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement24.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement24.html new file mode 100644 index 0000000000..fc6c22bdb1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement24.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement24 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement24

      +

      <test name='HTMLTableSectionElement24' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableSectionElement24</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a row from this section. + + Retrieve the first TBODY element and invoke the deleteRow() method + with an index of 0. The nuber of rows in the TBODY section before + the deletion of the row is two. After the row is deleted the number + of rows in the TBODY section is one. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-5625626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement25.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement25.html new file mode 100644 index 0000000000..b83549acbd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement25.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement25 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement25

      +

      <test name='HTMLTableSectionElement25' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement25</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of rows. + + Retrieve the first THEAD element which has one row. Try + to insert a new row using an index of two. This should throw + a INDEX_SIZE_ERR DOMException since there is only one row. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <assertDOMException id='HTMLTableSectionElement25'>
                <INDEX_SIZE_ERR>
                     <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='2'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement26.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement26.html new file mode 100644 index 0000000000..6937d9840f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement26.html @@ -0,0 +1,151 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement26 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement26

      +

      <test name='HTMLTableSectionElement26' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement26</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the first THEAD element which has one row. Try + to insert a new row using an index of negative two. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-93995626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <assertDOMException id='HTMLTableSectionElement26'>
                <INDEX_SIZE_ERR>
                     <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='-2'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement27.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement27.html new file mode 100644 index 0000000000..ecf41f818c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement27.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement27 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement27

      +

      <test name='HTMLTableSectionElement27' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement27</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is greater than the number of rows. + + Retrieve the first THEAD element which has one row. Try + to delete a row using an index of two. This should throw + a INDEX_SIZE_ERR DOMException since the index is greater than the + number of rows. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <assertDOMException id='HTMLTableSectionElement27'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='2'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement28.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement28.html new file mode 100644 index 0000000000..aee22a0d75 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement28.html @@ -0,0 +1,152 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement28 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement28

      +

      <test name='HTMLTableSectionElement28' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement28</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is equal to the number of rows. + + Retrieve the first THEAD element which has one row. Try + to delete a row using an index of 1. This should throw + a INDEX_SIZE_ERR DOMException since the index is equal to the + number of rows. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <assertDOMException id='HTMLTableSectionElement28'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='1'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement29.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement29.html new file mode 100644 index 0000000000..8339ee5c7b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement29.html @@ -0,0 +1,150 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement29 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement29

      +

      <test name='HTMLTableSectionElement29' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement29</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method throws a INDEX_SIZE_ERR DOMException + if the specified index is negative. + + Retrieve the first THEAD element which has one row. Try + to delete a row using an index of negative two. This should throw + a INDEX_SIZE_ERR DOMException since the index is negative. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-05-02</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#xpointer(id('ID-5625626')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INDEX_SIZE_ERR'])'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <assertDOMException id='HTMLTableSectionElement29'>
                <INDEX_SIZE_ERR>
                     <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='-2'/>
                </INDEX_SIZE_ERR>
           </assertDOMException>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement30.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement30.html new file mode 100644 index 0000000000..2790c58f31 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement30.html @@ -0,0 +1,159 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement30 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement30

      +

      <test name='HTMLTableSectionElement30' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement30</title> +
                <creator>NIST</creator> +
                <description> + The insertRow() method inserts a new empty table row. The new + row is inserted immediately before the current indexth row in this + section. If index is -1 or equal to the number of rows in this section, + the new row is appended. + + Retrieve the first THEAD element and invoke the insertRow() method + with an index of negative one. Since the index is negative one the + new row is appended. + After the new row is appended the number of rows in the THEAD + section is two. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-93995626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='newRow' type='HTMLElement'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"thead"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink1' ignoreCase='false'/>
           <insertRow interface='HTMLTableSectionElement' obj='testNode' var='newRow' index='-1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement31.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement31.html new file mode 100644 index 0000000000..e43feb2d07 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement31.html @@ -0,0 +1,156 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement31 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement31

      +

      <test name='HTMLTableSectionElement31' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>HTMLTableSectionElement31</title> +
                <creator>NIST</creator> +
                <description> + The deleteRow() method deletes a row from this section. The index + starts from 0 and is relative only to the rows contained inside + this section, not all the rows in the table. If the index is -1 + the last row will be deleted. + + Retrieve the second TBODY element and invoke the deleteRow() method + with an index of -1. The nuber of rows in the THEAD section before + the deletion of the row is two. After the row is deleted the number + of rows in the TBODY section is one. +</description> +
                <contributor>Rick Rivello</contributor> +
                <date qualifier='created'>2002-11-07</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='rowsnodeList' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='tablesection' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='2' id='rowsLink1' ignoreCase='false'/>
           <deleteRow interface='HTMLTableSectionElement' obj='testNode' index='-1'/>
           <rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/>
           <length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='rowsLink2' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement01.html new file mode 100644 index 0000000000..dd0a7504e5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement01.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement01

      +

      <test name='HTMLTextAreaElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement01</title> +
                <creator>NIST</creator> +
                <description> + The defaultValue attribute represents the HTML value of the attribute + when the type attribute has the value of "Text", "File" or "Password". + + Retrieve the defaultValue attribute of the 2nd TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36152213'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdefaultvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <defaultValue interface='HTMLTextAreaElement' obj='testNode' var='vdefaultvalue'/>
           <assertEquals actual='vdefaultvalue' expected='"TEXTAREA2"' id='defaultValueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement02.html new file mode 100644 index 0000000000..af9f31a9e3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement02.html @@ -0,0 +1,140 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement02

      +

      <test name='HTMLTextAreaElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement02</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns the FORM element containing this control. + + Retrieve the form attribute from the first TEXTAREA element + and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='DOMString'/>
           <var name='fNode' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLTextAreaElement' obj='testNode' var='fNode'/>
           <id obj='fNode' var='vform'/>
           <assertEquals actual='vform' expected='"form1"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement03.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement03.html new file mode 100644 index 0000000000..13c9df10ec --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement03.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement03

      +

      <test name='HTMLTextAreaElement03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement03</title> +
                <creator>NIST</creator> +
                <description> + The form attribute returns null if control in not within the context of + a form. + + Retrieve the second TEXTAREA element and + examine its form element. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18911464'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLTextAreaElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formNullLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement04.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement04.html new file mode 100644 index 0000000000..08d3f82673 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement04.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement04

      +

      <test name='HTMLTextAreaElement04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement04</title> +
                <creator>NIST</creator> +
                <description> + The accessKey attribute specifies a single character access key to + give access to the form control. + + Retrieve the accessKey attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-93102991'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLTextAreaElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"c"' id='accessKeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement05.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement05.html new file mode 100644 index 0000000000..4acdbf740b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement05.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement05

      +

      <test name='HTMLTextAreaElement05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement05</title> +
                <creator>NIST</creator> +
                <description> + The cols attribute specifies the width of control(in characters). + + Retrieve the cols attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-51387225'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcols' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <cols interface='HTMLTextAreaElement' obj='testNode' var='vcols'/>
           <assertEquals actual='vcols' expected='20' id='colsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement06.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement06.html new file mode 100644 index 0000000000..3049fd2d12 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement06.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement06

      +

      <test name='HTMLTextAreaElement06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement06</title> +
                <creator>NIST</creator> +
                <description> + The disabled attribute specifies the control is unavailable in this + context. + + Retrieve the disabled attribute from the 2nd TEXTAREA element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98725443'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <disabled interface='HTMLTextAreaElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement07.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement07.html new file mode 100644 index 0000000000..ae49b1668d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement07

      +

      <test name='HTMLTextAreaElement07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement07</title> +
                <creator>NIST</creator> +
                <description> + The name attribute specifies the form control or object name when + submitted with a form. + + Retrieve the name attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715578'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vname' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <name interface='HTMLTextAreaElement' obj='testNode' var='vname'/>
           <assertEquals actual='vname' expected='"text1"' id='nameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement08.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement08.html new file mode 100644 index 0000000000..615758b6d8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement08.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement08

      +

      <test name='HTMLTextAreaElement08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement08</title> +
                <creator>NIST</creator> +
                <description> + The readOnly attribute specifies this control is read-only. + + Retrieve the readOnly attribute from the 3rd TEXTAREA element and + examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39131423'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vreadonly' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='2'/>
           <readOnly interface='HTMLTextAreaElement' obj='testNode' var='vreadonly'/>
           <assertTrue actual='vreadonly' id='readOnlyLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement09.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement09.html new file mode 100644 index 0000000000..e15e92d010 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement09.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement09

      +

      <test name='HTMLTextAreaElement09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement09</title> +
                <creator>NIST</creator> +
                <description> + The rows attribute specifies the number of text rowns. + + Retrieve the rows attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46975887'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <rows interface='HTMLTextAreaElement' obj='testNode' var='vrows'/>
           <assertEquals actual='vrows' expected='7' id='rowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement10.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement10.html new file mode 100644 index 0000000000..e747e55045 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement10.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement10

      +

      <test name='HTMLTextAreaElement10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement10</title> +
                <creator>NIST</creator> +
                <description> + The tabIndex attribute is an index that represents the element's position + in the tabbing order. + + Retrieve the tabIndex attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-60363303'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLTextAreaElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='5' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement11.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement11.html new file mode 100644 index 0000000000..4c0f067b09 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement11.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement11

      +

      <test name='HTMLTextAreaElement11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement11</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the type of this form control. + + Retrieve the type attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-24874179'/> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#HTML-HTMLTextAreaElement-type'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLTextAreaElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"textarea"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement12.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement12.html new file mode 100644 index 0000000000..9f3684e80d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement12.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement12

      +

      <test name='HTMLTextAreaElement12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement12</title> +
                <creator>NIST</creator> +
                <description> + The value attribute represents the current contents of the corresponding + form control, in an interactive user agent. + + Retrieve the value attribute of the 1st TEXTAREA element and examine + its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-70715579'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLTextAreaElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"TEXTAREA1"' id='valueLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement13.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement13.html new file mode 100644 index 0000000000..d1d32f2af1 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement13.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement13

      +

      <test name='HTMLTextAreaElement13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement13</title> +
                <creator>Curt Arnold</creator> +
                <description> +Calling HTMLTextAreaElement.blur should surrender input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6750689'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <blur interface='HTMLTextAreaElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement14.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement14.html new file mode 100644 index 0000000000..548028cd66 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement14.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement14

      +

      <test name='HTMLTextAreaElement14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement14</title> +
                <creator>Curt Arnold</creator> +
                <description> +Calling HTMLTextAreaElement.focus should capture input focus. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39055426'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <focus interface='HTMLTextAreaElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement15.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement15.html new file mode 100644 index 0000000000..879b6208ef --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTextAreaElement15.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTextAreaElement15

      +

      <test name='HTMLTextAreaElement15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTextAreaElement15</title> +
                <creator>Curt Arnold</creator> +
                <description> +Calling HTMLTextAreaElement.select should select the text area. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48880622'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='textarea' willBeModified='true'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"textarea"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <select interface='HTMLTextAreaElement' obj='testNode'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLTitleElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLTitleElement01.html new file mode 100644 index 0000000000..f71ce5975c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLTitleElement01.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTitleElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTitleElement01

      +

      <test name='HTMLTitleElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTitleElement01</title> +
                <creator>NIST</creator> +
                <description> + The text attribute is the specified title as a string. + + Retrieve the text attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77500413'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtext' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='title' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"title"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <text interface='HTMLTitleElement' obj='testNode' var='vtext'/>
           <assertEquals actual='vtext' expected='"NIST DOM HTML Test - TITLE"' id='textLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement01.html b/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement01.html new file mode 100644 index 0000000000..a3913a0e23 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement01.html @@ -0,0 +1,137 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement01

      +

      <test name='HTMLUListElement01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLUListElement01</title> +
                <creator>NIST</creator> +
                <description> + The compact attribute specifies whether to reduce spacing between list + items. + + Retrieve the compact attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39864178'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='ulist' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ul"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLUListElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement02.html b/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement02.html new file mode 100644 index 0000000000..0ab6be828a --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_HTMLUListElement02.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLUListElement02

      +

      <test name='HTMLUListElement02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLUListElement02</title> +
                <creator>NIST</creator> +
                <description> + The type attribute specifies the bullet style. + + Retrieve the type attribute and examine its value. +</description> +
                <contributor>Mary Brady</contributor> +
                <date qualifier='created'>2002-02-22</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96874670'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Document'/>
           <load var='doc' href='ulist' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"ul"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLUListElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"disc"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_alltests.html b/dom/tests/mochitest/dom-level2-html/test_alltests.html new file mode 100644 index 0000000000..2ad21a3fcd --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_alltests.html @@ -0,0 +1,3933 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/alltests + + + + + + + +

      DOM Level 2 HTML Test Suite

      +
      + + + + + + + +
      + + + + +
      Test:
      +
      + + + + + + + +
      ImplementationConfigurationContent Type
      iframe
      + DOM 3 Load/Save
      + Features: +
      + Mozilla XML
      + MSXML 3.0
      + MSXML 4.0
      + SVG Plugin
      +
      Asynchronous
      + Expanding Entities
      + Ignoring whitespace
      + Validating
      + Coalescing
      + Namespace aware
      + Ignoring comments
      + Skip incompatible tests
      + Autorun
      + Submit results
      + Acceptor: http:// +
      + Result ID: +
      +
      XML
      +HTML
      +XHTML
      +
      +
      +
      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor01.html b/dom/tests/mochitest/dom-level2-html/test_anchor01.html new file mode 100644 index 0000000000..60bc37a436 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor01.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor01

      +

      <test name='anchor01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor01</title> +
                <creator>Netscape</creator> +
                <description> +A single character access key to give access to the form control. +The value of attribute accessKey of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89647724'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLAnchorElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"g"' id='accessKeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor02.html b/dom/tests/mochitest/dom-level2-html/test_anchor02.html new file mode 100644 index 0000000000..90a5f26f4e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor02.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor02

      +

      <test name='anchor02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor02</title> +
                <creator>Netscape</creator> +
                <description> +The character encoding of the linked resource. +The value of attribute charset of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67619266'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcharset' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <charset interface='HTMLAnchorElement' obj='testNode' var='vcharset'/>
           <assertEquals actual='vcharset' expected='"US-ASCII"' id='charsetLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor03.html b/dom/tests/mochitest/dom-level2-html/test_anchor03.html new file mode 100644 index 0000000000..764561b853 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor03.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor03

      +

      <test name='anchor03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor03</title> +
                <creator>Netscape</creator> +
                <description> +Comma-separated list of lengths, defining an active region geometry. +The value of attribute coords of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92079539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcoords' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <coords interface='HTMLAnchorElement' obj='testNode' var='vcoords'/>
           <assertEquals actual='vcoords' expected='"0,0,100,100"' id='coordsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor04.html b/dom/tests/mochitest/dom-level2-html/test_anchor04.html new file mode 100644 index 0000000000..8f6fdf5df4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor04.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor04

      +

      <test name='anchor04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor04</title> +
                <creator>Netscape</creator> +
                <description> +The URI of the linked resource. +The value of attribute href of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88517319'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhref' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <href interface='HTMLAnchorElement' obj='testNode' var='vhref'/>
           <assertURIEquals actual='vhref' isAbsolute='true' file='"submit.gif"' id='hrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor05.html b/dom/tests/mochitest/dom-level2-html/test_anchor05.html new file mode 100644 index 0000000000..d62a04253c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor05.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor05

      +

      <test name='anchor05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor05</title> +
                <creator>Netscape</creator> +
                <description> +Advisory content type. +The value of attribute type of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63938221'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLAnchorElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"image/gif"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_anchor06.html b/dom/tests/mochitest/dom-level2-html/test_anchor06.html new file mode 100644 index 0000000000..1be5b39431 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_anchor06.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/anchor06

      +

      <test name='anchor06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>anchor06</title> +
                <creator>Netscape</creator> +
                <description> +The shape of the active area. The coordinates are given by coords +The value of attribute shape of the anchor element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-02</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-49899808'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vshape' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"a"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <shape interface='HTMLAnchorElement' obj='testNode' var='vshape'/>
           <assertEquals actual='vshape' expected='"rect"' id='shapeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_area01.html b/dom/tests/mochitest/dom-level2-html/test_area01.html new file mode 100644 index 0000000000..6d86909f6d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_area01.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/area01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/area01

      +

      <test name='area01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>area01</title> +
                <creator>Netscape</creator> +
                <description> + +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-66021476'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcoords' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <coords interface='HTMLAreaElement' obj='testNode' var='vcoords'/>
           <assertEquals actual='vcoords' expected='"0,2,45,45"' id='coordsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_area02.html b/dom/tests/mochitest/dom-level2-html/test_area02.html new file mode 100644 index 0000000000..fb9db8319b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_area02.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/area02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/area02

      +

      <test name='area02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>area02</title> +
                <creator>Netscape</creator> +
                <description> + +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-61826871'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnohref' type='boolean'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <noHref interface='HTMLAreaElement' obj='testNode' var='vnohref'/>
           <assertFalse actual='vnohref' id='noHrefLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_area03.html b/dom/tests/mochitest/dom-level2-html/test_area03.html new file mode 100644 index 0000000000..98dd3e521e --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_area03.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/area03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/area03

      +

      <test name='area03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>area03</title> +
                <creator>Netscape</creator> +
                <description> + +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-8722121'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLAreaElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='10' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_area04.html b/dom/tests/mochitest/dom-level2-html/test_area04.html new file mode 100644 index 0000000000..0c91403e0c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_area04.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/area04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/area04

      +

      <test name='area04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>area04</title> +
                <creator>Netscape</creator> +
                <description> + +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-57944457'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaccesskey' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='area' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"area"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLAreaElement' obj='testNode' var='vaccesskey'/>
           <assertEquals actual='vaccesskey' expected='"a"' id='accessKeyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_body01.html b/dom/tests/mochitest/dom-level2-html/test_body01.html new file mode 100644 index 0000000000..417329e475 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_body01.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/body01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/body01

      +

      <test name='body01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>body01</title> +
                <creator>Netscape</creator> +
                <description> +Color of active links (after mouse-button down, but before mouse-button up). +The value of attribute alink of the body element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59424581'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valink' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='body' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"body"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <aLink interface='HTMLBodyElement' obj='testNode' var='valink'/>
           <assertEquals actual='valink' expected='"#0000ff"' id='aLinkLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button01.html b/dom/tests/mochitest/dom-level2-html/test_button01.html new file mode 100644 index 0000000000..cd3bb8f8cc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button01.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button01

      +

      <test name='button01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button01</title> +
                <creator>Netscape</creator> +
                <description> +Returns the FORM element containing this control. Returns null if this control is not within the context of a form. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='Node'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <form interface='HTMLButtonElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button02.html b/dom/tests/mochitest/dom-level2-html/test_button02.html new file mode 100644 index 0000000000..a4cae627d3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button02.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button02

      +

      <test name='button02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button02</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute name of the form element which contains this button is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-63534901'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='vfname' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLButtonElement' obj='testNode' var='formNode'/>
           <id interface='HTMLElement' obj='formNode' var='vfname'/>
           <assertEquals actual='vfname' expected='"form2"' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button03.html b/dom/tests/mochitest/dom-level2-html/test_button03.html new file mode 100644 index 0000000000..3e81c10024 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button03.html @@ -0,0 +1,138 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button03

      +

      <test name='button03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button03</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute action of the form element which contains this button is read and checked against the expected value +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74049184'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='vfaction' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLButtonElement' obj='testNode' var='formNode'/>
           <action interface='HTMLFormElement' obj='formNode' var='vfaction'/>
           <assertEquals actual='vfaction' expected='"..."' id='formLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button04.html b/dom/tests/mochitest/dom-level2-html/test_button04.html new file mode 100644 index 0000000000..b34171f23c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button04.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button04

      +

      <test name='button04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button04</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute method of the form element which contains this button is read and checked against the expected value +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-71254493'/> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82545539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='formNode' type='Node'/>
           <var name='vfmethod' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLButtonElement' obj='testNode' var='formNode'/>
           <method interface='HTMLFormElement' obj='formNode' var='vfmethod'/>
           <assertEquals actual='vfmethod' expected='"POST"' id='formLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button05.html b/dom/tests/mochitest/dom-level2-html/test_button05.html new file mode 100644 index 0000000000..2d6b6d7dbc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button05.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button05

      +

      <test name='button05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button05</title> +
                <creator>Netscape</creator> +
                <description> +A single character access key to give access to the form control. +The value of attribute accessKey of the button element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-73169431'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vakey' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <accessKey interface='HTMLButtonElement' obj='testNode' var='vakey'/>
           <assertEquals actual='vakey' expected='"f"' id='accessKeyLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button06.html b/dom/tests/mochitest/dom-level2-html/test_button06.html new file mode 100644 index 0000000000..8d11cd16e4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button06.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button06

      +

      <test name='button06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button06</title> +
                <creator>Netscape</creator> +
                <description> +Index that represents the element's position in the tabbing order. +The value of attribute tabIndex of the button element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-39190908'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabIndex' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLButtonElement' obj='testNode' var='vtabIndex'/>
           <assertEquals actual='vtabIndex' expected='20' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button07.html b/dom/tests/mochitest/dom-level2-html/test_button07.html new file mode 100644 index 0000000000..aaae8e6922 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button07.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button07

      +

      <test name='button07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button07</title> +
                <creator>Netscape</creator> +
                <description> +The type of button +The value of attribute type of the button element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27430092'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLButtonElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"reset"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button08.html b/dom/tests/mochitest/dom-level2-html/test_button08.html new file mode 100644 index 0000000000..a7a48caa42 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button08.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button08

      +

      <test name='button08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button08</title> +
                <creator>Netscape</creator> +
                <description> +The control is unavailable in this context. +The boolean value of attribute disabled of the button element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-92757155'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdisabled' type='boolean'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <disabled interface='HTMLButtonElement' obj='testNode' var='vdisabled'/>
           <assertTrue actual='vdisabled' id='disabledLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_button09.html b/dom/tests/mochitest/dom-level2-html/test_button09.html new file mode 100644 index 0000000000..4917f7f78f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_button09.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/button09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/button09

      +

      <test name='button09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>button09</title> +
                <creator>Netscape</creator> +
                <description> +The current form control value. +The value of attribute value of the button element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-03-09</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-72856782'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalue' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='button' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"button"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <value interface='HTMLButtonElement' obj='testNode' var='vvalue'/>
           <assertEquals actual='vvalue' expected='"Reset Disabled Button"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_dlist01.html b/dom/tests/mochitest/dom-level2-html/test_dlist01.html new file mode 100644 index 0000000000..3e756c4ec2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_dlist01.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/dlist01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/dlist01

      +

      <test name='dlist01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>dlist01</title> +
                <creator>Netscape</creator> +
                <description> + +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-21738539'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcompact' type='boolean'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='dl' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"dl"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <compact interface='HTMLDListElement' obj='testNode' var='vcompact'/>
           <assertTrue actual='vcompact' id='compactLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_doc01.html b/dom/tests/mochitest/dom-level2-html/test_doc01.html new file mode 100644 index 0000000000..8e2a0c0eb6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_doc01.html @@ -0,0 +1,126 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/doc01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/doc01

      +

      <test name='doc01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>doc01</title> +
                <creator>Netscape</creator> +
                <description> +Retrieve the title attribute of HTMLDocument and examine it's value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-08</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18446827'/> +
      </metadata>
           <var name='vtitle' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='anchor' willBeModified='false'/>
           <title interface='HTMLDocument' obj='doc' var='vtitle'/>
           <assertEquals actual='vtitle' expected='"NIST DOM HTML Test - Anchor"' id='titleLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature01.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature01.html new file mode 100644 index 0000000000..fa936ddb04 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature01.html @@ -0,0 +1,113 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature01

      +

      <test name='hasFeature01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>hasFeature01</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("hTmL", null) should return true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' isNull='true'/>
           <var name='state' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='state' feature='"hTmL"' version='version'/>
           <assertTrue actual='state' id='hasHTMLnull'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature02.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature02.html new file mode 100644 index 0000000000..6a58ca2818 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature02.html @@ -0,0 +1,112 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature02

      +

      <test name='hasFeature02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>hasFeature02</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("hTmL", "2.0") should return true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' value='"2.0"'/>
           <var name='state' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='state' feature='"hTmL"' version='version'/>
           <assertTrue actual='state' id='hasHTML2'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature03.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature03.html new file mode 100644 index 0000000000..25a0cfd8fe --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature03.html @@ -0,0 +1,115 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature03

      +

      <test name='hasFeature03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>hasFeature03</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("xhTmL", null) should return true if hasFeature("XML", null) returns true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' isNull='true'/>
           <var name='state' type='boolean'/>
           <var name='hasXML' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='hasXML' feature='"XML"' version='version'/>
           <hasFeature obj='domImpl' var='state' feature='"xhTmL"' version='version'/>
           <assertEquals actual='state' expected='hasXML' ignoreCase='false' id='hasXHTML'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature04.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature04.html new file mode 100644 index 0000000000..773b999aa7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature04.html @@ -0,0 +1,114 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature04

      +

      <test name='hasFeature04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>hasFeature04</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("xhTmL", "2.0") should return true if hasFeature("XML", "2.0") returns true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' value='"2.0"'/>
           <var name='state' type='boolean'/>
           <var name='hasXML' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='hasXML' feature='"XML"' version='version'/>
           <hasFeature obj='domImpl' var='state' feature='"xhTmL"' version='version'/>
           <assertEquals actual='state' expected='hasXML' ignoreCase='false' id='hasXHTML'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature05.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature05.html new file mode 100644 index 0000000000..e765457cf6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature05.html @@ -0,0 +1,113 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature05

      +

      <test name='hasFeature05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>hasFeature05</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("cOrE", null) should return true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' isNull='true'/>
           <var name='state' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='state' feature='"cOrE"' version='version'/>
           <assertTrue actual='state' id='hasCore'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_hasFeature06.html b/dom/tests/mochitest/dom-level2-html/test_hasFeature06.html new file mode 100644 index 0000000000..596d8e3fff --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_hasFeature06.html @@ -0,0 +1,112 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/hasFeature06

      +

      <test name='hasFeature06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>hasFeature06</title> +
                <creator>Curt Arnold</creator> +
                <description> +hasFeature("cOrE", "2.0") should return true. +</description> +
                <date qualifier='created'>2004-03-18</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-Core/core#ID-5CED94D7'/> +
      </metadata>
           <var name='doc' type='Document'/>
           <var name='domImpl' type='DOMImplementation'/>
           <var name='version' type='DOMString' value='"2.0"'/>
           <var name='state' type='boolean'/>
           <implementation var='domImpl'/>
           <hasFeature obj='domImpl' var='state' feature='"cOrE"' version='version'/>
           <assertTrue actual='state' id='hasCore'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object01.html b/dom/tests/mochitest/dom-level2-html/test_object01.html new file mode 100644 index 0000000000..e3bea15712 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object01.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object01

      +

      <test name='object01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object01</title> +
                <creator>Netscape</creator> +
                <description> +Returns the FORM element containing this control. Returns null if this control is not within the context of a form. +The value of attribute form of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-46094773'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vform' type='HTMLFormElement'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <form interface='HTMLObjectElement' obj='testNode' var='vform'/>
           <assertNull actual='vform' id='formLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object02.html b/dom/tests/mochitest/dom-level2-html/test_object02.html new file mode 100644 index 0000000000..4cc91da2d2 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object02.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object02

      +

      <test name='object02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object02</title> +
                <creator>Netscape</creator> +
                <description> +Aligns this object (vertically or horizontally) with respect to its surrounding text. +The value of attribute align of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16962097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLObjectElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"middle"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object03.html b/dom/tests/mochitest/dom-level2-html/test_object03.html new file mode 100644 index 0000000000..f3523bcf38 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object03.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object03

      +

      <test name='object03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object03</title> +
                <creator>Netscape</creator> +
                <description> +Space-separated list of archives +The value of attribute archive of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-47783837'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='varchive' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <archive interface='HTMLObjectElement' obj='testNode' var='varchive'/>
           <assertEquals actual='varchive' expected='""' id='archiveLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object04.html b/dom/tests/mochitest/dom-level2-html/test_object04.html new file mode 100644 index 0000000000..0749cf7b4b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object04.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object04

      +

      <test name='object04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object04</title> +
                <creator>Netscape</creator> +
                <description> +Width of border around the object. +The value of attribute border of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-82818419'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vborder' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <border interface='HTMLObjectElement' obj='testNode' var='vborder'/>
           <assertEquals actual='vborder' expected='"0"' id='borderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object05.html b/dom/tests/mochitest/dom-level2-html/test_object05.html new file mode 100644 index 0000000000..02638b8391 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object05.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object05 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object05

      +

      <test name='object05' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object05</title> +
                <creator>Netscape</creator> +
                <description> +Base URI for classid, data, and archive attributes. +The value of attribute codebase of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25709136'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcodebase' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <codeBase interface='HTMLObjectElement' obj='testNode' var='vcodebase'/>
           <assertEquals actual='vcodebase' expected='"http://xw2k.sdct.itl.nist.gov/brady/dom/"' id='codebaseLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object06.html b/dom/tests/mochitest/dom-level2-html/test_object06.html new file mode 100644 index 0000000000..ba9c065122 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object06.html @@ -0,0 +1,134 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object06

      +

      <test name='object06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object06</title> +
                <creator>Netscape</creator> +
                <description> +A URI specifying the location of the object's data. +The value of attribute data of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-81766986'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vdata' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <data interface='HTMLObjectElement' obj='testNode' var='vdata'/>
           <assertEquals actual='vdata' expected='"./pix/logo.gif"' id='dataLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object07.html b/dom/tests/mochitest/dom-level2-html/test_object07.html new file mode 100644 index 0000000000..74698fa288 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object07.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object07

      +

      <test name='object07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object07</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute height of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88925838'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <height interface='HTMLObjectElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"60"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object08.html b/dom/tests/mochitest/dom-level2-html/test_object08.html new file mode 100644 index 0000000000..f9196d7efa --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object08.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object08

      +

      <test name='object08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>object08</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal space to the left and right of this image, applet, or object. +The value of attribute hspace of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-17085376'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vhspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <hspace interface='HTMLObjectElement' obj='testNode' var='vhspace'/>
           <assertEquals actual='vhspace' expected='0' id='hspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object09.html b/dom/tests/mochitest/dom-level2-html/test_object09.html new file mode 100644 index 0000000000..8f969113f5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object09.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object09

      +

      <test name='object09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object09</title> +
                <creator>Netscape</creator> +
                <description> +Message to render while loading the object. +The value of attribute standby of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25039673'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vstandby' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <standby interface='HTMLObjectElement' obj='testNode' var='vstandby'/>
           <assertEquals actual='vstandby' expected='"Loading Image ..."' id='standbyLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object10.html b/dom/tests/mochitest/dom-level2-html/test_object10.html new file mode 100644 index 0000000000..c22a7f6991 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object10.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object10

      +

      <test name='object10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object10</title> +
                <creator>Netscape</creator> +
                <description> +Index that represents the element's position in the tabbing order. +The value of attribute tabIndex of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27083787'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtabindex' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <tabIndex interface='HTMLObjectElement' obj='testNode' var='vtabindex'/>
           <assertEquals actual='vtabindex' expected='0' id='tabIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object11.html b/dom/tests/mochitest/dom-level2-html/test_object11.html new file mode 100644 index 0000000000..a50bba9e59 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object11.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object11 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object11

      +

      <test name='object11' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object11</title> +
                <creator>Netscape</creator> +
                <description> +Content type for data downloaded via data attribute. +The value of attribute type of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-91665621'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vtype' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <type interface='HTMLObjectElement' obj='testNode' var='vtype'/>
           <assertEquals actual='vtype' expected='"image/gif"' id='typeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object12.html b/dom/tests/mochitest/dom-level2-html/test_object12.html new file mode 100644 index 0000000000..9617273351 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object12.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object12

      +

      <test name='object12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object12</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute usemap of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-6649772'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vusemap' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <useMap interface='HTMLObjectElement' obj='testNode' var='vusemap'/>
           <assertEquals actual='vusemap' expected='"#DivLogo-map"' id='useMapLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object13.html b/dom/tests/mochitest/dom-level2-html/test_object13.html new file mode 100644 index 0000000000..93b5a79372 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object13.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object13 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object13

      +

      <test name='object13' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'>
           <metadata>
                <title>object13</title> +
                <creator>Netscape</creator> +
                <description> +Vertical space above and below this image, applet, or object. +The value of attribute vspace of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-8682483'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvspace' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vspace interface='HTMLObjectElement' obj='testNode' var='vvspace'/>
           <assertEquals actual='vvspace' expected='0' id='vspaceLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object14.html b/dom/tests/mochitest/dom-level2-html/test_object14.html new file mode 100644 index 0000000000..888a48e123 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object14.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object14 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object14

      +

      <test name='object14' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object14</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute width of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-38538620'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLObjectElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"550"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_object15.html b/dom/tests/mochitest/dom-level2-html/test_object15.html new file mode 100644 index 0000000000..0e3bb673e4 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_object15.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/object15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/object15

      +

      <test name='object15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>object15</title> +
                <creator>Netscape</creator> +
                <description> +Content type for data downloaded via classid attribute. +The value of attribute codetype of the object element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-19945008'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcodetype' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='object' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"object"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <codeType interface='HTMLObjectElement' obj='testNode' var='vcodetype'/>
           <assertEquals actual='vcodetype' expected='"image/gif"' id='codeTypeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table01.html b/dom/tests/mochitest/dom-level2-html/test_table01.html new file mode 100644 index 0000000000..bbc83b2d81 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table01.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table01 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table01

      +

      <test name='table01' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table01</title> +
                <creator>Netscape</creator> +
                <description> +Returns the table's CAPTION, or void if none exists. +The value of attribute caption of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcaption' type='Node'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table1' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vcaption'/>
           <assertNull actual='vcaption' id='captionLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table02.html b/dom/tests/mochitest/dom-level2-html/test_table02.html new file mode 100644 index 0000000000..a9e34590c0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table02.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table02 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table02

      +

      <test name='table02' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table02</title> +
                <creator>Netscape</creator> +
                <description> +Caption alignment with respect to the table. +The value of attribute align of the tablecaption element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-14594520'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcaption' type='HTMLTableCaptionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <caption interface='HTMLTableElement' obj='testNode' var='vcaption'/>
           <align interface='HTMLTableCaptionElement' obj='vcaption' var='valign'/>
           <assertEquals actual='valign' expected='"top"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table03.html b/dom/tests/mochitest/dom-level2-html/test_table03.html new file mode 100644 index 0000000000..f7ad75f43d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table03.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table03 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table03

      +

      <test name='table03' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table03</title> +
                <creator>Netscape</creator> +
                <description> +Alignment character for cells in a column. +The value of attribute ch of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <ch interface='HTMLTableSectionElement' obj='vsection' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table04.html b/dom/tests/mochitest/dom-level2-html/test_table04.html new file mode 100644 index 0000000000..464b901b23 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table04.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table04 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table04

      +

      <test name='table04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table04</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal alignment of data in cells. +The value of attribute align of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table06.html b/dom/tests/mochitest/dom-level2-html/test_table06.html new file mode 100644 index 0000000000..d0d9bff3ae --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table06.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table06 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table06

      +

      <test name='table06' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table06</title> +
                <creator>Netscape</creator> +
                <description> +Vertical alignment of data in cells. +The value of attribute valign of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vvAlign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <vAlign interface='HTMLTableSectionElement' obj='vsection' var='vvAlign'/>
           <assertEquals actual='vvAlign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table07.html b/dom/tests/mochitest/dom-level2-html/test_table07.html new file mode 100644 index 0000000000..e81ac9e402 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table07.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table07 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table07

      +

      <test name='table07' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table07</title> +
                <creator>Netscape</creator> +
                <description> +The collection of rows in this table section. +The value of attribute rows of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vcollection' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <rows interface='HTMLTableSectionElement' obj='vsection' var='vcollection'/>
           <length interface='HTMLCollection' obj='vcollection' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='vrowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table08.html b/dom/tests/mochitest/dom-level2-html/test_table08.html new file mode 100644 index 0000000000..9d13c84819 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table08.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table08 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table08

      +

      <test name='table08' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table08</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal alignment of data in cells. +The value of attribute align of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <align interface='HTMLTableSectionElement' obj='vsection' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table09.html b/dom/tests/mochitest/dom-level2-html/test_table09.html new file mode 100644 index 0000000000..1812d575fb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table09.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table09 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table09

      +

      <test name='table09' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table09</title> +
                <creator>Netscape</creator> +
                <description> +Vertical alignment of data in cells. +The value of attribute valign of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-9530944'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <vAlign interface='HTMLTableSectionElement' obj='vsection' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table10.html b/dom/tests/mochitest/dom-level2-html/test_table10.html new file mode 100644 index 0000000000..63981731dc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table10.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table10 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table10

      +

      <test name='table10' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table10</title> +
                <creator>Netscape</creator> +
                <description> +Alignment character for cells in a column. +The value of attribute ch of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <ch interface='HTMLTableSectionElement' obj='vsection' var='vch'/>
           <assertEquals actual='vch' expected='"+"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table12.html b/dom/tests/mochitest/dom-level2-html/test_table12.html new file mode 100644 index 0000000000..862d52b080 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table12.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table12 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table12

      +

      <test name='table12' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table12</title> +
                <creator>Netscape</creator> +
                <description> +Offset of alignment character. +The value of attribute choff of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <chOff interface='HTMLTableSectionElement' obj='vsection' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"1"' id='choffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table15.html b/dom/tests/mochitest/dom-level2-html/test_table15.html new file mode 100644 index 0000000000..ee40383e13 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table15.html @@ -0,0 +1,139 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table15 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table15

      +

      <test name='table15' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table15</title> +
                <creator>Netscape</creator> +
                <description> +The collection of rows in this table section. +The value of attribute rows of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vcollection' type='HTMLCollection'/>
           <var name='vrows' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tHead interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <rows interface='HTMLTableSectionElement' obj='vsection' var='vcollection'/>
           <length interface='HTMLCollection' obj='vcollection' var='vrows'/>
           <assertEquals actual='vrows' expected='1' id='vrowsLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table17.html b/dom/tests/mochitest/dom-level2-html/test_table17.html new file mode 100644 index 0000000000..0fb4d56159 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table17.html @@ -0,0 +1,136 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table17 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table17

      +

      <test name='table17' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table17</title> +
                <creator>Netscape</creator> +
                <description> +Offset of alignment character. +The value of attribute chOff of the tablesection element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64197097'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsection' type='HTMLTableSectionElement'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablesection' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='2' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <tFoot interface='HTMLTableElement' obj='testNode' var='vsection'/>
           <chOff interface='HTMLTableSectionElement' obj='vsection' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"2"' id='choffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table18.html b/dom/tests/mochitest/dom-level2-html/test_table18.html new file mode 100644 index 0000000000..43d735d1d7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table18.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table18 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table18

      +

      <test name='table18' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table18</title> +
                <creator>Netscape</creator> +
                <description> +The index of this cell in the row. +The value of attribute cellIndex of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-80748363'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcindex' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <cellIndex interface='HTMLTableCellElement' obj='testNode' var='vcindex'/>
           <assertEquals actual='vcindex' expected='1' id='cellIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table19.html b/dom/tests/mochitest/dom-level2-html/test_table19.html new file mode 100644 index 0000000000..70b1973baf --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table19.html @@ -0,0 +1,135 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table19 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table19

      +

      <test name='table19' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table19</title> +
                <creator>Netscape</creator> +
                <description> +Abbreviation for header cells. +The index of this cell in the row. +The value of attribute abbr of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74444037'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vabbr' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <abbr interface='HTMLTableCellElement' obj='testNode' var='vabbr'/>
           <assertEquals actual='vabbr' expected='"hd2"' id='abbrLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table20.html b/dom/tests/mochitest/dom-level2-html/test_table20.html new file mode 100644 index 0000000000..0ee499ec4d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table20.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table20 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table20

      +

      <test name='table20' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table20</title> +
                <creator>Netscape</creator> +
                <description> +Names group of related headers. +The value of attribute axis of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-76554418'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vaxis' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <axis interface='HTMLTableCellElement' obj='testNode' var='vaxis'/>
           <assertEquals actual='vaxis' expected='"center"' id='axisLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table21.html b/dom/tests/mochitest/dom-level2-html/test_table21.html new file mode 100644 index 0000000000..47bc008009 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table21.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table21 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table21

      +

      <test name='table21' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table21</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal alignment of data in cell. +The value of attribute align of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-98433879'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableCellElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table22.html b/dom/tests/mochitest/dom-level2-html/test_table22.html new file mode 100644 index 0000000000..8b7a7885d5 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table22.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table22 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table22

      +

      <test name='table22' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table22</title> +
                <creator>Netscape</creator> +
                <description> +Cell background color. +The value of attribute bgColor of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-88135431'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableCellElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#FF0000"' id='bgcolorLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table23.html b/dom/tests/mochitest/dom-level2-html/test_table23.html new file mode 100644 index 0000000000..691659797f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table23.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table23 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table23

      +

      <test name='table23' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table23</title> +
                <creator>Netscape</creator> +
                <description> +Alignment character for cells in a column. +The value of attribute char of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-30914780'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableCellElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='":"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table24.html b/dom/tests/mochitest/dom-level2-html/test_table24.html new file mode 100644 index 0000000000..6397a803ad --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table24.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table24 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table24

      +

      <test name='table24' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table24</title> +
                <creator>Netscape</creator> +
                <description> +offset of alignment character. +The value of attribute chOff of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-20144310'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableCellElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"1"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table25.html b/dom/tests/mochitest/dom-level2-html/test_table25.html new file mode 100644 index 0000000000..107f652213 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table25.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table25 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table25

      +

      <test name='table25' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table25</title> +
                <creator>Netscape</creator> +
                <description> +Number of columns spanned by cell. +The value of attribute colspan of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-84645244'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcolspan' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <colSpan interface='HTMLTableCellElement' obj='testNode' var='vcolspan'/>
           <assertEquals actual='vcolspan' expected='1' id='colSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table26.html b/dom/tests/mochitest/dom-level2-html/test_table26.html new file mode 100644 index 0000000000..aa9b94df7f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table26.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table26 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table26

      +

      <test name='table26' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table26</title> +
                <creator>Netscape</creator> +
                <description> +The value of attribute height of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83679212'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheight' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <height interface='HTMLTableCellElement' obj='testNode' var='vheight'/>
           <assertEquals actual='vheight' expected='"50"' id='heightLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table27.html b/dom/tests/mochitest/dom-level2-html/test_table27.html new file mode 100644 index 0000000000..ccb05c251b --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table27.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table27 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table27

      +

      <test name='table27' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table27</title> +
                <creator>Netscape</creator> +
                <description> +Suppress word wrapping. +The value of attribute nowrap of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-62922045'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vnowrap' type='boolean'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <noWrap interface='HTMLTableCellElement' obj='testNode' var='vnowrap'/>
           <assertTrue actual='vnowrap' id='nowrapLink'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table28.html b/dom/tests/mochitest/dom-level2-html/test_table28.html new file mode 100644 index 0000000000..719ffa42cc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table28.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table28 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table28

      +

      <test name='table28' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table28</title> +
                <creator>Netscape</creator> +
                <description> +Number of rows spanned by cell. +The value of attribute rowspan of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-48237625'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrowspan' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rowSpan interface='HTMLTableCellElement' obj='testNode' var='vrowspan'/>
           <assertEquals actual='vrowspan' expected='1' id='rowSpanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table29.html b/dom/tests/mochitest/dom-level2-html/test_table29.html new file mode 100644 index 0000000000..b3ba2a4cde --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table29.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table29 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table29

      +

      <test name='table29' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table29</title> +
                <creator>Netscape</creator> +
                <description> +Scope covered by header cells. +The value of attribute scope of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-36139952'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vscope' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <scope interface='HTMLTableCellElement' obj='testNode' var='vscope'/>
           <assertEquals actual='vscope' expected='"col"' id='scopeLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table30.html b/dom/tests/mochitest/dom-level2-html/test_table30.html new file mode 100644 index 0000000000..20dd16e84d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table30.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table30 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table30

      +

      <test name='table30' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table30</title> +
                <creator>Netscape</creator> +
                <description> +List of id attribute values for header cells. +The value of attribute headers of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-89104817'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vheaders' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <headers interface='HTMLTableCellElement' obj='testNode' var='vheaders'/>
           <assertEquals actual='vheaders' expected='"header-3"' id='headersLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table31.html b/dom/tests/mochitest/dom-level2-html/test_table31.html new file mode 100644 index 0000000000..4384ea0cfb --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table31.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table31 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table31

      +

      <test name='table31' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table31</title> +
                <creator>Netscape</creator> +
                <description> +Vertical alignment of data in cell. +The value of attribute valign of the tablecell element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-58284221'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableCellElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table32.html b/dom/tests/mochitest/dom-level2-html/test_table32.html new file mode 100644 index 0000000000..9c3f26440d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table32.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table32 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table32

      +

      <test name='table32' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table32</title> +
                <creator>Netscape</creator> +
                <description> +cell width. +The value of attribute width of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-27480795'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecell' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"td"'/>
           <assertSize collection='nodeList' size='4' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <width interface='HTMLTableCellElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"175"' id='vwidthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table33.html b/dom/tests/mochitest/dom-level2-html/test_table33.html new file mode 100644 index 0000000000..23ca0f415f --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table33.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table33 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table33

      +

      <test name='table33' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table33</title> +
                <creator>Netscape</creator> +
                <description> +Specifies the table's position with respect to the rest of the document. +The value of attribute align of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-23180977'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table34.html b/dom/tests/mochitest/dom-level2-html/test_table34.html new file mode 100644 index 0000000000..941683d8f6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table34.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table34 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table34

      +

      <test name='table34' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table34</title> +
                <creator>Netscape</creator> +
                <description> +The width of the border around the table. +The value of attribute border of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-50969400'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vborder' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <border interface='HTMLTableElement' obj='testNode' var='vborder'/>
           <assertEquals actual='vborder' expected='"4"' id='borderLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table35.html b/dom/tests/mochitest/dom-level2-html/test_table35.html new file mode 100644 index 0000000000..b62ed83751 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table35.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table35 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table35

      +

      <test name='table35' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table35</title> +
                <creator>Netscape</creator> +
                <description> +Cell background color. +The value of attribute bgcolor of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83532985'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#ff0000"' id='bgcolorLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table36.html b/dom/tests/mochitest/dom-level2-html/test_table36.html new file mode 100644 index 0000000000..fecd64ea7c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table36.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table36 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table36

      +

      <test name='table36' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table36</title> +
                <creator>Netscape</creator> +
                <description> +Specifies which external table borders to render. +The value of attribute frame of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-64808476'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vframe' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <frame interface='HTMLTableElement' obj='testNode' var='vframe'/>
           <assertEquals actual='vframe' expected='"border"' id='frameLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table37.html b/dom/tests/mochitest/dom-level2-html/test_table37.html new file mode 100644 index 0000000000..ac1370db8d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table37.html @@ -0,0 +1,131 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table37 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table37

      +

      <test name='table37' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table37</title> +
                <creator>Netscape</creator> +
                <description> +Specifies the horizontal and vertical space between cell content and cell borders. The value of attribute cellpadding of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-59162158'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcellpadding' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <cellPadding interface='HTMLTableElement' obj='testNode' var='vcellpadding'/>
           <assertEquals actual='vcellpadding' expected='"2"' id='cellpaddingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table38.html b/dom/tests/mochitest/dom-level2-html/test_table38.html new file mode 100644 index 0000000000..2808b6ffac --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table38.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table38 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table38

      +

      <test name='table38' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table38</title> +
                <creator>Netscape</creator> +
                <description> +Specifies the horizontal and vertical separation between cells. +The value of attribute cellspacing of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68907883'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vcellspacing' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <cellSpacing interface='HTMLTableElement' obj='testNode' var='vcellspacing'/>
           <assertEquals actual='vcellspacing' expected='"2"' id='cellspacingLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table39.html b/dom/tests/mochitest/dom-level2-html/test_table39.html new file mode 100644 index 0000000000..0e44add03c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table39.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table39 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table39

      +

      <test name='table39' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table39</title> +
                <creator>Netscape</creator> +
                <description> +Supplementary description about the purpose or structure of a table. +The value of attribute summary of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-44998528'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vsummary' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <summary interface='HTMLTableElement' obj='testNode' var='vsummary'/>
           <assertEquals actual='vsummary' expected='"HTML Control Table"' id='summaryLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table40.html b/dom/tests/mochitest/dom-level2-html/test_table40.html new file mode 100644 index 0000000000..7bd7104fb8 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table40.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table40 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table40

      +

      <test name='table40' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table40</title> +
                <creator>Netscape</creator> +
                <description> +Specifies which internal table borders to render. +The value of attribute rules of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-26347553'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrules' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <rules interface='HTMLTableElement' obj='testNode' var='vrules'/>
           <assertEquals actual='vrules' expected='"all"' id='rulesLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table41.html b/dom/tests/mochitest/dom-level2-html/test_table41.html new file mode 100644 index 0000000000..4ef3a6cde6 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table41.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table41 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table41

      +

      <test name='table41' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table41</title> +
                <creator>Netscape</creator> +
                <description> +Specifies the desired table width. +The value of attribute width of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-77447361'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/>
           <assertSize collection='nodeList' size='3' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <width interface='HTMLTableElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"680"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table42.html b/dom/tests/mochitest/dom-level2-html/test_table42.html new file mode 100644 index 0000000000..c834b83b4c --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table42.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table42 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table42

      +

      <test name='table42' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table42</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal alignment of data within cells of this row. +The value of attribute align of the tablerow element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='8' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <align interface='HTMLTableRowElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table43.html b/dom/tests/mochitest/dom-level2-html/test_table43.html new file mode 100644 index 0000000000..4c41700ab9 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table43.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table43 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table43

      +

      <test name='table43' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table43</title> +
                <creator>Netscape</creator> +
                <description> +Background color for rows. +The value of attribute bgcolor of the tablerow element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-18161327'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vbgcolor' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='8' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <bgColor interface='HTMLTableRowElement' obj='testNode' var='vbgcolor'/>
           <assertEquals actual='vbgcolor' expected='"#00FFFF"' id='bgcolorLink' ignoreCase='true'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table44.html b/dom/tests/mochitest/dom-level2-html/test_table44.html new file mode 100644 index 0000000000..b4cc70d7ad --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table44.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table44 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table44

      +

      <test name='table44' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table44</title> +
                <creator>Netscape</creator> +
                <description> +Vertical alignment of data within cells of this row. +The value of attribute valign of the tablerow element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-90000058'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='table' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='8' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <vAlign interface='HTMLTableRowElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='valignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table45.html b/dom/tests/mochitest/dom-level2-html/test_table45.html new file mode 100644 index 0000000000..ef7b8352b3 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table45.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table45 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table45

      +

      <test name='table45' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table45</title> +
                <creator>Netscape</creator> +
                <description> +Alignment character for cells in a column. +The value of attribute ch of the tablerow element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <ch interface='HTMLTableRowElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='vchLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table46.html b/dom/tests/mochitest/dom-level2-html/test_table46.html new file mode 100644 index 0000000000..46b1f81d73 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table46.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table46 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table46

      +

      <test name='table46' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table46</title> +
                <creator>Netscape</creator> +
                <description> +Offset of alignment character. +The value of attribute choff of the tablerow element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='1'/>
           <chOff interface='HTMLTableRowElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"1"' id='choffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table47.html b/dom/tests/mochitest/dom-level2-html/test_table47.html new file mode 100644 index 0000000000..9c2ee518b7 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table47.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table47 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table47

      +

      <test name='table47' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table47</title> +
                <creator>Netscape</creator> +
                <description> +The index of this row, relative to the entire table. +The value of attribute rowIndex of the table element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-67347567'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vrindex' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablerow' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tr"'/>
           <assertSize collection='nodeList' size='5' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='4'/>
           <rowIndex interface='HTMLTableRowElement' obj='testNode' var='vrindex'/>
           <assertEquals actual='vrindex' expected='2' id='rowIndexLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table48.html b/dom/tests/mochitest/dom-level2-html/test_table48.html new file mode 100644 index 0000000000..1fadc4b913 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table48.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table48 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table48

      +

      <test name='table48' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>HTMLTableColElement align</title> +
                <creator>Netscape</creator> +
                <description> +Horizontal alignment of cell data in column. +The value of attribute align of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-74098257'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='valign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <align interface='HTMLTableColElement' obj='testNode' var='valign'/>
           <assertEquals actual='valign' expected='"center"' id='alignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table49.html b/dom/tests/mochitest/dom-level2-html/test_table49.html new file mode 100644 index 0000000000..3d0e51e1d0 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table49.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table49 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table49

      +

      <test name='table49' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table49</title> +
                <creator>Netscape</creator> +
                <description> +Alignment character for cells in a column. +The value of attribute ch of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-16230502'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vch' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <ch interface='HTMLTableColElement' obj='testNode' var='vch'/>
           <assertEquals actual='vch' expected='"*"' id='chLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table50.html b/dom/tests/mochitest/dom-level2-html/test_table50.html new file mode 100644 index 0000000000..42a24f385d --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table50.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table50 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table50

      +

      <test name='table50' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table50</title> +
                <creator>Netscape</creator> +
                <description> +Offset of alignment character. +The value of attribute choff of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-68207461'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vchoff' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <chOff interface='HTMLTableColElement' obj='testNode' var='vchoff'/>
           <assertEquals actual='vchoff' expected='"20"' id='chOffLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table51.html b/dom/tests/mochitest/dom-level2-html/test_table51.html new file mode 100644 index 0000000000..095ff6f191 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table51.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table51 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table51

      +

      <test name='table51' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table51</title> +
                <creator>Netscape</creator> +
                <description> +Indicates the number of columns in a group or affected by a grouping. +The value of attribute span of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-96511335'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vspan' type='int'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <span interface='HTMLTableColElement' obj='testNode' var='vspan'/>
           <assertEquals actual='vspan' expected='1' id='spanLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table52.html b/dom/tests/mochitest/dom-level2-html/test_table52.html new file mode 100644 index 0000000000..f8724c73bc --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table52.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table52 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table52

      +

      <test name='table52' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table52</title> +
                <creator>Netscape</creator> +
                <description> +Vertical alignment of cell data in column. +The value of attribute valign of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-83291710'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vvalign' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <vAlign interface='HTMLTableColElement' obj='testNode' var='vvalign'/>
           <assertEquals actual='vvalign' expected='"middle"' id='vAlignLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/dom-level2-html/test_table53.html b/dom/tests/mochitest/dom-level2-html/test_table53.html new file mode 100644 index 0000000000..5442287b17 --- /dev/null +++ b/dom/tests/mochitest/dom-level2-html/test_table53.html @@ -0,0 +1,133 @@ + + + + + +http://www.w3.org/2001/DOM-Test-Suite/level2/html/table53 + + + + + + +

      Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/table53

      +

      <test name='table53' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'>
           <metadata>
                <title>table53</title> +
                <creator>Netscape</creator> +
                <description> +Default column width. +The value of attribute width of the tablecol element is read and checked against the expected value. +</description> +
                <contributor>Sivakiran Tummala</contributor> +
                <date qualifier='created'>2002-02-15</date> +
                <subject resource='http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-25196799'/> +
      </metadata>
           <var name='nodeList' type='NodeList'/>
           <var name='testNode' type='Node'/>
           <var name='vwidth' type='DOMString'/>
           <var name='doc' type='Node'/>
           <load var='doc' href='tablecol' willBeModified='false'/>
           <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"col"'/>
           <assertSize collection='nodeList' size='1' id='Asize'/>
           <item interface='NodeList' obj='nodeList' var='testNode' index='0'/>
           <width interface='HTMLTableColElement' obj='testNode' var='vwidth'/>
           <assertEquals actual='vwidth' expected='"20"' id='widthLink' ignoreCase='false'/>
      </test>
      +

      +

      + Copyright (c) 2001-2004 World Wide Web Consortium, + (Massachusetts Institute of Technology, Institut National de + Recherche en Informatique et en Automatique, Keio University). All + Rights Reserved. This program is distributed under the W3C's Software + Intellectual Property License. This program is distributed in the + hope that it will be useful, but WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. +

      +

      See W3C License http://www.w3.org/Consortium/Legal/ + for more details.

      + +
      + + diff --git a/dom/tests/mochitest/fetch/common_readableStreams.js b/dom/tests/mochitest/fetch/common_readableStreams.js new file mode 100644 index 0000000000..0a101cc580 --- /dev/null +++ b/dom/tests/mochitest/fetch/common_readableStreams.js @@ -0,0 +1,414 @@ +const SAME_COMPARTMENT = "same-compartment"; +const IFRAME_COMPARTMENT = "iframe-compartment"; +const BIG_BUFFER_SIZE = 1000000; +const ITER_MAX = 10; + +function makeBuffer(size) { + let buffer = new Uint8Array(size); + buffer.fill(42); + + let value = 0; + for (let i = 0; i < 1000000; i += 1000) { + buffer.set([++value % 255], i); + } + + return buffer; +} + +function apply_compartment(compartment, data) { + if (compartment == SAME_COMPARTMENT) { + return self[data.func](data.args, self); + } + + if (compartment == IFRAME_COMPARTMENT) { + const iframe = document.querySelector("#iframe").contentWindow; + return iframe[data.func](data.args, self); + } + + ok(false, "Invalid compartment value"); + return undefined; +} + +async function test_nativeStream(compartment) { + info("test_nativeStream"); + + let r = await fetch("/"); + + return apply_compartment(compartment, { + func: "test_nativeStream_continue", + args: r, + }); +} + +async function test_nativeStream_continue(r, that) { + that.ok(r.body instanceof that.ReadableStream, "We have a ReadableStream"); + + let a = r.clone(); + that.ok(a instanceof that.Response, "We have a cloned Response"); + that.ok(a.body instanceof that.ReadableStream, "We have a ReadableStream"); + + let b = a.clone(); + that.ok(b instanceof that.Response, "We have a cloned Response"); + that.ok(b.body instanceof that.ReadableStream, "We have a ReadableStream"); + + let blob = await r.blob(); + + that.ok(blob instanceof that.Blob, "We have a blob"); + let d = await a.body.getReader().read(); + + that.ok(!d.done, "We have read something!"); + blob = await b.blob(); + + that.ok(blob instanceof that.Blob, "We have a blob"); +} + +async function test_timeout(compartment) { + info("test_timeout"); + + let blob = new Blob([""]); + let r = await fetch(URL.createObjectURL(blob)); + + return apply_compartment(compartment, { + func: "test_timeout_continue", + args: r, + }); +} + +async function test_timeout_continue(r, that) { + await r.body.getReader().read(); + + await new Promise(resolve => setTimeout(resolve, 0)); + + try { + await r.blob(); + that.ok(false, "We cannot have a blob here!"); + } catch (exc) { + that.ok(true, "We cannot have a blob here!"); + } +} + +async function test_nonNativeStream(compartment) { + info("test_nonNativeStream"); + + let buffer = makeBuffer(BIG_BUFFER_SIZE); + info("Buffer size: " + buffer.byteLength); + + let r = new Response( + new ReadableStream({ + start: controller => { + controller.enqueue(buffer); + controller.close(); + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_nonNativeStream_continue", + args: { r, buffer }, + }); +} + +async function test_nonNativeStream_continue(data, that) { + that.ok( + data.r.body instanceof that.ReadableStream, + "We have a ReadableStream" + ); + + let a = data.r.clone(); + that.ok(a instanceof that.Response, "We have a cloned Response"); + that.ok(a.body instanceof that.ReadableStream, "We have a ReadableStream"); + + let b = a.clone(); + that.ok(b instanceof that.Response, "We have a cloned Response"); + that.ok(b.body instanceof that.ReadableStream, "We have a ReadableStream"); + + let blob = await data.r.blob(); + + that.ok(blob instanceof that.Blob, "We have a blob"); + let d = await a.body.getReader().read(); + + that.ok(!d.done, "We have read something!"); + blob = await b.blob(); + + that.ok(blob instanceof that.Blob, "We have a blob"); + that.is(blob.size, data.buffer.byteLength, "Blob size matches"); +} + +async function test_noUint8Array(compartment) { + info("test_noUint8Array"); + + let r = new Response( + new ReadableStream({ + start: controller => { + controller.enqueue("hello world!"); + controller.close(); + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_noUint8Array_continue", + args: r, + }); +} + +async function test_noUint8Array_continue(r, that) { + that.ok(r.body instanceof that.ReadableStream, "We have a ReadableStream"); + + try { + await r.blob(); + that.ok(false, "We cannot have a blob here!"); + } catch (ex) { + that.ok(true, "We cannot have a blob here!"); + } +} + +async function test_pendingStream(compartment) { + let r = new Response( + new ReadableStream({ + start: controller => { + controller.enqueue(makeBuffer(BIG_BUFFER_SIZE)); + // Let's keep this controler open. + self.ccc = controller; + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_pendingStream_continue", + args: r, + }); +} + +async function test_pendingStream_continue(r, that) { + let d = await r.body.getReader().read(); + + that.ok(!d.done, "We have read something!"); + + if ("close" in that) { + that.close(); + } +} + +async function test_nativeStream_cache(compartment) { + info("test_nativeStream_cache"); + + let origBody = "123456789abcdef"; + let url = "/nativeStream"; + + let cache = await caches.open("nativeStream"); + + info("Storing a body as a string"); + await cache.put(url, new Response(origBody)); + + return apply_compartment(compartment, { + func: "test_nativeStream_cache_continue", + args: { caches, cache, url, origBody }, + }); +} + +async function test_nativeStream_cache_continue(data, that) { + that.info("Retrieving the stored value"); + let cacheResponse = await data.cache.match(data.url); + + that.info("Converting the response to text"); + let cacheBody = await cacheResponse.text(); + + that.is(data.origBody, cacheBody, "Bodies match"); + + await data.caches.delete("nativeStream"); +} + +async function test_nonNativeStream_cache(compartment) { + info("test_nonNativeStream_cache"); + + let url = "/nonNativeStream"; + + let cache = await caches.open("nonNativeStream"); + let buffer = makeBuffer(BIG_BUFFER_SIZE); + info("Buffer size: " + buffer.byteLength); + + info("Storing a body as a string"); + let r = new Response( + new ReadableStream({ + start: controller => { + controller.enqueue(buffer); + controller.close(); + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_nonNativeStream_cache_continue", + args: { caches, cache, buffer, r }, + }); +} + +async function test_nonNativeStream_cache_continue(data, that) { + await data.cache.put(data.url, data.r); + + that.info("Retrieving the stored value"); + let cacheResponse = await data.cache.match(data.url); + + that.info("Converting the response to text"); + let cacheBody = await cacheResponse.arrayBuffer(); + + that.ok(cacheBody instanceof that.ArrayBuffer, "Body is an array buffer"); + that.is(cacheBody.byteLength, BIG_BUFFER_SIZE, "Body length is correct"); + + let value = 0; + for (let i = 0; i < 1000000; i += 1000) { + that.is( + new Uint8Array(cacheBody)[i], + ++value % 255, + "byte in position " + i + " is correct" + ); + } + + await data.caches.delete("nonNativeStream"); +} + +async function test_codeExecution(compartment) { + info("test_codeExecution"); + + let r = new Response( + new ReadableStream({ + start(c) { + controller = c; + }, + pull() { + console.log("pull called"); + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_codeExecution_continue", + args: r, + }); +} + +// This is intended to just be a drop-in replacement for an old observer +// notification. +function addConsoleStorageListener(listener) { + const ConsoleAPIStorage = SpecialPowers.Cc[ + "@mozilla.org/consoleAPI-storage;1" + ].getService(SpecialPowers.Ci.nsIConsoleAPIStorage); + listener.__handler = (message, id) => { + listener.observe(message, id); + }; + ConsoleAPIStorage.addLogEventListener( + listener.__handler, + SpecialPowers.wrap(document).nodePrincipal + ); +} + +function removeConsoleStorageListener(listener) { + const ConsoleAPIStorage = SpecialPowers.Cc[ + "@mozilla.org/consoleAPI-storage;1" + ].getService(SpecialPowers.Ci.nsIConsoleAPIStorage); + ConsoleAPIStorage.removeLogEventListener(listener.__handler); +} + +async function test_codeExecution_continue(r, that) { + function consoleListener() { + addConsoleStorageListener(this); + } + + var promise = new Promise(resolve => { + consoleListener.prototype = { + observe(aSubject) { + that.ok(true, "Something has been received"); + + var obj = aSubject.wrappedJSObject; + if (obj.arguments[0] && obj.arguments[0] === "pull called") { + that.ok(true, "Message received!"); + removeConsoleStorageListener(this); + resolve(); + } + }, + }; + }); + + var cl = new consoleListener(); + + r.body.getReader().read(); + await promise; +} + +async function test_global(compartment) { + info("test_global: " + compartment); + + self.foo = 42; + self.iter = ITER_MAX; + + let r = new Response( + new ReadableStream({ + start(c) { + self.controller = c; + }, + pull() { + if (!("iter" in self) || self.iter < 0 || self.iter > ITER_MAX) { + throw "Something bad is happening here!"; + } + + let buffer = new Uint8Array(1); + buffer.fill(self.foo); + self.controller.enqueue(buffer); + + if (--self.iter == 0) { + controller.close(); + } + }, + }) + ); + + return apply_compartment(compartment, { + func: "test_global_continue", + args: r, + }); +} + +async function test_global_continue(r, that) { + let a = await r.arrayBuffer(); + + that.is( + Object.getPrototypeOf(a), + that.ArrayBuffer.prototype, + "Body is an array buffer" + ); + that.is(a.byteLength, ITER_MAX, "Body length is correct"); + + for (let i = 0; i < ITER_MAX; ++i) { + that.is(new Uint8Array(a)[i], 42, "Byte " + i + " is correct"); + } +} + +function workify(func) { + info("Workifying " + func); + + return new Promise((resolve, reject) => { + let worker = new Worker("worker_readableStreams.js"); + worker.postMessage(func); + worker.onmessage = function (e) { + if (e.data.type == "done") { + resolve(); + return; + } + + if (e.data.type == "error") { + reject(e.data.message); + return; + } + + if (e.data.type == "test") { + ok(e.data.test, e.data.message); + return; + } + + if (e.data.type == "info") { + info(e.data.message); + } + }; + }); +} diff --git a/dom/tests/mochitest/fetch/common_temporaryFileBlob.js b/dom/tests/mochitest/fetch/common_temporaryFileBlob.js new file mode 100644 index 0000000000..51aed67cf2 --- /dev/null +++ b/dom/tests/mochitest/fetch/common_temporaryFileBlob.js @@ -0,0 +1,146 @@ +var data = new Array(256).join("1234567890ABCDEF"); + +function test_fetch_basic() { + info("Simple fetch test"); + + fetch("/tests/dom/xhr/tests/temporaryFileBlob.sjs", { + method: "POST", + body: data, + }) + .then(response => { + return response.blob(); + }) + .then(blob => { + ok(blob instanceof Blob, "We have a blob!"); + is(blob.size, data.length, "Data length matches"); + if ("SpecialPowers" in self) { + is( + SpecialPowers.wrap(blob).blobImplType, + "StreamBlobImpl[TemporaryFileBlobImpl]", + "We have a blob stored into a stream file" + ); + } + + var fr = new FileReader(); + fr.readAsText(blob); + fr.onload = function () { + is(fr.result, data, "Data content matches"); + next(); + }; + }); +} + +function test_fetch_worker() { + generic_worker_test("fetch in workers", "fetch"); +} + +function test_xhr_basic() { + info("Simple XHR test"); + + let xhr = new XMLHttpRequest(); + xhr.responseType = "blob"; + xhr.open("POST", "/tests/dom/xhr/tests/temporaryFileBlob.sjs"); + xhr.send(data); + + xhr.onreadystatechange = function () { + if (xhr.readyState == 4) { + let blob = xhr.response; + + ok(blob instanceof Blob, "We have a blob!"); + is(blob.size, data.length, "Data length matches"); + if ("SpecialPowers" in self) { + is( + SpecialPowers.wrap(blob).blobImplType, + "StreamBlobImpl[TemporaryFileBlobImpl]", + "We have a blob stored into a stream file" + ); + } + + var fr = new FileReader(); + fr.readAsText(blob); + fr.onload = function () { + is(fr.result, data, "Data content matches"); + next(); + }; + } + }; +} + +function test_xhr_worker() { + generic_worker_test("XHR in workers", "xhr"); +} + +function test_response_basic() { + info("Response"); + + let r = new Response(data); + r.blob().then(blob => { + ok(blob instanceof Blob, "We have a blob!"); + is(blob.size, data.length, "Data length matches"); + if ("SpecialPowers" in self) { + is( + SpecialPowers.wrap(blob).blobImplType, + "StreamBlobImpl[TemporaryFileBlobImpl]", + "We have a blob stored into a stream file" + ); + } + + var fr = new FileReader(); + fr.readAsText(blob); + fr.onload = function () { + is(fr.result, data, "Data content matches"); + next(); + }; + }); +} + +function test_response_worker() { + generic_worker_test("Response in workers", "response"); +} + +function test_request_basic() { + info("Request"); + + let r = new Request("https://example.com", { body: data, method: "POST" }); + r.blob().then(blob => { + ok(blob instanceof Blob, "We have a blob!"); + is(blob.size, data.length, "Data length matches"); + if ("SpecialPowers" in self) { + is( + SpecialPowers.wrap(blob).blobImplType, + "StreamBlobImpl[TemporaryFileBlobImpl]", + "We have a blob stored into a stream file" + ); + } + + var fr = new FileReader(); + fr.readAsText(blob); + fr.onload = function () { + is(fr.result, data, "Data content matches"); + next(); + }; + }); +} + +function test_request_worker() { + generic_worker_test("Request in workers", "request"); +} + +function generic_worker_test(title, what) { + info(title); + + var w = new Worker("worker_temporaryFileBlob.js"); + w.onmessage = function (e) { + if (e.data.type == "info") { + info(e.data.msg); + } else if (e.data.type == "check") { + ok(e.data.what, e.data.msg); + } else if (e.data.type == "finish") { + next(); + } else { + ok(false, "Something wrong happened"); + } + }; + + w.postMessage(what); +} diff --git a/dom/tests/mochitest/fetch/empty.js b/dom/tests/mochitest/fetch/empty.js new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/fetch/empty.js^headers^ b/dom/tests/mochitest/fetch/empty.js^headers^ new file mode 100644 index 0000000000..d0b9633bb0 --- /dev/null +++ b/dom/tests/mochitest/fetch/empty.js^headers^ @@ -0,0 +1 @@ +Service-Worker-Allowed: / diff --git a/dom/tests/mochitest/fetch/fetch_test_framework.js b/dom/tests/mochitest/fetch/fetch_test_framework.js new file mode 100644 index 0000000000..71401ba921 --- /dev/null +++ b/dom/tests/mochitest/fetch/fetch_test_framework.js @@ -0,0 +1,166 @@ +function testScript(script) { + var mode = location.href.includes("http2") ? "?mode=http2&" : "?"; + function makeWrapperUrl(wrapper) { + return wrapper + mode + "script=" + script; + } + let workerWrapperUrl = makeWrapperUrl("worker_wrapper.js"); + + // The framework runs the entire test in many different configurations. + // On slow platforms and builds this can make the tests likely to + // timeout while they are still running. Lengthen the timeout to + // accomodate this. + SimpleTest.requestLongerTimeout(4); + + // reroute.html should have set this variable if a service worker is present! + if (!("isSWPresent" in window)) { + window.isSWPresent = false; + } + + function setupPrefs() { + return new Promise(function (resolve, reject) { + SpecialPowers.pushPrefEnv( + { + set: [ + ["dom.serviceWorkers.enabled", true], + ["dom.serviceWorkers.testing.enabled", true], + ["dom.serviceWorkers.idle_timeout", 60000], + ["dom.serviceWorkers.exemptFromPerDomainMax", true], + ], + }, + resolve + ); + }); + } + + function workerTest() { + return new Promise(function (resolve, reject) { + var worker = new Worker(workerWrapperUrl); + worker.onmessage = function (event) { + if (event.data.context != "Worker") { + return; + } + if (event.data.type == "finish") { + resolve(); + } else if (event.data.type == "status") { + ok(event.data.status, event.data.context + ": " + event.data.msg); + } + }; + worker.onerror = function (event) { + reject("Worker error: " + event.message); + }; + + worker.postMessage({ script }); + }); + } + + function nestedWorkerTest() { + return new Promise(function (resolve, reject) { + var worker = new Worker(makeWrapperUrl("nested_worker_wrapper.js")); + worker.onmessage = function (event) { + if (event.data.context != "NestedWorker") { + return; + } + if (event.data.type == "finish") { + resolve(); + } else if (event.data.type == "status") { + ok(event.data.status, event.data.context + ": " + event.data.msg); + } + }; + worker.onerror = function (event) { + reject("Nested Worker error: " + event.message); + }; + + worker.postMessage({ script }); + }); + } + + function serviceWorkerTest() { + var isB2G = + !navigator.userAgent.includes("Android") && + /Mobile|Tablet/.test(navigator.userAgent); + if (isB2G) { + // TODO B2G doesn't support running service workers for now due to bug 1137683. + dump("Skipping running the test in SW until bug 1137683 gets fixed.\n"); + return Promise.resolve(); + } + return new Promise(function (resolve, reject) { + function setupSW(registration) { + var worker = + registration.installing || + registration.waiting || + registration.active; + var iframe; + + window.addEventListener("message", function onMessage(event) { + if (event.data.context != "ServiceWorker") { + return; + } + if (event.data.type == "finish") { + window.removeEventListener("message", onMessage); + iframe.remove(); + registration.unregister().then(resolve).catch(reject); + } else if (event.data.type == "status") { + ok(event.data.status, event.data.context + ": " + event.data.msg); + } + }); + + worker.onerror = reject; + + iframe = document.createElement("iframe"); + iframe.src = "message_receiver.html"; + iframe.onload = function () { + worker.postMessage({ script }); + }; + document.body.appendChild(iframe); + } + + navigator.serviceWorker + .register(workerWrapperUrl, { scope: "." }) + .then(setupSW); + }); + } + + function windowTest() { + return new Promise(function (resolve, reject) { + var scriptEl = document.createElement("script"); + scriptEl.setAttribute("src", script); + scriptEl.onload = function () { + runTest().then(resolve, reject); + }; + document.body.appendChild(scriptEl); + }); + } + + SimpleTest.waitForExplicitFinish(); + // We have to run the window, worker and service worker tests sequentially + // since some tests set and compare cookies and running in parallel can lead + // to conflicting values. + setupPrefs() + .then(function () { + return windowTest(); + }) + .then(function () { + return workerTest(); + }) + .then(function () { + return nestedWorkerTest(); + }) + .then(function () { + return serviceWorkerTest(); + }) + .catch(function (e) { + ok(false, "Some test failed in " + script); + info(e); + info(e.message); + return Promise.resolve(); + }) + .then(function () { + try { + if (parent && parent.finishTest) { + parent.finishTest(); + return; + } + } catch {} + SimpleTest.finish(); + }); +} diff --git a/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html b/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html new file mode 100644 index 0000000000..64e3289892 --- /dev/null +++ b/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html @@ -0,0 +1 @@ +My contents don't matter. Only my header matters! diff --git a/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html^headers^ b/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html^headers^ new file mode 100644 index 0000000000..eee464d0eb --- /dev/null +++ b/dom/tests/mochitest/fetch/file_fetch_cached_redirect.html^headers^ @@ -0,0 +1,3 @@ +HTTP 302 Redirect +Location: //example.org/target_does_not_matter.html +Cache-Control: max-age=10 diff --git a/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html b/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html new file mode 100644 index 0000000000..793575f45c --- /dev/null +++ b/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html @@ -0,0 +1,13 @@ + + + + diff --git a/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html^headers^ b/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html^headers^ new file mode 100644 index 0000000000..4c43573eb7 --- /dev/null +++ b/dom/tests/mochitest/fetch/file_fetch_csp_block_frame.html^headers^ @@ -0,0 +1,2 @@ +Content-Type: text/html +Content-Security-Policy: connect-src 'self' diff --git a/dom/tests/mochitest/fetch/file_fetch_observer.html b/dom/tests/mochitest/fetch/file_fetch_observer.html new file mode 100644 index 0000000000..480198fa6f --- /dev/null +++ b/dom/tests/mochitest/fetch/file_fetch_observer.html @@ -0,0 +1,146 @@ + diff --git a/dom/tests/mochitest/fetch/iframe_readableStreams.html b/dom/tests/mochitest/fetch/iframe_readableStreams.html new file mode 100644 index 0000000000..11a3838789 --- /dev/null +++ b/dom/tests/mochitest/fetch/iframe_readableStreams.html @@ -0,0 +1,4 @@ + + diff --git a/dom/tests/mochitest/fetch/message_receiver.html b/dom/tests/mochitest/fetch/message_receiver.html new file mode 100644 index 0000000000..82cb587c72 --- /dev/null +++ b/dom/tests/mochitest/fetch/message_receiver.html @@ -0,0 +1,6 @@ + + diff --git a/dom/tests/mochitest/fetch/mochitest.toml b/dom/tests/mochitest/fetch/mochitest.toml new file mode 100644 index 0000000000..ec4aaf4b1a --- /dev/null +++ b/dom/tests/mochitest/fetch/mochitest.toml @@ -0,0 +1,165 @@ +[DEFAULT] +tags = "condprof" +support-files = [ + "fetch_test_framework.js", + "file_fetch_cached_redirect.html", + "file_fetch_cached_redirect.html^headers^", + "file_fetch_csp_block_frame.html", + "file_fetch_csp_block_frame.html^headers^", + "test_fetch_basic.js", + "test_fetch_basic_http.js", + "test_fetch_cached_redirect.js", + "test_fetch_cors.js", + "file_fetch_observer.html", + "test_formdataparsing.js", + "test_headers_common.js", + "test_request.js", + "test_response.js", + "utils.js", + "nested_worker_wrapper.js", + "worker_wrapper.js", + "message_receiver.html", + "reroute.html", + "reroute.js", + "reroute.js^headers^", + "slow.sjs", + "sw_reroute.js", + "empty.js", + "empty.js^headers^", + "worker_temporaryFileBlob.js", + "common_temporaryFileBlob.js", + "common_readableStreams.js", + "worker_readableStreams.js", + "iframe_readableStreams.html", + "!/dom/xhr/tests/file_XHR_binary1.bin", + "!/dom/xhr/tests/file_XHR_binary1.bin^headers^", + "!/dom/xhr/tests/file_XHR_binary2.bin", + "!/dom/xhr/tests/file_XHR_pass1.xml", + "!/dom/xhr/tests/file_XHR_pass2.txt", + "!/dom/xhr/tests/file_XHR_pass3.txt", + "!/dom/xhr/tests/file_XHR_pass3.txt^headers^", + "!/dom/xhr/tests/responseIdentical.sjs", + "!/dom/xhr/tests/temporaryFileBlob.sjs", + "!/dom/html/test/form_submit_server.sjs", + "!/dom/security/test/cors/file_CrossSiteXHR_server.sjs", + "!/dom/security/test/csp/file_redirects_resource.sjs", + "!/dom/base/test/referrer_helper.js", + "!/dom/base/test/referrer_testserver.sjs", +] + +["test_fetch_basic.html"] + +["test_fetch_basic_http.html"] +skip-if = [ + "http2", + "http3", +] + +["test_fetch_basic_http2.html"] +run-if = [ + "http2", + "http3", +] + +["test_fetch_basic_http2_sw_empty_reroute.html"] +run-if = [ + "http2", + "http3", +] + +["test_fetch_basic_http2_sw_reroute.html"] +run-if = [ + "http2", + "http3", +] + +["test_fetch_basic_http_sw_empty_reroute.html"] +skip-if = [ + "http2", + "http3", +] + +["test_fetch_basic_http_sw_reroute.html"] +skip-if = [ + "http2", + "http3", +] + +["test_fetch_basic_sw_empty_reroute.html"] + +["test_fetch_basic_sw_reroute.html"] + +["test_fetch_cached_redirect.html"] + +["test_fetch_cors.html"] +skip-if = [ + "http3", + "http2", +] + +["test_fetch_cors_sw_empty_reroute.html"] +skip-if = [ + "os == 'android'", # Bug 1623134 + "http3", + "http2", +] + +["test_fetch_cors_sw_reroute.html"] +skip-if = [ + "os == 'android'", # Bug 1623134 + "http3", + "http2", +] + +["test_fetch_csp_block.html"] + +["test_fetch_observer.html"] +skip-if = [ + "http3", + "http2", +] + +["test_fetch_user_control_rp.html"] +skip-if = [ + "http3", + "http2", +] + +["test_formdataparsing.html"] + +["test_formdataparsing_sw_reroute.html"] + +["test_headers.html"] + +["test_headers_mainthread.html"] + +["test_headers_sw_reroute.html"] + +["test_readableStreams.html"] +scheme = "https" +skip-if = [ + "http3", + "http2", +] + +["test_request.html"] + +["test_request_context.html"] + +["test_request_sw_reroute.html"] + +["test_response.html"] +skip-if = [ + "http3", + "http2", +] + +["test_responseReadyForWasm.html"] + +["test_response_sw_reroute.html"] +skip-if = [ + "http3", + "http2", +] + +["test_temporaryFileBlob.html"] diff --git a/dom/tests/mochitest/fetch/nested_worker_wrapper.js b/dom/tests/mochitest/fetch/nested_worker_wrapper.js new file mode 100644 index 0000000000..00cf627a25 --- /dev/null +++ b/dom/tests/mochitest/fetch/nested_worker_wrapper.js @@ -0,0 +1,32 @@ +// Hold the nested worker alive until this parent worker closes. +var worker; + +var searchParams = new URL(location.href).searchParams; + +addEventListener("message", function nestedWorkerWrapperOnMessage(evt) { + removeEventListener("message", nestedWorkerWrapperOnMessage); + + var mode = searchParams.get("mode"); + var script = searchParams.get("script"); + worker = new Worker(`worker_wrapper.js?mode=${mode}&script=${script}`); + + worker.addEventListener("message", function (evt) { + self.postMessage({ + context: "NestedWorker", + type: evt.data.type, + status: evt.data.status, + msg: evt.data.msg, + }); + }); + + worker.addEventListener("error", function (evt) { + self.postMessage({ + context: "NestedWorker", + type: "status", + status: false, + msg: "Nested worker error: " + evt.message, + }); + }); + + worker.postMessage(evt.data); +}); diff --git a/dom/tests/mochitest/fetch/reroute.html b/dom/tests/mochitest/fetch/reroute.html new file mode 100644 index 0000000000..087d640946 --- /dev/null +++ b/dom/tests/mochitest/fetch/reroute.html @@ -0,0 +1,22 @@ + + + + + diff --git a/dom/tests/mochitest/fetch/reroute.js b/dom/tests/mochitest/fetch/reroute.js new file mode 100644 index 0000000000..a4f309d780 --- /dev/null +++ b/dom/tests/mochitest/fetch/reroute.js @@ -0,0 +1,27 @@ +onfetch = function (e) { + if (e.request.url.includes("Referer")) { + // Silently rewrite the referrer so the referrer test passes since the + // document/worker isn't aware of this service worker. + var url = e.request.url.substring(0, e.request.url.indexOf("?")); + url += "?headers=" + JSON.stringify({ Referer: self.location.href }); + + e.respondWith( + e.request.text().then(function (text) { + var body = text === "" ? undefined : text; + var mode = + e.request.mode == "navigate" ? "same-origin" : e.request.mode; + return fetch(url, { + method: e.request.method, + headers: e.request.headers, + body, + mode, + credentials: e.request.credentials, + redirect: e.request.redirect, + cache: e.request.cache, + }); + }) + ); + return; + } + e.respondWith(fetch(e.request)); +}; diff --git a/dom/tests/mochitest/fetch/reroute.js^headers^ b/dom/tests/mochitest/fetch/reroute.js^headers^ new file mode 100644 index 0000000000..d0b9633bb0 --- /dev/null +++ b/dom/tests/mochitest/fetch/reroute.js^headers^ @@ -0,0 +1 @@ +Service-Worker-Allowed: / diff --git a/dom/tests/mochitest/fetch/slow.sjs b/dom/tests/mochitest/fetch/slow.sjs new file mode 100644 index 0000000000..8f44798ad5 --- /dev/null +++ b/dom/tests/mochitest/fetch/slow.sjs @@ -0,0 +1,13 @@ +function handleRequest(request, response) { + response.processAsync(); + + timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + timer.init( + function () { + response.write("Here the content. But slowly."); + response.finish(); + }, + 1000, + Ci.nsITimer.TYPE_ONE_SHOT + ); +} diff --git a/dom/tests/mochitest/fetch/sw_reroute.js b/dom/tests/mochitest/fetch/sw_reroute.js new file mode 100644 index 0000000000..4bcd709c07 --- /dev/null +++ b/dom/tests/mochitest/fetch/sw_reroute.js @@ -0,0 +1,47 @@ +var gRegistration; +var iframe; + +function testScript(script) { + var mode = location.href.includes("http2") ? "?mode=http2&" : "?"; + var scope = "./reroute.html" + mode + "script=" + script.replace(".js", ""); + function setupSW(registration) { + gRegistration = registration; + + iframe = document.createElement("iframe"); + iframe.src = scope; + document.body.appendChild(iframe); + } + + SpecialPowers.pushPrefEnv( + { + set: [ + ["dom.serviceWorkers.enabled", true], + ["dom.serviceWorkers.testing.enabled", true], + ["dom.serviceWorkers.exemptFromPerDomainMax", true], + ["dom.serviceWorkers.idle_timeout", 60000], + ], + }, + function () { + var scriptURL = location.href.includes("sw_empty_reroute.html") + ? "empty.js" + : "reroute.js"; + if (location.href.includes("http2")) { + scriptURL += "?mode=http2"; + } + navigator.serviceWorker + .register(scriptURL, { scope }) + .then(swr => waitForState(swr.installing, "activated", swr)) + .then(setupSW); + } + ); +} + +function finishTest() { + iframe.remove(); + gRegistration.unregister().then(SimpleTest.finish, function (e) { + dump("unregistration failed: " + e + "\n"); + SimpleTest.finish(); + }); +} + +SimpleTest.waitForExplicitFinish(); diff --git a/dom/tests/mochitest/fetch/test_fetch_basic.html b/dom/tests/mochitest/fetch/test_fetch_basic.html new file mode 100644 index 0000000000..7f3536c92e --- /dev/null +++ b/dom/tests/mochitest/fetch/test_fetch_basic.html @@ -0,0 +1,23 @@ + + + + + Bug 1039846 - Test fetch() function in worker + + + + +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic.js b/dom/tests/mochitest/fetch/test_fetch_basic.js
      new file mode 100644
      index 0000000000..27343d8662
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic.js
      @@ -0,0 +1,179 @@
      +function testAboutURL() {
      +  var p1 = fetch("about:blank").then(
      +    function (res) {
      +      ok(false, "about:blank should fail");
      +    },
      +    function (e) {
      +      ok(e instanceof TypeError, "about:blank should fail");
      +    }
      +  );
      +
      +  var p2 = fetch("about:config").then(
      +    function (res) {
      +      ok(false, "about:config should fail");
      +    },
      +    function (e) {
      +      ok(e instanceof TypeError, "about:config should fail");
      +    }
      +  );
      +
      +  return Promise.all([p1, p2]);
      +}
      +
      +function testDataURL() {
      +  return Promise.all(
      +    [
      +      [
      +        "data:text/plain;charset=UTF-8,Hello",
      +        "text/plain;charset=UTF-8",
      +        "Hello",
      +      ],
      +      [
      +        "data:text/plain;charset=utf-8;base64,SGVsbG8=",
      +        "text/plain;charset=utf-8",
      +        "Hello",
      +      ],
      +      [
      +        "data:text/xml,%3Cres%3Ehello%3C/res%3E%0A",
      +        "text/xml",
      +        "hello\n",
      +      ],
      +      ["data:text/plain,hello%20pass%0A", "text/plain", "hello pass\n"],
      +      ["data:,foo", "text/plain;charset=US-ASCII", "foo"],
      +      ["data:text/plain;base64,Zm9v", "text/plain", "foo"],
      +      ["data:text/plain,foo#bar", "text/plain", "foo"],
      +      ["data:text/plain,foo%23bar", "text/plain", "foo#bar"],
      +    ].map(test => {
      +      var uri = test[0],
      +        contentType = test[1],
      +        expectedBody = test[2];
      +      return fetch(uri).then(res => {
      +        ok(true, "Data URL fetch should resolve");
      +        if (res.type == "error") {
      +          ok(false, "Data URL fetch should not fail.");
      +          return Promise.reject();
      +        }
      +        ok(res instanceof Response, "Fetch should resolve to a Response");
      +        is(res.status, 200, "Data URL status should be 200");
      +        is(res.statusText, "OK", "Data URL statusText should be OK");
      +        ok(
      +          res.headers.has("content-type"),
      +          "Headers must have Content-Type header"
      +        );
      +        is(
      +          res.headers.get("content-type"),
      +          contentType,
      +          "Content-Type header should match specified value"
      +        );
      +        return res
      +          .text()
      +          .then(body => is(body, expectedBody, "Data URL Body should match"));
      +      });
      +    })
      +  );
      +}
      +
      +function testSameOriginBlobURL() {
      +  var blob = new Blob(["english ", "sentence"], { type: "text/plain" });
      +  var url = URL.createObjectURL(blob);
      +  return fetch(url).then(function (res) {
      +    URL.revokeObjectURL(url);
      +    ok(true, "Blob URL fetch should resolve");
      +    if (res.type == "error") {
      +      ok(false, "Blob URL fetch should not fail.");
      +      return Promise.reject();
      +    }
      +    ok(res instanceof Response, "Fetch should resolve to a Response");
      +    is(res.status, 200, "Blob fetch status should be 200");
      +    is(res.statusText, "OK", "Blob fetch statusText should be OK");
      +    ok(
      +      res.headers.has("content-type"),
      +      "Headers must have Content-Type header"
      +    );
      +    is(
      +      res.headers.get("content-type"),
      +      blob.type,
      +      "Content-Type header should match specified value"
      +    );
      +    ok(
      +      res.headers.has("content-length"),
      +      "Headers must have Content-Length header"
      +    );
      +    is(
      +      parseInt(res.headers.get("content-length")),
      +      16,
      +      "Content-Length should match Blob's size"
      +    );
      +    return res.text().then(function (body) {
      +      is(body, "english sentence", "Blob fetch body should match");
      +    });
      +  });
      +}
      +
      +function testNonGetBlobURL() {
      +  var blob = new Blob(["english ", "sentence"], { type: "text/plain" });
      +  var url = URL.createObjectURL(blob);
      +  return Promise.all(
      +    ["HEAD", "POST", "PUT", "DELETE"].map(method => {
      +      var req = new Request(url, { method });
      +      return fetch(req)
      +        .then(function (res) {
      +          ok(false, "Blob URL with non-GET request should not succeed");
      +        })
      +        .catch(function (e) {
      +          ok(
      +            e instanceof TypeError,
      +            "Blob URL with non-GET request should get a TypeError"
      +          );
      +        });
      +    })
      +  ).then(function () {
      +    URL.revokeObjectURL(url);
      +  });
      +}
      +
      +function testMozErrors() {
      +  // mozErrors shouldn't be available to content and be ignored.
      +  return fetch("http://localhost:4/should/fail", { mozErrors: true })
      +    .then(res => {
      +      ok(false, "Request should not succeed");
      +    })
      +    .catch(err => {
      +      ok(err instanceof TypeError);
      +    });
      +}
      +
      +function testRequestMozErrors() {
      +  // mozErrors shouldn't be available to content and be ignored.
      +  const r = new Request("http://localhost:4/should/fail", { mozErrors: true });
      +  return fetch(r)
      +    .then(res => {
      +      ok(false, "Request should not succeed");
      +    })
      +    .catch(err => {
      +      ok(err instanceof TypeError);
      +    });
      +}
      +
      +function testViewSourceURL() {
      +  var p2 = fetch("view-source:/").then(
      +    function (res) {
      +      ok(false, "view-source: URL should fail");
      +    },
      +    function (e) {
      +      ok(e instanceof TypeError, "view-source: URL should fail");
      +    }
      +  );
      +}
      +
      +function runTest() {
      +  return Promise.resolve()
      +    .then(testAboutURL)
      +    .then(testDataURL)
      +    .then(testSameOriginBlobURL)
      +    .then(testNonGetBlobURL)
      +    .then(testMozErrors)
      +    .then(testRequestMozErrors)
      +    .then(testViewSourceURL);
      +  // Put more promise based tests here.
      +}
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http.html b/dom/tests/mochitest/fetch/test_fetch_basic_http.html
      new file mode 100644
      index 0000000000..f6916501d7
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http.js b/dom/tests/mochitest/fetch/test_fetch_basic_http.js
      new file mode 100644
      index 0000000000..e3b631610b
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http.js
      @@ -0,0 +1,280 @@
      +var path = "/tests/dom/xhr/tests/";
      +
      +var is_http2 = location.href.includes("http2");
      +
      +var passFiles = [
      +  ["file_XHR_pass1.xml", "GET", 200, "OK", "text/xml"],
      +  ["file_XHR_pass2.txt", "GET", 200, "OK", "text/plain"],
      +  ["file_XHR_pass3.txt", "GET", 200, "OK", "text/plain"],
      +];
      +
      +function testURL() {
      +  var promises = [];
      +  passFiles.forEach(function (entry) {
      +    var p = fetch(path + entry[0]).then(function (res) {
      +      ok(
      +        res.type !== "error",
      +        "Response should not be an error for " + entry[0]
      +      );
      +      is(res.status, entry[2], "Status should match expected for " + entry[0]);
      +      is(
      +        res.statusText,
      +        is_http2 ? "" : entry[3],
      +        "Status text should match expected for " +
      +          entry[0] +
      +          " " +
      +          is_http2 +
      +          " " +
      +          location.href
      +      );
      +      if (entry[0] != "file_XHR_pass3.txt") {
      +        ok(
      +          res.url.endsWith(path + entry[0]),
      +          "Response url should match request for simple fetch for " + entry[0]
      +        );
      +      } else {
      +        ok(
      +          res.url.endsWith(path + "file_XHR_pass2.txt"),
      +          "Response url should match request for simple fetch for " + entry[0]
      +        );
      +      }
      +      is(
      +        res.headers.get("content-type"),
      +        entry[4],
      +        "Response should have content-type for " + entry[0]
      +      );
      +    });
      +    promises.push(p);
      +  });
      +
      +  return Promise.all(promises);
      +}
      +
      +var failFiles = [["ftp://localhost" + path + "file_XHR_pass1.xml", "GET"]];
      +
      +function testURLFail() {
      +  var promises = [];
      +  failFiles.forEach(function (entry) {
      +    var p = fetch(entry[0]).then(
      +      function (res) {
      +        ok(false, "Response should be an error for " + entry[0]);
      +      },
      +      function (e) {
      +        ok(
      +          e instanceof TypeError,
      +          "Response should be an error for " + entry[0]
      +        );
      +      }
      +    );
      +    promises.push(p);
      +  });
      +
      +  return Promise.all(promises);
      +}
      +
      +function testRequestGET() {
      +  var promises = [];
      +  passFiles.forEach(function (entry) {
      +    var req = new Request(path + entry[0], { method: entry[1] });
      +    var p = fetch(req).then(function (res) {
      +      ok(
      +        res.type !== "error",
      +        "Response should not be an error for " + entry[0]
      +      );
      +      is(res.status, entry[2], "Status should match expected for " + entry[0]);
      +      is(
      +        res.statusText,
      +        is_http2 ? "" : entry[3],
      +        "Status text should match expected for " +
      +          entry[0] +
      +          " " +
      +          is_http2 +
      +          " " +
      +          location.href
      +      );
      +      if (entry[0] != "file_XHR_pass3.txt") {
      +        ok(
      +          res.url.endsWith(path + entry[0]),
      +          "Response url should match request for simple fetch for " + entry[0]
      +        );
      +      } else {
      +        ok(
      +          res.url.endsWith(path + "file_XHR_pass2.txt"),
      +          "Response url should match request for simple fetch for " + entry[0]
      +        );
      +      }
      +      is(
      +        res.headers.get("content-type"),
      +        entry[4],
      +        "Response should have content-type for " + entry[0]
      +      );
      +    });
      +    promises.push(p);
      +  });
      +
      +  return Promise.all(promises);
      +}
      +
      +function arraybuffer_equals_to(ab, s) {
      +  is(ab.byteLength, s.length, "arraybuffer byteLength should match");
      +
      +  var u8v = new Uint8Array(ab);
      +  is(
      +    String.fromCharCode.apply(String, u8v),
      +    s,
      +    "arraybuffer bytes should match"
      +  );
      +}
      +
      +function testResponses() {
      +  var fetches = [
      +    fetch(path + "file_XHR_pass2.txt").then(res => {
      +      is(res.status, 200, "status should match");
      +      return res
      +        .text()
      +        .then(v => is(v, "hello pass\n", "response should match"));
      +    }),
      +
      +    fetch(path + "file_XHR_binary1.bin").then(res => {
      +      is(res.status, 200, "status should match");
      +      return res
      +        .arrayBuffer()
      +        .then(v =>
      +          arraybuffer_equals_to(
      +            v,
      +            "\xaa\xee\0\x03\xff\xff\xff\xff\xbb\xbb\xbb\xbb"
      +          )
      +        );
      +    }),
      +
      +    new Promise((resolve, reject) => {
      +      var jsonBody = JSON.stringify({ title: "aBook", author: "john" });
      +      var req = new Request(path + "responseIdentical.sjs", {
      +        method: "POST",
      +        body: jsonBody,
      +      });
      +      var p = fetch(req).then(res => {
      +        is(res.status, 200, "status should match");
      +        return res.json().then(v => {
      +          is(JSON.stringify(v), jsonBody, "json response should match");
      +        });
      +      });
      +      resolve(p);
      +    }),
      +
      +    new Promise((resolve, reject) => {
      +      var req = new Request(path + "responseIdentical.sjs", {
      +        method: "POST",
      +        body: "{",
      +      });
      +      var p = fetch(req).then(res => {
      +        is(res.status, 200, "wrong status");
      +        return res.json().then(
      +          v => ok(false, "expected json parse failure"),
      +          e => ok(true, "expected json parse failure")
      +        );
      +      });
      +      resolve(p);
      +    }),
      +  ];
      +
      +  return Promise.all(fetches);
      +}
      +
      +function testBlob() {
      +  return fetch(path + "/file_XHR_binary2.bin").then(r => {
      +    is(r.status, 200, "status should match");
      +    return r.blob().then(b => {
      +      is(b.size, 65536, "blob should have size 65536");
      +      return readAsArrayBuffer(b).then(function (ab) {
      +        var u8 = new Uint8Array(ab);
      +        for (var i = 0; i < 65536; i++) {
      +          if (u8[i] !== (i & 255)) {
      +            break;
      +          }
      +        }
      +        is(i, 65536, "wrong value at offset " + i);
      +      });
      +    });
      +  });
      +}
      +
      +// This test is a copy of dom/html/test/formData_test.js testSend() modified to
      +// use the fetch API. Please change this if you change that.
      +function testFormDataSend() {
      +  var file,
      +    blob = new Blob(["hey"], { type: "text/plain" });
      +
      +  var fd = new FormData();
      +  fd.append("string", "hey");
      +  fd.append("empty", blob);
      +  fd.append("explicit", blob, "explicit-file-name");
      +  fd.append("explicit-empty", blob, "");
      +  file = new File([blob], "testname", { type: "text/plain" });
      +  fd.append("file-name", file);
      +  file = new File([blob], "", { type: "text/plain" });
      +  fd.append("empty-file-name", file);
      +  file = new File([blob], "testname", { type: "text/plain" });
      +  fd.append("file-name-overwrite", file, "overwrite");
      +
      +  var req = new Request("/tests/dom/html/test/form_submit_server.sjs", {
      +    method: "POST",
      +    body: fd,
      +  });
      +
      +  return fetch(req).then(r => {
      +    is(r.status, 200, "status should match");
      +    return r.json().then(response => {
      +      for (var entry of response) {
      +        if (
      +          entry.headers["Content-Disposition"] != 'form-data; name="string"'
      +        ) {
      +          is(entry.headers["Content-Type"], "text/plain");
      +        }
      +
      +        is(entry.body, "hey");
      +      }
      +
      +      is(
      +        response[1].headers["Content-Disposition"],
      +        'form-data; name="empty"; filename="blob"'
      +      );
      +
      +      is(
      +        response[2].headers["Content-Disposition"],
      +        'form-data; name="explicit"; filename="explicit-file-name"'
      +      );
      +
      +      is(
      +        response[3].headers["Content-Disposition"],
      +        'form-data; name="explicit-empty"; filename=""'
      +      );
      +
      +      is(
      +        response[4].headers["Content-Disposition"],
      +        'form-data; name="file-name"; filename="testname"'
      +      );
      +
      +      is(
      +        response[5].headers["Content-Disposition"],
      +        'form-data; name="empty-file-name"; filename=""'
      +      );
      +
      +      is(
      +        response[6].headers["Content-Disposition"],
      +        'form-data; name="file-name-overwrite"; filename="overwrite"'
      +      );
      +    });
      +  });
      +}
      +
      +function runTest() {
      +  return Promise.resolve()
      +    .then(testURL)
      +    .then(testURLFail)
      +    .then(testRequestGET)
      +    .then(testResponses)
      +    .then(testBlob)
      +    .then(testFormDataSend);
      +  // Put more promise based tests here.
      +}
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http2.html b/dom/tests/mochitest/fetch/test_fetch_basic_http2.html
      new file mode 100644
      index 0000000000..f6916501d7
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http2.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_empty_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_empty_reroute.html
      new file mode 100644
      index 0000000000..5ea6a6227c
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_empty_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_reroute.html
      new file mode 100644
      index 0000000000..5ea6a6227c
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http2_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_empty_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_empty_reroute.html
      new file mode 100644
      index 0000000000..5ea6a6227c
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_empty_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_reroute.html
      new file mode 100644
      index 0000000000..5ea6a6227c
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_http_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() http fetching in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_sw_empty_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_sw_empty_reroute.html
      new file mode 100644
      index 0000000000..c5cb02571a
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_sw_empty_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() function in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_basic_sw_reroute.html b/dom/tests/mochitest/fetch/test_fetch_basic_sw_reroute.html
      new file mode 100644
      index 0000000000..c5cb02571a
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_basic_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() function in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cached_redirect.html b/dom/tests/mochitest/fetch/test_fetch_cached_redirect.html
      new file mode 100644
      index 0000000000..d172957bab
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cached_redirect.html
      @@ -0,0 +1,22 @@
      +
      +
      +
      +
      +  Bug 1374943 - Test fetch cached redirects
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cached_redirect.js b/dom/tests/mochitest/fetch/test_fetch_cached_redirect.js
      new file mode 100644
      index 0000000000..48d9b2231f
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cached_redirect.js
      @@ -0,0 +1,17 @@
      +async function testCachedRedirectErrorMode() {
      +  // This is a file that returns a 302 to someplace else and will be cached.
      +  const REDIRECTING_URL = "file_fetch_cached_redirect.html";
      +
      +  let firstResponse = await fetch(REDIRECTING_URL, { redirect: "manual" });
      +  // okay, now it should be in the cahce.
      +  try {
      +    let secondResponse = await fetch(REDIRECTING_URL, { redirect: "error" });
      +  } catch (ex) {}
      +
      +  ok(true, "didn't crash");
      +}
      +
      +function runTest() {
      +  return Promise.resolve().then(testCachedRedirectErrorMode);
      +  // Put more promise based tests here.
      +}
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cors.html b/dom/tests/mochitest/fetch/test_fetch_cors.html
      new file mode 100644
      index 0000000000..b079df8cba
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cors.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() CORS mode
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cors.js b/dom/tests/mochitest/fetch/test_fetch_cors.js
      new file mode 100644
      index 0000000000..05ce221435
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cors.js
      @@ -0,0 +1,1883 @@
      +var path = "/tests/dom/base/test/";
      +
      +function isOpaqueResponse(response) {
      +  return (
      +    response.type == "opaque" &&
      +    response.status === 0 &&
      +    response.statusText === ""
      +  );
      +}
      +
      +function testModeSameOrigin() {
      +  // Fetch spec Section 4, step 4, "request's mode is same-origin".
      +  var req = new Request("http://example.com", { mode: "same-origin" });
      +  return fetch(req).then(
      +    function (res) {
      +      ok(
      +        false,
      +        "Attempting to fetch a resource from a different origin with mode same-origin should fail."
      +      );
      +    },
      +    function (e) {
      +      ok(
      +        e instanceof TypeError,
      +        "Attempting to fetch a resource from a different origin with mode same-origin should fail."
      +      );
      +    }
      +  );
      +}
      +
      +function testNoCorsCtor() {
      +  // Request constructor Step 19.1
      +  var simpleMethods = ["GET", "HEAD", "POST"];
      +  for (var i = 0; i < simpleMethods.length; ++i) {
      +    var r = new Request("http://example.com", {
      +      method: simpleMethods[i],
      +      mode: "no-cors",
      +    });
      +    ok(
      +      true,
      +      "no-cors Request with simple method " + simpleMethods[i] + " is allowed."
      +    );
      +  }
      +
      +  var otherMethods = ["DELETE", "OPTIONS", "PUT"];
      +  for (var i = 0; i < otherMethods.length; ++i) {
      +    try {
      +      var r = new Request("http://example.com", {
      +        method: otherMethods[i],
      +        mode: "no-cors",
      +      });
      +      ok(
      +        false,
      +        "no-cors Request with non-simple method " +
      +          otherMethods[i] +
      +          " is not allowed."
      +      );
      +    } catch (e) {
      +      ok(
      +        true,
      +        "no-cors Request with non-simple method " +
      +          otherMethods[i] +
      +          " is not allowed."
      +      );
      +    }
      +  }
      +
      +  // Request constructor Step 19.2, check guarded headers.
      +  var r = new Request(".", { mode: "no-cors" });
      +  r.headers.append("Content-Type", "multipart/form-data");
      +  is(
      +    r.headers.get("content-type"),
      +    "multipart/form-data",
      +    "Appending simple header should succeed"
      +  );
      +  r.headers.append("custom", "value");
      +  ok(!r.headers.has("custom"), "Appending custom header should fail");
      +  r.headers.append("DNT", "value");
      +  ok(!r.headers.has("DNT"), "Appending forbidden header should fail");
      +}
      +
      +var corsServerPath =
      +  "/tests/dom/security/test/cors/file_CrossSiteXHR_server.sjs?";
      +function testModeNoCors() {
      +  // Fetch spec, section 4, step 4, response tainting should be set opaque, so
      +  // that fetching leads to an opaque filtered response in step 8.
      +  var r = new Request("http://example.com" + corsServerPath + "status=200", {
      +    mode: "no-cors",
      +  });
      +  return fetch(r).then(
      +    function (res) {
      +      ok(
      +        isOpaqueResponse(res),
      +        "no-cors Request fetch should result in opaque response"
      +      );
      +    },
      +    function (e) {
      +      ok(false, "no-cors Request fetch should not error");
      +    }
      +  );
      +}
      +
      +function testSameOriginCredentials() {
      +  var cookieStr = "type=chocolatechip";
      +  var tests = [
      +    {
      +      // Initialize by setting a cookie.
      +      pass: 1,
      +      setCookie: cookieStr,
      +      withCred: "same-origin",
      +    },
      +    {
      +      // Default mode is "same-origin".
      +      pass: 1,
      +      cookie: cookieStr,
      +    },
      +    {
      +      pass: 1,
      +      noCookie: 1,
      +      withCred: "omit",
      +    },
      +    {
      +      pass: 1,
      +      cookie: cookieStr,
      +      withCred: "same-origin",
      +    },
      +    {
      +      pass: 1,
      +      cookie: cookieStr,
      +      withCred: "include",
      +    },
      +  ];
      +
      +  var finalPromiseResolve, finalPromiseReject;
      +  var finalPromise = new Promise(function (res, rej) {
      +    finalPromiseResolve = res;
      +    finalPromiseReject = rej;
      +  });
      +
      +  function makeRequest(test) {
      +    req = {
      +      // Add a default query param just to make formatting the actual params
      +      // easier.
      +      url: corsServerPath + "a=b",
      +      method: test.method,
      +      headers: test.headers,
      +      withCred: test.withCred,
      +    };
      +
      +    if (test.setCookie) {
      +      req.url += "&setCookie=" + escape(test.setCookie);
      +    }
      +    if (test.cookie) {
      +      req.url += "&cookie=" + escape(test.cookie);
      +    }
      +    if (test.noCookie) {
      +      req.url += "&noCookie";
      +    }
      +
      +    return new Request(req.url, {
      +      method: req.method,
      +      headers: req.headers,
      +      credentials: req.withCred,
      +    });
      +  }
      +
      +  function testResponse(res, test) {
      +    ok(test.pass, "Expected test to pass " + JSON.stringify(test));
      +    is(res.status, 200, "wrong status in test for " + JSON.stringify(test));
      +    is(res.statusText, "OK", "wrong status text for " + JSON.stringify(test));
      +    return res.text().then(function (v) {
      +      is(
      +        v,
      +        "hello pass\n",
      +        "wrong text in test for " + JSON.stringify(test)
      +      );
      +    });
      +  }
      +
      +  function runATest(tests, i) {
      +    var test = tests[i];
      +    var request = makeRequest(test);
      +    console.log(request.url);
      +    fetch(request).then(
      +      function (res) {
      +        testResponse(res, test).then(function () {
      +          if (i < tests.length - 1) {
      +            runATest(tests, i + 1);
      +          } else {
      +            finalPromiseResolve();
      +          }
      +        });
      +      },
      +      function (e) {
      +        ok(!test.pass, "Expected test to fail " + JSON.stringify(test));
      +        ok(e instanceof TypeError, "Test should fail " + JSON.stringify(test));
      +        if (i < tests.length - 1) {
      +          runATest(tests, i + 1);
      +        } else {
      +          finalPromiseResolve();
      +        }
      +      }
      +    );
      +  }
      +
      +  runATest(tests, 0);
      +  return finalPromise;
      +}
      +
      +function testModeCors() {
      +  var tests = [
      +    // Plain request
      +    { pass: 1, method: "GET", noAllowPreflight: 1 },
      +
      +    // undefined username
      +    { pass: 1, method: "GET", noAllowPreflight: 1, username: undefined },
      +
      +    // undefined username and password
      +    {
      +      pass: 1,
      +      method: "GET",
      +      noAllowPreflight: 1,
      +      username: undefined,
      +      password: undefined,
      +    },
      +
      +    // nonempty username
      +    { pass: 0, method: "GET", noAllowPreflight: 1, username: "user" },
      +
      +    // nonempty password
      +    { pass: 0, method: "GET", noAllowPreflight: 1, password: "password" },
      +
      +    // Default allowed headers
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "Content-Type": "text/plain",
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +      },
      +      noAllowPreflight: 1,
      +    },
      +
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: {
      +        "Content-Type": "foo/bar",
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +      },
      +      noAllowPreflight: 1,
      +    },
      +
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "Content-Type": "foo/bar, text/plain" },
      +      noAllowPreflight: 1,
      +    },
      +
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "Content-Type": "foo/bar, text/plain, garbage" },
      +      noAllowPreflight: 1,
      +    },
      +
      +    // Custom headers
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "X-My-Header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "x-my-header": "myValue",
      +        "long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header":
      +          "secondValue",
      +      },
      +      allowHeaders:
      +        "x-my-header, long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header-long-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my%-header": "myValue" },
      +      allowHeaders: "x-my%-header",
      +    },
      +    { pass: 0, method: "GET", headers: { "x-my-header": "myValue" } },
      +    { pass: 0, method: "GET", headers: { "x-my-header": "" } },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "y-my-header",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header y-my-header",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header, y-my-header z",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header, y-my-he(ader",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { myheader: "" },
      +      allowMethods: "myheader",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "User-Agent": "myValue" },
      +      allowHeaders: "User-Agent",
      +    },
      +    { pass: 0, method: "GET", headers: { "User-Agent": "myValue" } },
      +
      +    // Multiple custom headers
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "x-my-header": "myValue",
      +        "second-header": "secondValue",
      +        "third-header": "thirdValue",
      +      },
      +      allowHeaders: "x-my-header, second-header, third-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "x-my-header": "myValue",
      +        "second-header": "secondValue",
      +        "third-header": "thirdValue",
      +      },
      +      allowHeaders: "x-my-header,second-header,third-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "x-my-header": "myValue",
      +        "second-header": "secondValue",
      +        "third-header": "thirdValue",
      +      },
      +      allowHeaders: "x-my-header ,second-header ,third-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: {
      +        "x-my-header": "myValue",
      +        "second-header": "secondValue",
      +        "third-header": "thirdValue",
      +      },
      +      allowHeaders: "x-my-header , second-header , third-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue", "second-header": "secondValue" },
      +      allowHeaders: ",  x-my-header, , ,, second-header, ,   ",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue", "second-header": "secondValue" },
      +      allowHeaders: "x-my-header, second-header, unused-header",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "myValue", "y-my-header": "secondValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "", "y-my-header": "" },
      +      allowHeaders: "x-my-header",
      +    },
      +
      +    // HEAD requests
      +    { pass: 1, method: "HEAD", noAllowPreflight: 1 },
      +
      +    // HEAD with safe headers
      +    {
      +      pass: 1,
      +      method: "HEAD",
      +      headers: {
      +        "Content-Type": "text/plain",
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +      },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: {
      +        "Content-Type": "foo/bar",
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +      },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: { "Content-Type": "foo/bar, text/plain" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: { "Content-Type": "foo/bar, text/plain, garbage" },
      +      noAllowPreflight: 1,
      +    },
      +
      +    // HEAD with custom headers
      +    {
      +      pass: 1,
      +      method: "HEAD",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    { pass: 0, method: "HEAD", headers: { "x-my-header": "myValue" } },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "",
      +    },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "y-my-header",
      +    },
      +    {
      +      pass: 0,
      +      method: "HEAD",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header y-my-header",
      +    },
      +
      +    // POST tests
      +    { pass: 1, method: "POST", body: "hi there", noAllowPreflight: 1 },
      +    { pass: 1, method: "POST" },
      +    { pass: 1, method: "POST", noAllowPreflight: 1 },
      +
      +    // POST with standard headers
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "multipart/form-data" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "application/x-www-form-urlencoded" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar" },
      +    },
      +    { pass: 0, method: "POST", headers: { "Content-Type": "foo/bar" } },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: {
      +        "Content-Type": "text/plain",
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +      },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar, text/plain" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar, text/plain, garbage" },
      +      noAllowPreflight: 1,
      +    },
      +
      +    // POST with custom headers
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: {
      +        Accept: "foo/bar",
      +        "Accept-Language": "sv-SE",
      +        "x-my-header": "myValue",
      +      },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      headers: { "Content-Type": "text/plain", "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar", "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header, content-type",
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar" },
      +      noAllowPreflight: 1,
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar", "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "x-my-header": "myValue" },
      +      allowHeaders: "x-my-header, $_%",
      +    },
      +
      +    // Other methods
      +    { pass: 1, method: "DELETE", allowMethods: "DELETE" },
      +    { pass: 0, method: "DELETE", allowHeaders: "DELETE" },
      +    { pass: 0, method: "DELETE" },
      +    { pass: 0, method: "DELETE", allowMethods: "" },
      +    { pass: 1, method: "DELETE", allowMethods: "POST, PUT, DELETE" },
      +    { pass: 1, method: "DELETE", allowMethods: "POST, DELETE, PUT" },
      +    { pass: 1, method: "DELETE", allowMethods: "DELETE, POST, PUT" },
      +    { pass: 1, method: "DELETE", allowMethods: "POST ,PUT ,DELETE" },
      +    { pass: 1, method: "DELETE", allowMethods: "POST,PUT,DELETE" },
      +    { pass: 1, method: "DELETE", allowMethods: "POST , PUT , DELETE" },
      +    {
      +      pass: 1,
      +      method: "DELETE",
      +      allowMethods: "  ,,  PUT ,,  ,    , DELETE  ,  ,",
      +    },
      +    { pass: 0, method: "DELETE", allowMethods: "PUT" },
      +    { pass: 0, method: "DELETE", allowMethods: "DELETEZ" },
      +    { pass: 0, method: "DELETE", allowMethods: "DELETE PUT" },
      +    { pass: 0, method: "DELETE", allowMethods: "DELETE, PUT Z" },
      +    { pass: 0, method: "DELETE", allowMethods: "DELETE, PU(T" },
      +    { pass: 0, method: "DELETE", allowMethods: "PUT DELETE" },
      +    { pass: 0, method: "DELETE", allowMethods: "PUT Z, DELETE" },
      +    { pass: 0, method: "DELETE", allowMethods: "PU(T, DELETE" },
      +    { pass: 0, method: "PUT", allowMethods: "put" },
      +
      +    // Status messages
      +    {
      +      pass: 1,
      +      method: "GET",
      +      noAllowPreflight: 1,
      +      status: 404,
      +      statusMessage: "nothin' here",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      noAllowPreflight: 1,
      +      status: 401,
      +      statusMessage: "no can do",
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "foo/bar" },
      +      allowHeaders: "content-type",
      +      status: 500,
      +      statusMessage: "server boo",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      noAllowPreflight: 1,
      +      status: 200,
      +      statusMessage: "Yes!!",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      headers: { "x-my-header": "header value" },
      +      allowHeaders: "x-my-header",
      +      preflightStatus: 400,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "header value" },
      +      allowHeaders: "x-my-header",
      +      preflightStatus: 200,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      headers: { "x-my-header": "header value" },
      +      allowHeaders: "x-my-header",
      +      preflightStatus: 204,
      +    },
      +
      +    // exposed headers
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "x-my-header",
      +      expectedResponseHeaders: ["x-my-header"],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      origin: "http://invalid",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "x-my-header",
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "x-my-header y",
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "y x-my-header",
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "x-my-header, y-my-header z",
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header" },
      +      exposeHeaders: "x-my-header, y-my-hea(er",
      +      expectedResponseHeaders: [],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: { "x-my-header": "x header", "y-my-header": "y header" },
      +      exposeHeaders: "  ,  ,,y-my-header,z-my-header,  ",
      +      expectedResponseHeaders: ["y-my-header"],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      responseHeaders: {
      +        "Cache-Control": "cacheControl header",
      +        "Content-Language": "contentLanguage header",
      +        Expires: "expires header",
      +        "Last-Modified": "lastModified header",
      +        Pragma: "pragma header",
      +        Unexpected: "unexpected header",
      +      },
      +      expectedResponseHeaders: [
      +        "Cache-Control",
      +        "Content-Language",
      +        "Content-Type",
      +        "Expires",
      +        "Last-Modified",
      +        "Pragma",
      +      ],
      +    },
      +    // Check that sending a body in the OPTIONS response works
      +    {
      +      pass: 1,
      +      method: "DELETE",
      +      allowMethods: "DELETE",
      +      preflightBody: "I'm a preflight response body",
      +    },
      +  ];
      +
      +  var baseURL = "http://example.org" + corsServerPath;
      +  var origin = "http://mochi.test:8888";
      +  var fetches = [];
      +  for (test of tests) {
      +    var req = {
      +      url: baseURL + "allowOrigin=" + escape(test.origin || origin),
      +      method: test.method,
      +      headers: test.headers,
      +      uploadProgress: test.uploadProgress,
      +      body: test.body,
      +      responseHeaders: test.responseHeaders,
      +    };
      +
      +    if (test.pass) {
      +      req.url += "&origin=" + escape(origin) + "&requestMethod=" + test.method;
      +    }
      +
      +    if ("username" in test) {
      +      var u = new URL(req.url);
      +      u.username = test.username || "";
      +      req.url = u.href;
      +    }
      +
      +    if ("password" in test) {
      +      var u = new URL(req.url);
      +      u.password = test.password || "";
      +      req.url = u.href;
      +    }
      +
      +    if (test.noAllowPreflight) {
      +      req.url += "&noAllowPreflight";
      +    }
      +
      +    if (test.pass && "headers" in test) {
      +      function isUnsafeHeader(name) {
      +        lName = name.toLowerCase();
      +        return (
      +          lName != "accept" &&
      +          lName != "accept-language" &&
      +          (lName != "content-type" ||
      +            ![
      +              "text/plain",
      +              "multipart/form-data",
      +              "application/x-www-form-urlencoded",
      +            ].includes(test.headers[name].toLowerCase()))
      +        );
      +      }
      +      req.url += "&headers=" + escape(JSON.stringify(test.headers));
      +      reqHeaders = escape(
      +        Object.keys(test.headers)
      +          .filter(isUnsafeHeader)
      +          .map(s => s.toLowerCase())
      +          .sort()
      +          .join(",")
      +      );
      +      req.url += reqHeaders ? "&requestHeaders=" + reqHeaders : "";
      +    }
      +    if ("allowHeaders" in test) {
      +      req.url += "&allowHeaders=" + escape(test.allowHeaders);
      +    }
      +    if ("allowMethods" in test) {
      +      req.url += "&allowMethods=" + escape(test.allowMethods);
      +    }
      +    if (test.body) {
      +      req.url += "&body=" + escape(test.body);
      +    }
      +    if (test.status) {
      +      req.url += "&status=" + test.status;
      +      req.url += "&statusMessage=" + escape(test.statusMessage);
      +    }
      +    if (test.preflightStatus) {
      +      req.url += "&preflightStatus=" + test.preflightStatus;
      +    }
      +    if (test.responseHeaders) {
      +      req.url +=
      +        "&responseHeaders=" + escape(JSON.stringify(test.responseHeaders));
      +    }
      +    if (test.exposeHeaders) {
      +      req.url += "&exposeHeaders=" + escape(test.exposeHeaders);
      +    }
      +    if (test.preflightBody) {
      +      req.url += "&preflightBody=" + escape(test.preflightBody);
      +    }
      +
      +    fetches.push(
      +      (function (test) {
      +        return new Promise(function (resolve) {
      +          resolve(
      +            new Request(req.url, {
      +              method: req.method,
      +              mode: "cors",
      +              headers: req.headers,
      +              body: req.body,
      +            })
      +          );
      +        })
      +          .then(function (request) {
      +            return fetch(request);
      +          })
      +          .then(function (res) {
      +            ok(test.pass, "Expected test to pass for " + JSON.stringify(test));
      +            if (test.status) {
      +              is(
      +                res.status,
      +                test.status,
      +                "wrong status in test for " + JSON.stringify(test)
      +              );
      +              is(
      +                res.statusText,
      +                test.statusMessage,
      +                "wrong status text for " + JSON.stringify(test)
      +              );
      +            } else {
      +              is(
      +                res.status,
      +                200,
      +                "wrong status in test for " + JSON.stringify(test)
      +              );
      +              is(
      +                res.statusText,
      +                "OK",
      +                "wrong status text for " + JSON.stringify(test)
      +              );
      +            }
      +            if (test.responseHeaders) {
      +              for (header in test.responseHeaders) {
      +                if (!test.expectedResponseHeaders.includes(header)) {
      +                  is(
      +                    res.headers.has(header),
      +                    false,
      +                    "|Headers.has()|wrong response header (" +
      +                      header +
      +                      ") in test for " +
      +                      JSON.stringify(test)
      +                  );
      +                } else {
      +                  is(
      +                    res.headers.get(header),
      +                    test.responseHeaders[header],
      +                    "|Headers.get()|wrong response header (" +
      +                      header +
      +                      ") in test for " +
      +                      JSON.stringify(test)
      +                  );
      +                }
      +              }
      +            }
      +
      +            return res.text();
      +          })
      +          .then(function (v) {
      +            if (test.method !== "HEAD") {
      +              is(
      +                v,
      +                "hello pass\n",
      +                "wrong responseText in test for " + JSON.stringify(test)
      +              );
      +            } else {
      +              is(
      +                v,
      +                "",
      +                "wrong responseText in HEAD test for " + JSON.stringify(test)
      +              );
      +            }
      +          })
      +          .catch(function (e) {
      +            ok(!test.pass, "Expected test failure for " + JSON.stringify(test));
      +            ok(
      +              e instanceof TypeError,
      +              "Exception should be TypeError for " + JSON.stringify(test)
      +            );
      +          });
      +      })(test)
      +    );
      +  }
      +
      +  return Promise.all(fetches);
      +}
      +
      +function testCrossOriginCredentials() {
      +  var origin = "http://mochi.test:8888";
      +  var tests = [
      +    { pass: 1, method: "GET", withCred: "include", allowCred: 1 },
      +    { pass: 0, method: "GET", withCred: "include", allowCred: 0 },
      +    { pass: 0, method: "GET", withCred: "include", allowCred: 1, origin: "*" },
      +    { pass: 1, method: "GET", withCred: "omit", allowCred: 1, origin: "*" },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      setCookie: "a=1",
      +      withCred: "include",
      +      allowCred: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      cookie: "a=1",
      +      withCred: "include",
      +      allowCred: 1,
      +    },
      +    { pass: 1, method: "GET", noCookie: 1, withCred: "omit", allowCred: 1 },
      +    { pass: 0, method: "GET", noCookie: 1, withCred: "include", allowCred: 1 },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      setCookie: "a=2",
      +      withCred: "omit",
      +      allowCred: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      cookie: "a=1",
      +      withCred: "include",
      +      allowCred: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      setCookie: "a=2",
      +      withCred: "include",
      +      allowCred: 1,
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      cookie: "a=2",
      +      withCred: "include",
      +      allowCred: 1,
      +    },
      +    {
      +      // When credentials mode is same-origin, but mode is cors, no
      +      // cookie should be sent cross origin.
      +      pass: 0,
      +      method: "GET",
      +      cookie: "a=2",
      +      withCred: "same-origin",
      +      allowCred: 1,
      +    },
      +    {
      +      // When credentials mode is same-origin, but mode is cors, no
      +      // cookie should be sent cross origin. This test checks the same
      +      // thing as above, but uses the noCookie check on the server
      +      // instead, and expects a valid response.
      +      pass: 1,
      +      method: "GET",
      +      noCookie: 1,
      +      withCred: "same-origin",
      +    },
      +    {
      +      // Initialize by setting a cookies for same- and cross- origins.
      +      pass: 1,
      +      hops: [
      +        { server: origin, setCookie: escape("a=1") },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowCred: 1,
      +          setCookie: escape("a=2"),
      +        },
      +      ],
      +      withCred: "include",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: origin, cookie: escape("a=1") },
      +        { server: origin, cookie: escape("a=1") },
      +        { server: "http://example.com", allowOrigin: origin, noCookie: 1 },
      +      ],
      +      withCred: "same-origin",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: origin, cookie: escape("a=1") },
      +        { server: origin, cookie: escape("a=1") },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowCred: 1,
      +          cookie: escape("a=2"),
      +        },
      +      ],
      +      withCred: "include",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: origin, cookie: escape("a=1") },
      +        { server: origin, cookie: escape("a=1") },
      +        { server: "http://example.com", allowOrigin: "*", noCookie: 1 },
      +      ],
      +      withCred: "same-origin",
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: origin, cookie: escape("a=1") },
      +        { server: origin, cookie: escape("a=1") },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: "*",
      +          allowCred: 1,
      +          cookie: escape("a=2"),
      +        },
      +      ],
      +      withCred: "include",
      +    },
      +    // fails because allow-credentials CORS header is not set by server
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: origin, cookie: escape("a=1") },
      +        { server: origin, cookie: escape("a=1") },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          cookie: escape("a=2"),
      +        },
      +      ],
      +      withCred: "include",
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: origin, noCookie: 1 },
      +        { server: origin, noCookie: 1 },
      +        { server: "http://example.com", allowOrigin: origin, noCookie: 1 },
      +      ],
      +      withCred: "omit",
      +    },
      +  ];
      +
      +  var baseURL = "http://example.org" + corsServerPath;
      +  var origin = "http://mochi.test:8888";
      +
      +  var finalPromiseResolve, finalPromiseReject;
      +  var finalPromise = new Promise(function (res, rej) {
      +    finalPromiseResolve = res;
      +    finalPromiseReject = rej;
      +  });
      +
      +  function makeRequest(test) {
      +    var url;
      +    if (test.hops) {
      +      url =
      +        test.hops[0].server +
      +        corsServerPath +
      +        "hop=1&hops=" +
      +        escape(JSON.stringify(test.hops));
      +    } else {
      +      url = baseURL + "allowOrigin=" + escape(test.origin || origin);
      +    }
      +    req = {
      +      url,
      +      method: test.method,
      +      headers: test.headers,
      +      withCred: test.withCred,
      +    };
      +
      +    if (test.allowCred) {
      +      req.url += "&allowCred";
      +    }
      +
      +    if (test.setCookie) {
      +      req.url += "&setCookie=" + escape(test.setCookie);
      +    }
      +    if (test.cookie) {
      +      req.url += "&cookie=" + escape(test.cookie);
      +    }
      +    if (test.noCookie) {
      +      req.url += "&noCookie";
      +    }
      +
      +    if ("allowHeaders" in test) {
      +      req.url += "&allowHeaders=" + escape(test.allowHeaders);
      +    }
      +    if ("allowMethods" in test) {
      +      req.url += "&allowMethods=" + escape(test.allowMethods);
      +    }
      +
      +    return new Request(req.url, {
      +      method: req.method,
      +      headers: req.headers,
      +      credentials: req.withCred,
      +    });
      +  }
      +
      +  function testResponse(res, test) {
      +    ok(test.pass, "Expected test to pass for " + JSON.stringify(test));
      +    is(res.status, 200, "wrong status in test for " + JSON.stringify(test));
      +    is(res.statusText, "OK", "wrong status text for " + JSON.stringify(test));
      +    return res.text().then(function (v) {
      +      is(
      +        v,
      +        "hello pass\n",
      +        "wrong text in test for " + JSON.stringify(test)
      +      );
      +    });
      +  }
      +
      +  function runATest(tests, i) {
      +    var test = tests[i];
      +    var request = makeRequest(test);
      +    fetch(request).then(
      +      function (res) {
      +        testResponse(res, test).then(function () {
      +          if (i < tests.length - 1) {
      +            runATest(tests, i + 1);
      +          } else {
      +            finalPromiseResolve();
      +          }
      +        });
      +      },
      +      function (e) {
      +        ok(!test.pass, "Expected test failure for " + JSON.stringify(test));
      +        ok(
      +          e instanceof TypeError,
      +          "Exception should be TypeError for " + JSON.stringify(test)
      +        );
      +        if (i < tests.length - 1) {
      +          runATest(tests, i + 1);
      +        } else {
      +          finalPromiseResolve();
      +        }
      +      }
      +    );
      +  }
      +
      +  runATest(tests, 0);
      +  return finalPromise;
      +}
      +
      +function testModeNoCorsCredentials() {
      +  var cookieStr = "type=chocolatechip";
      +  var tests = [
      +    {
      +      // Initialize by setting a cookie.
      +      pass: 1,
      +      setCookie: cookieStr,
      +      withCred: "include",
      +    },
      +    {
      +      pass: 1,
      +      noCookie: 1,
      +      withCred: "omit",
      +    },
      +    {
      +      pass: 1,
      +      noCookie: 1,
      +      withCred: "same-origin",
      +    },
      +    {
      +      pass: 1,
      +      cookie: cookieStr,
      +      withCred: "include",
      +    },
      +    {
      +      pass: 1,
      +      cookie: cookieStr,
      +      withCred: "omit",
      +      status: 500,
      +    },
      +    {
      +      pass: 1,
      +      cookie: cookieStr,
      +      withCred: "same-origin",
      +      status: 500,
      +    },
      +    {
      +      pass: 1,
      +      noCookie: 1,
      +      withCred: "include",
      +      status: 500,
      +    },
      +  ];
      +
      +  var finalPromiseResolve, finalPromiseReject;
      +  var finalPromise = new Promise(function (res, rej) {
      +    finalPromiseResolve = res;
      +    finalPromiseReject = rej;
      +  });
      +
      +  function makeRequest(test) {
      +    req = {
      +      url: "http://example.org" + corsServerPath + "a+b",
      +      withCred: test.withCred,
      +    };
      +
      +    if (test.setCookie) {
      +      req.url += "&setCookie=" + escape(test.setCookie);
      +    }
      +    if (test.cookie) {
      +      req.url += "&cookie=" + escape(test.cookie);
      +    }
      +    if (test.noCookie) {
      +      req.url += "&noCookie";
      +    }
      +
      +    return new Request(req.url, {
      +      method: "GET",
      +      mode: "no-cors",
      +      credentials: req.withCred,
      +    });
      +  }
      +
      +  function testResponse(res, test) {
      +    is(res.type, "opaque", "wrong response type for " + JSON.stringify(test));
      +
      +    // Get unfiltered response
      +    var chromeResponse = SpecialPowers.wrap(res);
      +    var unfiltered = chromeResponse.cloneUnfiltered();
      +
      +    var status = test.status ? test.status : 200;
      +    is(
      +      unfiltered.status,
      +      status,
      +      "wrong status in test for " + JSON.stringify(test)
      +    );
      +
      +    return unfiltered.text().then(function (v) {
      +      if (test.status === 200) {
      +        const expected =
      +          SpecialPowers.getIntPref(
      +            "browser.opaqueResponseBlocking.filterFetchResponse"
      +          ) > 0
      +            ? ""
      +            : "hello pass\n";
      +        is(v, expected, "wrong text in test for " + JSON.stringify(test));
      +      }
      +    });
      +  }
      +
      +  function runATest(tests, i) {
      +    if (typeof SpecialPowers !== "object") {
      +      finalPromiseResolve();
      +      return;
      +    }
      +
      +    var test = tests[i];
      +    var request = makeRequest(test);
      +    fetch(request).then(
      +      function (res) {
      +        ok(test.pass, "Expected test to pass " + JSON.stringify(test));
      +        testResponse(res, test).then(function () {
      +          if (i < tests.length - 1) {
      +            runATest(tests, i + 1);
      +          } else {
      +            finalPromiseResolve();
      +          }
      +        });
      +      },
      +      function (e) {
      +        ok(!test.pass, "Expected test to fail " + JSON.stringify(test));
      +        ok(e instanceof TypeError, "Test should fail " + JSON.stringify(test));
      +        if (i < tests.length - 1) {
      +          runATest(tests, i + 1);
      +        } else {
      +          finalPromiseResolve();
      +        }
      +      }
      +    );
      +  }
      +
      +  runATest(tests, 0);
      +  return finalPromise;
      +}
      +
      +function testCORSRedirects() {
      +  var origin = "http://mochi.test:8888";
      +
      +  var tests = [
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [{ server: "http://example.com", allowOrigin: origin }],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://mochi.test:8888", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://mochi.test:8888", allowOrigin: "*" },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://mochi.test:8888" },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://example.com", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://mochi.test:8888" },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: origin },
      +        {
      +          server: "http://sub2.xn--lt-uia.mochi.test:8888",
      +          allowOrigin: origin,
      +        },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: origin },
      +        { server: "http://sub2.xn--lt-uia.mochi.test:8888", allowOrigin: "*" },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: "*" },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: "*" },
      +        { server: "http://sub2.xn--lt-uia.mochi.test:8888", allowOrigin: "*" },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: "*" },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: origin },
      +        { server: "http://sub2.xn--lt-uia.mochi.test:8888", allowOrigin: "x" },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: origin },
      +        { server: "http://sub2.xn--lt-uia.mochi.test:8888", allowOrigin: "*" },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "GET",
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://test2.mochi.test:8888", allowOrigin: origin },
      +        { server: "http://sub2.xn--lt-uia.mochi.test:8888", allowOrigin: "*" },
      +        { server: "http://sub1.test1.mochi.test:8888" },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain" },
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://example.com", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +          noAllowPreflight: 1,
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://test1.example.com",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +        {
      +          server: "http://test2.example.com",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "DELETE",
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "DELETE",
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +          noAllowPreflight: 1,
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "DELETE",
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        {
      +          server: "http://test1.example.com",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +        },
      +        {
      +          server: "http://test2.example.com",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        { server: "http://example.com", allowOrigin: origin },
      +        { server: "http://sub1.test1.mochi.test:8888", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "DELETE",
      +      hops: [
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +        },
      +        {
      +          server: "http://sub1.test1.mochi.test:8888",
      +          allowOrigin: origin,
      +          allowMethods: "DELETE",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        { server: "http://example.com" },
      +        {
      +          server: "http://sub1.test1.mochi.test:8888",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain" },
      +      hops: [
      +        { server: "http://mochi.test:8888" },
      +        { server: "http://example.com", allowOrigin: origin },
      +      ],
      +    },
      +    {
      +      pass: 0,
      +      method: "POST",
      +      body: "hi there",
      +      headers: { "Content-Type": "text/plain", "my-header": "myValue" },
      +      hops: [
      +        {
      +          server: "http://example.com",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +        {
      +          server: "http://mochi.test:8888",
      +          allowOrigin: origin,
      +          allowHeaders: "my-header",
      +        },
      +      ],
      +    },
      +  ];
      +
      +  var fetches = [];
      +  for (test of tests) {
      +    req = {
      +      url:
      +        test.hops[0].server +
      +        corsServerPath +
      +        "hop=1&hops=" +
      +        escape(JSON.stringify(test.hops)),
      +      method: test.method,
      +      headers: test.headers,
      +      body: test.body,
      +    };
      +
      +    if (test.headers) {
      +      req.url += "&headers=" + escape(JSON.stringify(test.headers));
      +    }
      +
      +    if (test.pass) {
      +      if (test.body) {
      +        req.url += "&body=" + escape(test.body);
      +      }
      +    }
      +
      +    var request = new Request(req.url, {
      +      method: req.method,
      +      headers: req.headers,
      +      body: req.body,
      +    });
      +    fetches.push(
      +      (function (request, test) {
      +        return fetch(request).then(
      +          function (res) {
      +            ok(test.pass, "Expected test to pass for " + JSON.stringify(test));
      +            is(
      +              res.status,
      +              200,
      +              "wrong status in test for " + JSON.stringify(test)
      +            );
      +            is(
      +              res.statusText,
      +              "OK",
      +              "wrong status text for " + JSON.stringify(test)
      +            );
      +            is(
      +              res.type,
      +              "cors",
      +              "wrong response type for " + JSON.stringify(test)
      +            );
      +            var reqHost = new URL(req.url).host;
      +            // If there is a service worker present, the redirections will be
      +            // transparent, assuming that the original request is to the current
      +            // site and would be intercepted.
      +            if (isSWPresent) {
      +              if (reqHost === location.host) {
      +                is(
      +                  new URL(res.url).host,
      +                  reqHost,
      +                  "Response URL should be original URL with a SW present"
      +                );
      +              }
      +            } else {
      +              is(
      +                new URL(res.url).host,
      +                new URL(test.hops[test.hops.length - 1].server).host,
      +                "Response URL should be redirected URL"
      +              );
      +            }
      +            return res.text().then(function (v) {
      +              is(
      +                v,
      +                "hello pass\n",
      +                "wrong responseText in test for " + JSON.stringify(test)
      +              );
      +            });
      +          },
      +          function (e) {
      +            ok(!test.pass, "Expected test failure for " + JSON.stringify(test));
      +            ok(
      +              e instanceof TypeError,
      +              "Exception should be TypeError for " + JSON.stringify(test)
      +            );
      +          }
      +        );
      +      })(request, test)
      +    );
      +  }
      +
      +  return Promise.all(fetches);
      +}
      +
      +function testNoCORSRedirects() {
      +  var origin = "http://mochi.test:8888";
      +
      +  var tests = [
      +    { pass: 1, method: "GET", hops: [{ server: "http://example.com" }] },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [{ server: origin }, { server: "http://example.com" }],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      // Must use a simple header due to no-cors header restrictions.
      +      headers: { "accept-language": "en-us" },
      +      hops: [{ server: origin }, { server: "http://example.com" }],
      +    },
      +    {
      +      pass: 1,
      +      method: "GET",
      +      hops: [
      +        { server: origin },
      +        { server: "http://example.com" },
      +        { server: origin },
      +      ],
      +    },
      +    {
      +      pass: 1,
      +      method: "POST",
      +      body: "upload body here",
      +      hops: [{ server: origin }, { server: "http://example.com" }],
      +    },
      +    {
      +      pass: 0,
      +      method: "DELETE",
      +      hops: [{ server: origin }, { server: "http://example.com" }],
      +    },
      +  ];
      +
      +  var fetches = [];
      +  for (test of tests) {
      +    req = {
      +      url:
      +        test.hops[0].server +
      +        corsServerPath +
      +        "hop=1&hops=" +
      +        escape(JSON.stringify(test.hops)),
      +      method: test.method,
      +      headers: test.headers,
      +      body: test.body,
      +    };
      +
      +    if (test.headers) {
      +      req.url += "&headers=" + escape(JSON.stringify(test.headers));
      +    }
      +
      +    if (test.pass) {
      +      if (test.body) {
      +        req.url += "&body=" + escape(test.body);
      +      }
      +    }
      +
      +    fetches.push(
      +      (function (req, test) {
      +        return new Promise(function (resolve, reject) {
      +          resolve(
      +            new Request(req.url, {
      +              mode: "no-cors",
      +              method: req.method,
      +              headers: req.headers,
      +              body: req.body,
      +            })
      +          );
      +        })
      +          .then(function (request) {
      +            return fetch(request);
      +          })
      +          .then(
      +            function (res) {
      +              ok(
      +                test.pass,
      +                "Expected test to pass for " + JSON.stringify(test)
      +              );
      +              // All requests are cross-origin no-cors, we should always have
      +              // an opaque response here.  All values on the opaque response
      +              // should be hidden.
      +              is(
      +                res.type,
      +                "opaque",
      +                "wrong response type for " + JSON.stringify(test)
      +              );
      +              is(
      +                res.status,
      +                0,
      +                "wrong status in test for " + JSON.stringify(test)
      +              );
      +              is(
      +                res.statusText,
      +                "",
      +                "wrong status text for " + JSON.stringify(test)
      +              );
      +              is(res.url, "", "wrong response url for " + JSON.stringify(test));
      +              return res.text().then(function (v) {
      +                is(
      +                  v,
      +                  "",
      +                  "wrong responseText in test for " + JSON.stringify(test)
      +                );
      +              });
      +            },
      +            function (e) {
      +              ok(
      +                !test.pass,
      +                "Expected test failure for " + JSON.stringify(test)
      +              );
      +              ok(
      +                e instanceof TypeError,
      +                "Exception should be TypeError for " + JSON.stringify(test)
      +              );
      +            }
      +          );
      +      })(req, test)
      +    );
      +  }
      +
      +  return Promise.all(fetches);
      +}
      +
      +function testReferrer() {
      +  var referrer;
      +  if (self && self.location) {
      +    referrer = self.location.href;
      +  } else {
      +    referrer = document.documentURI;
      +  }
      +
      +  var dict = {
      +    Referer: referrer,
      +  };
      +  return fetch(
      +    corsServerPath + "headers=" + encodeURIComponent(JSON.stringify(dict))
      +  ).then(
      +    function (res) {
      +      is(res.status, 200, "expected correct referrer header to be sent");
      +      dump(res.statusText);
      +    },
      +    function (e) {
      +      ok(false, "expected correct referrer header to be sent");
      +    }
      +  );
      +}
      +
      +function runTest() {
      +  testNoCorsCtor();
      +  let promise = Promise.resolve();
      +  if (typeof SpecialPowers === "object") {
      +    promise = SpecialPowers.pushPrefEnv({
      +      // Bug 1617611: Fix all the tests broken by "cookies SameSite=lax by default"
      +      set: [["network.cookie.sameSite.laxByDefault", false]],
      +    });
      +  }
      +
      +  return promise
      +    .then(testModeSameOrigin)
      +    .then(testModeNoCors)
      +    .then(testModeCors)
      +    .then(testSameOriginCredentials)
      +    .then(testCrossOriginCredentials)
      +    .then(testModeNoCorsCredentials)
      +    .then(testCORSRedirects)
      +    .then(testNoCORSRedirects)
      +    .then(testReferrer);
      +  // Put more promise based tests here.
      +}
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cors_sw_empty_reroute.html b/dom/tests/mochitest/fetch/test_fetch_cors_sw_empty_reroute.html
      new file mode 100644
      index 0000000000..ab519de573
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cors_sw_empty_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() CORS mode
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_cors_sw_reroute.html b/dom/tests/mochitest/fetch/test_fetch_cors_sw_reroute.html
      new file mode 100644
      index 0000000000..ab519de573
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_cors_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test fetch() CORS mode
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_csp_block.html b/dom/tests/mochitest/fetch/test_fetch_csp_block.html
      new file mode 100644
      index 0000000000..0347c7319e
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_csp_block.html
      @@ -0,0 +1,50 @@
      +
      +
      +
      +  
      +  Test fetch() rejects when CSP blocks
      +  
      +  
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_observer.html b/dom/tests/mochitest/fetch/test_fetch_observer.html
      new file mode 100644
      index 0000000000..7d9c80f4c8
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_observer.html
      @@ -0,0 +1,40 @@
      +
      +
      +
      +
      +  Test FetchObserver
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_fetch_user_control_rp.html b/dom/tests/mochitest/fetch/test_fetch_user_control_rp.html
      new file mode 100644
      index 0000000000..67ad489191
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_fetch_user_control_rp.html
      @@ -0,0 +1,103 @@
      +
      +
      +
      +  
      +  Test fetch user control referrer policy Bug 1304623
      +  
      +  
      +    
      +  
      +
      +
      +
      +  
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_formdataparsing.html b/dom/tests/mochitest/fetch/test_formdataparsing.html
      new file mode 100644
      index 0000000000..d82f9425ad
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_formdataparsing.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1109751 - Test FormData parsing
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_formdataparsing.js b/dom/tests/mochitest/fetch/test_formdataparsing.js
      new file mode 100644
      index 0000000000..df33beb1cc
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_formdataparsing.js
      @@ -0,0 +1,369 @@
      +var boundary = "1234567891011121314151617";
      +
      +// fn(body) should create a Body subclass with content body treated as
      +// FormData and return it.
      +function testFormDataParsing(fn) {
      +  function makeTest(shouldPass, input, testFn) {
      +    var obj = fn(input);
      +    return obj.formData().then(
      +      function (fd) {
      +        ok(shouldPass, "Expected test to be valid FormData for " + input);
      +        if (testFn) {
      +          return testFn(fd);
      +        }
      +        return undefined;
      +      },
      +      function (e) {
      +        if (shouldPass) {
      +          ok(false, "Expected test to pass for " + input);
      +        } else {
      +          ok(e.name == "TypeError", "Error should be a TypeError.");
      +        }
      +      }
      +    );
      +  }
      +
      +  // [shouldPass?, input, testFn]
      +  var tests = [
      +    [
      +      true,
      +
      +      boundary +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        is(fd.get("greeting"), '"hello"');
      +      },
      +    ],
      +    [
      +      false,
      +
      +      // Invalid disposition.
      +      boundary +
      +        '\r\nContent-Disposition: form-datafoobar; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      true,
      +
      +      "--" +
      +        boundary +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        is(fd.get("greeting"), '"hello"');
      +      },
      +    ],
      +    [false, boundary + "\r\n\r\n" + boundary + "-"],
      +    [
      +      false,
      +      // No valid ending.
      +      boundary + "\r\n\r\n" + boundary,
      +    ],
      +    [
      +      false,
      +
      +      // One '-' prefix is not allowed. 2 or none.
      +      "-" +
      +        boundary +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      "invalid" +
      +        boundary +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        "suffix" +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        "suffix" +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      // Partial boundary
      +      boundary.substr(3) +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // Missing '\n' at beginning.
      +        '\rContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // No form-data.
      +        '\r\nContent-Disposition: mixed; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // No headers.
      +        '\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // No content-disposition.
      +        '\r\nContent-Dispositypo: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // No name.
      +        '\r\nContent-Disposition: form-data;\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // Missing empty line between headers and body.
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      // Empty entry followed by valid entry.
      +      boundary +
      +        "\r\n\r\n" +
      +        boundary +
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +
      +      boundary +
      +        // Header followed by empty line, but empty body not followed by
      +        // newline.
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      true,
      +
      +      boundary +
      +        // Empty body followed by newline.
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        is(fd.get("greeting"), "", "Empty value is allowed.");
      +      },
      +    ],
      +    [
      +      false,
      +      boundary +
      +        // Value is boundary itself.
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n' +
      +        boundary +
      +        "\r\n" +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      false,
      +      boundary +
      +        // Variant of above with no valid ending boundary.
      +        '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n' +
      +        boundary,
      +    ],
      +    [
      +      true,
      +      boundary +
      +        // Unquoted filename with empty body.
      +        '\r\nContent-Disposition: form-data; name="file"; filename=file1.txt\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        var f = fd.get("file");
      +        ok(
      +          f instanceof File,
      +          "Entry with filename attribute should be read as File."
      +        );
      +        is(f.name, "file1.txt", "Filename should match.");
      +        is(f.type, "text/plain", "Default content-type should be text/plain.");
      +        return readAsText(f).then(function (text) {
      +          is(text, "", "File should be empty.");
      +        });
      +      },
      +    ],
      +    [
      +      true,
      +      boundary +
      +        // Quoted filename with empty body.
      +        '\r\nContent-Disposition: form-data; name="file"; filename="file1.txt"\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        var f = fd.get("file");
      +        ok(
      +          f instanceof File,
      +          "Entry with filename attribute should be read as File."
      +        );
      +        is(f.name, "file1.txt", "Filename should match.");
      +        is(f.type, "text/plain", "Default content-type should be text/plain.");
      +        return readAsText(f).then(function (text) {
      +          is(text, "", "File should be empty.");
      +        });
      +      },
      +    ],
      +    [
      +      false,
      +      boundary +
      +        // Invalid filename
      +        '\r\nContent-Disposition: form-data; name="file"; filename="[\n@;xt"\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +    ],
      +    [
      +      true,
      +      boundary +
      +        '\r\nContent-Disposition: form-data; name="file"; filename="[@;xt"\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        var f = fd.get("file");
      +        ok(
      +          f instanceof File,
      +          "Entry with filename attribute should be read as File."
      +        );
      +        is(f.name, "[@", "Filename should match.");
      +      },
      +    ],
      +    [
      +      true,
      +      boundary +
      +        '\r\nContent-Disposition: form-data; name="file"; filename="file with   spaces"\r\n\r\n\r\n' +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        var f = fd.get("file");
      +        ok(
      +          f instanceof File,
      +          "Entry with filename attribute should be read as File."
      +        );
      +        is(f.name, "file with spaces", "Filename should match.");
      +      },
      +    ],
      +    [
      +      true,
      +      boundary +
      +        "\r\n" +
      +        'Content-Disposition: form-data; name="file"; filename="xml.txt"\r\n' +
      +        "content-type       : application/xml\r\n" +
      +        "\r\n" +
      +        "foobar\r\n\r\n\r\n" +
      +        boundary +
      +        "-",
      +
      +      function (fd) {
      +        var f = fd.get("file");
      +        ok(
      +          f instanceof File,
      +          "Entry with filename attribute should be read as File."
      +        );
      +        is(f.name, "xml.txt", "Filename should match.");
      +        is(
      +          f.type,
      +          "application/xml",
      +          "content-type should be application/xml."
      +        );
      +        return readAsText(f).then(function (text) {
      +          is(
      +            text,
      +            "foobar\r\n\r\n",
      +            "File should have correct text."
      +          );
      +        });
      +      },
      +    ],
      +  ];
      +
      +  var promises = [];
      +  for (var i = 0; i < tests.length; ++i) {
      +    var test = tests[i];
      +    promises.push(makeTest(test[0], test[1], test[2]));
      +  }
      +
      +  return Promise.all(promises);
      +}
      +
      +function makeRequest(body) {
      +  var req = new Request("", {
      +    method: "post",
      +    body,
      +    headers: {
      +      "Content-Type": "multipart/form-data; boundary=" + boundary,
      +    },
      +  });
      +  return req;
      +}
      +
      +function makeResponse(body) {
      +  var res = new Response(body, {
      +    headers: {
      +      "Content-Type": "multipart/form-data; boundary=" + boundary,
      +    },
      +  });
      +  return res;
      +}
      +
      +function runTest() {
      +  return Promise.all([
      +    testFormDataParsing(makeRequest),
      +    testFormDataParsing(makeResponse),
      +  ]);
      +}
      diff --git a/dom/tests/mochitest/fetch/test_formdataparsing_sw_reroute.html b/dom/tests/mochitest/fetch/test_formdataparsing_sw_reroute.html
      new file mode 100644
      index 0000000000..0e25c404a9
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_formdataparsing_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1109751 - Test FormData parsing
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_headers.html b/dom/tests/mochitest/fetch/test_headers.html
      new file mode 100644
      index 0000000000..b9cad02c2f
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_headers.html
      @@ -0,0 +1,17 @@
      +
      +
      +
      +
      +  Test Fetch Headers - Basic
      +  
      +  
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_headers_common.js b/dom/tests/mochitest/fetch/test_headers_common.js
      new file mode 100644
      index 0000000000..3b2604f88f
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_headers_common.js
      @@ -0,0 +1,327 @@
      +//
      +// Utility functions
      +//
      +
      +function shouldThrow(func, expected, msg) {
      +  var err;
      +  try {
      +    func();
      +  } catch (e) {
      +    err = e;
      +  } finally {
      +    ok(err instanceof expected, msg);
      +  }
      +}
      +
      +function recursiveArrayCompare(actual, expected) {
      +  is(
      +    Array.isArray(actual),
      +    Array.isArray(expected),
      +    "Both should either be arrays, or not"
      +  );
      +  if (Array.isArray(actual) && Array.isArray(expected)) {
      +    var diff = actual.length !== expected.length;
      +
      +    for (var i = 0, n = actual.length; !diff && i < n; ++i) {
      +      diff = recursiveArrayCompare(actual[i], expected[i]);
      +    }
      +
      +    return diff;
      +  } else {
      +    return actual !== expected;
      +  }
      +}
      +
      +function arrayEquals(actual, expected, msg) {
      +  if (actual === expected) {
      +    return;
      +  }
      +
      +  var diff = recursiveArrayCompare(actual, expected);
      +
      +  ok(!diff, msg);
      +  if (diff) {
      +    is(actual, expected, msg);
      +  }
      +}
      +
      +function checkHas(headers, name, msg) {
      +  function doCheckHas(n) {
      +    return headers.has(n);
      +  }
      +  return _checkHas(doCheckHas, headers, name, msg);
      +}
      +
      +function checkNotHas(headers, name, msg) {
      +  function doCheckNotHas(n) {
      +    return !headers.has(n);
      +  }
      +  return _checkHas(doCheckNotHas, headers, name, msg);
      +}
      +
      +function _checkHas(func, headers, name, msg) {
      +  ok(func(name), msg);
      +  ok(func(name.toLowerCase()), msg);
      +  ok(func(name.toUpperCase()), msg);
      +}
      +
      +function checkGet(headers, name, expected, msg) {
      +  is(headers.get(name), expected, msg);
      +  is(headers.get(name.toLowerCase()), expected, msg);
      +  is(headers.get(name.toUpperCase()), expected, msg);
      +}
      +
      +//
      +// Test Cases
      +//
      +
      +function TestCoreBehavior(headers, name) {
      +  var start = headers.get(name);
      +
      +  headers.append(name, "bar");
      +
      +  checkHas(headers, name, "Has the header");
      +  var expected = start ? start.concat(", bar") : "bar";
      +  checkGet(headers, name, expected, "Retrieve all headers for name");
      +
      +  headers.append(name, "baz");
      +  checkHas(headers, name, "Has the header");
      +  expected = start ? start.concat(", bar, baz") : "bar, baz";
      +  checkGet(headers, name, expected, "Retrieve all headers for name");
      +
      +  headers.set(name, "snafu");
      +  checkHas(headers, name, "Has the header after set");
      +  checkGet(headers, name, "snafu", "Retrieve all headers after set");
      +
      +  const value_bam = "boom";
      +  let testHTTPWhitespace = ["\t", "\n", "\r", " "];
      +  while (testHTTPWhitespace.length) {
      +    headers.delete(name);
      +
      +    let char = testHTTPWhitespace.shift();
      +    headers.set(name, char);
      +    checkGet(
      +      headers,
      +      name,
      +      "",
      +      "Header value " +
      +        char +
      +        " should be normalized before checking and throwing"
      +    );
      +    headers.delete(name);
      +
      +    let valueFront = char + value_bam;
      +    headers.set(name, valueFront);
      +    checkGet(
      +      headers,
      +      name,
      +      value_bam,
      +      "Header value " +
      +        valueFront +
      +        " should be normalized before checking and throwing"
      +    );
      +
      +    headers.delete(name);
      +
      +    let valueBack = value_bam + char;
      +    headers.set(name, valueBack);
      +    checkGet(
      +      headers,
      +      name,
      +      value_bam,
      +      "Header value " +
      +        valueBack +
      +        " should be normalized before checking and throwing"
      +    );
      +  }
      +
      +  headers.delete(name.toUpperCase());
      +  checkNotHas(headers, name, "Does not have the header after delete");
      +  checkGet(headers, name, null, "Retrieve all headers after delete");
      +
      +  // should be ok to delete non-existent name
      +  headers.delete(name);
      +
      +  shouldThrow(
      +    function () {
      +      headers.append("foo,", "bam");
      +    },
      +    TypeError,
      +    "Append invalid header name should throw TypeError."
      +  );
      +
      +  shouldThrow(
      +    function () {
      +      headers.append(name, "ba\nm");
      +    },
      +    TypeError,
      +    "Append invalid header value should throw TypeError."
      +  );
      +
      +  shouldThrow(
      +    function () {
      +      headers.append(name, "ba\rm");
      +    },
      +    TypeError,
      +    "Append invalid header value should throw TypeError."
      +  );
      +
      +  ok(!headers.guard, "guard should be undefined in content");
      +}
      +
      +function TestEmptyHeaders() {
      +  is(typeof Headers, "function", "Headers global constructor exists.");
      +  var headers = new Headers();
      +  ok(headers, "Constructed empty Headers object");
      +  TestCoreBehavior(headers, "foo");
      +}
      +
      +function TestFilledHeaders() {
      +  var source = new Headers();
      +  var filled = new Headers(source);
      +  ok(filled, "Fill header from empty header");
      +  TestCoreBehavior(filled, "foo");
      +
      +  source = new Headers();
      +  source.append("abc", "123");
      +  source.append("def", "456");
      +  source.append("def", "789");
      +
      +  filled = new Headers(source);
      +  checkGet(
      +    filled,
      +    "abc",
      +    source.get("abc"),
      +    "Single value header list matches"
      +  );
      +  checkGet(
      +    filled,
      +    "def",
      +    source.get("def"),
      +    "Multiple value header list matches"
      +  );
      +  TestCoreBehavior(filled, "def");
      +
      +  filled = new Headers({
      +    zxy: "987",
      +    xwv: "654",
      +    uts: "321",
      +  });
      +  checkGet(filled, "zxy", "987", "Has first object filled key");
      +  checkGet(filled, "xwv", "654", "Has second object filled key");
      +  checkGet(filled, "uts", "321", "Has third object filled key");
      +  TestCoreBehavior(filled, "xwv");
      +
      +  filled = new Headers([
      +    ["zxy", "987"],
      +    ["xwv", "654"],
      +    ["xwv", "abc"],
      +    ["uts", "321"],
      +  ]);
      +  checkGet(filled, "zxy", "987", "Has first sequence filled key");
      +  checkGet(filled, "xwv", "654, abc", "Has second sequence filled key");
      +  checkGet(filled, "uts", "321", "Has third sequence filled key");
      +  TestCoreBehavior(filled, "xwv");
      +
      +  shouldThrow(
      +    function () {
      +      filled = new Headers([
      +        ["zxy", "987", "654"],
      +        ["uts", "321"],
      +      ]);
      +    },
      +    TypeError,
      +    "Fill with non-tuple sequence should throw TypeError."
      +  );
      +
      +  shouldThrow(
      +    function () {
      +      filled = new Headers([["zxy"], ["uts", "321"]]);
      +    },
      +    TypeError,
      +    "Fill with non-tuple sequence should throw TypeError."
      +  );
      +}
      +
      +function iterate(iter) {
      +  var result = [];
      +  for (var val = iter.next(); !val.done; ) {
      +    result.push(val.value);
      +    val = iter.next();
      +  }
      +  return result;
      +}
      +
      +function iterateForOf(iter) {
      +  var result = [];
      +  for (var value of iter) {
      +    result.push(value);
      +  }
      +  return result;
      +}
      +
      +function byteInflate(str) {
      +  var encoder = new TextEncoder();
      +  var encoded = encoder.encode(str);
      +  var result = "";
      +  for (var i = 0; i < encoded.length; ++i) {
      +    result += String.fromCharCode(encoded[i]);
      +  }
      +  return result;
      +}
      +
      +function TestHeadersIterator() {
      +  var ehsanInflated = byteInflate("احسان");
      +  var headers = new Headers();
      +  headers.set("foo0", "bar0");
      +  headers.append("foo", "bar");
      +  headers.append("foo", ehsanInflated);
      +  headers.append("Foo2", "bar2");
      +  headers.set("Foo2", "baz2");
      +  headers.set("foo3", "bar3");
      +  headers.delete("foo0");
      +  headers.delete("foo3");
      +
      +  var key_iter = headers.keys();
      +  var value_iter = headers.values();
      +  var entries_iter = headers.entries();
      +
      +  arrayEquals(iterate(key_iter), ["foo", "foo2"], "Correct key iterator");
      +  arrayEquals(
      +    iterate(value_iter),
      +    ["bar, " + ehsanInflated, "baz2"],
      +    "Correct value iterator"
      +  );
      +  arrayEquals(
      +    iterate(entries_iter),
      +    [
      +      ["foo", "bar, " + ehsanInflated],
      +      ["foo2", "baz2"],
      +    ],
      +    "Correct entries iterator"
      +  );
      +
      +  arrayEquals(
      +    iterateForOf(headers),
      +    [
      +      ["foo", "bar, " + ehsanInflated],
      +      ["foo2", "baz2"],
      +    ],
      +    "Correct entries iterator"
      +  );
      +  arrayEquals(
      +    iterateForOf(new Headers(headers)),
      +    [
      +      ["foo", "bar, " + ehsanInflated],
      +      ["foo2", "baz2"],
      +    ],
      +    "Correct entries iterator"
      +  );
      +}
      +
      +function runTest() {
      +  TestEmptyHeaders();
      +  TestFilledHeaders();
      +  TestHeadersIterator();
      +  return Promise.resolve();
      +}
      diff --git a/dom/tests/mochitest/fetch/test_headers_mainthread.html b/dom/tests/mochitest/fetch/test_headers_mainthread.html
      new file mode 100644
      index 0000000000..de78b364e3
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_headers_mainthread.html
      @@ -0,0 +1,155 @@
      +
      +
      +
      +
      +  Test Fetch Headers - Basic
      +  
      +  
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_headers_sw_reroute.html b/dom/tests/mochitest/fetch/test_headers_sw_reroute.html
      new file mode 100644
      index 0000000000..eb8d1109bd
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_headers_sw_reroute.html
      @@ -0,0 +1,17 @@
      +
      +
      +
      +
      +  Test Fetch Headers - Basic
      +  
      +  
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_readableStreams.html b/dom/tests/mochitest/fetch/test_readableStreams.html
      new file mode 100644
      index 0000000000..5120963445
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_readableStreams.html
      @@ -0,0 +1,85 @@
      +
      +
      +
      +  
      +  Test for ReadableStreams and Fetch
      +  
      +  
      +  
      +
      +
      +  
      +  
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_request.html b/dom/tests/mochitest/fetch/test_request.html
      new file mode 100644
      index 0000000000..3a35665eb5
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_request.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Test Request object in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_request.js b/dom/tests/mochitest/fetch/test_request.js
      new file mode 100644
      index 0000000000..7abd833869
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_request.js
      @@ -0,0 +1,744 @@
      +function testDefaultCtor() {
      +  var req = new Request("");
      +  is(req.method, "GET", "Default Request method is GET");
      +  ok(
      +    req.headers instanceof Headers,
      +    "Request should have non-null Headers object"
      +  );
      +  is(
      +    req.url,
      +    self.location.href,
      +    "URL should be resolved with entry settings object's API base URL"
      +  );
      +  is(req.destination, "", "Default destination is the empty string.");
      +  is(
      +    req.referrer,
      +    "about:client",
      +    "Default referrer is `client` which serializes to about:client."
      +  );
      +  is(req.mode, "cors", "Request mode for string input is cors");
      +  is(
      +    req.credentials,
      +    "same-origin",
      +    "Default Request credentials is same-origin"
      +  );
      +  is(req.cache, "default", "Default Request cache is default");
      +
      +  var req = new Request(req);
      +  is(req.method, "GET", "Default Request method is GET");
      +  ok(
      +    req.headers instanceof Headers,
      +    "Request should have non-null Headers object"
      +  );
      +  is(
      +    req.url,
      +    self.location.href,
      +    "URL should be resolved with entry settings object's API base URL"
      +  );
      +  is(req.destination, "", "Default destination is the empty string.");
      +  is(
      +    req.referrer,
      +    "about:client",
      +    "Default referrer is `client` which serializes to about:client."
      +  );
      +  is(req.mode, "cors", "Request mode string input is cors");
      +  is(
      +    req.credentials,
      +    "same-origin",
      +    "Default Request credentials is same-origin"
      +  );
      +  is(req.cache, "default", "Default Request cache is default");
      +}
      +
      +function testClone() {
      +  var orig = new Request("./cloned_request.txt", {
      +    method: "POST",
      +    headers: { "Sample-Header": "5" },
      +    body: "Sample body",
      +    mode: "same-origin",
      +    credentials: "same-origin",
      +    cache: "no-store",
      +  });
      +  var clone = orig.clone();
      +  ok(clone.method === "POST", "Request method is POST");
      +  ok(
      +    clone.headers instanceof Headers,
      +    "Request should have non-null Headers object"
      +  );
      +
      +  is(
      +    clone.headers.get("sample-header"),
      +    "5",
      +    "Request sample-header should be 5."
      +  );
      +  orig.headers.set("sample-header", 6);
      +  is(
      +    clone.headers.get("sample-header"),
      +    "5",
      +    "Cloned Request sample-header should continue to be 5."
      +  );
      +
      +  ok(
      +    clone.url === new URL("./cloned_request.txt", self.location.href).href,
      +    "URL should be resolved with entry settings object's API base URL"
      +  );
      +  ok(
      +    clone.referrer === "about:client",
      +    "Default referrer is `client` which serializes to about:client."
      +  );
      +  ok(clone.mode === "same-origin", "Request mode is same-origin");
      +  ok(clone.credentials === "same-origin", "Default credentials is same-origin");
      +  ok(clone.cache === "no-store", "Default cache is no-store");
      +
      +  ok(!orig.bodyUsed, "Original body is not consumed.");
      +  ok(!clone.bodyUsed, "Clone body is not consumed.");
      +
      +  var origBody = null;
      +  var clone2 = null;
      +  return orig
      +    .text()
      +    .then(function (body) {
      +      origBody = body;
      +      is(origBody, "Sample body", "Original body string matches");
      +      ok(orig.bodyUsed, "Original body is consumed.");
      +      ok(!clone.bodyUsed, "Clone body is not consumed.");
      +
      +      try {
      +        orig.clone();
      +        ok(false, "Cannot clone Request whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +
      +      clone2 = clone.clone();
      +      return clone.text();
      +    })
      +    .then(function (body) {
      +      is(body, origBody, "Clone body matches original body.");
      +      ok(clone.bodyUsed, "Clone body is consumed.");
      +
      +      try {
      +        clone.clone();
      +        ok(false, "Cannot clone Request whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +
      +      return clone2.text();
      +    })
      +    .then(function (body) {
      +      is(body, origBody, "Clone body matches original body.");
      +      ok(clone2.bodyUsed, "Clone body is consumed.");
      +
      +      try {
      +        clone2.clone();
      +        ok(false, "Cannot clone Request whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +    });
      +}
      +
      +function testUsedRequest() {
      +  // Passing a used request should fail.
      +  var req = new Request("", { method: "post", body: "This is foo" });
      +  var p1 = req.text().then(function (v) {
      +    try {
      +      var req2 = new Request(req);
      +      ok(false, "Used Request cannot be passed to new Request");
      +    } catch (e) {
      +      ok(true, "Used Request cannot be passed to new Request");
      +    }
      +  });
      +
      +  // Passing a request should set the request as used.
      +  var reqA = new Request("", { method: "post", body: "This is foo" });
      +  var reqB = new Request(reqA);
      +  is(
      +    reqA.bodyUsed,
      +    true,
      +    "Passing a Request to another Request should set the former as used"
      +  );
      +  return p1;
      +}
      +
      +function testSimpleUrlParse() {
      +  // Just checks that the URL parser is actually being used.
      +  var req = new Request("/file.html");
      +  is(
      +    req.url,
      +    new URL("/file.html", self.location.href).href,
      +    "URL parser should be used to resolve Request URL"
      +  );
      +}
      +
      +// Bug 1109574 - Passing a Request with null body should keep bodyUsed unset.
      +function testBug1109574() {
      +  var r1 = new Request("");
      +  is(r1.bodyUsed, false, "Initial value of bodyUsed should be false");
      +  var r2 = new Request(r1);
      +  is(r1.bodyUsed, false, "Request with null body should not have bodyUsed set");
      +  // This should succeed.
      +  var r3 = new Request(r1);
      +}
      +
      +// Bug 1184550 - Request constructor should always throw if used flag is set,
      +// even if body is null
      +function testBug1184550() {
      +  var req = new Request("", { method: "post", body: "Test" });
      +  fetch(req);
      +  ok(req.bodyUsed, "Request body should be used immediately after fetch()");
      +  return fetch(req)
      +    .then(function (resp) {
      +      ok(false, "Second fetch with same request should fail.");
      +    })
      +    .catch(function (err) {
      +      is(err.name, "TypeError", "Second fetch with same request should fail.");
      +    });
      +}
      +
      +function testHeaderGuard() {
      +  var headers = {
      +    Cookie: "Custom cookie",
      +    "Non-Simple-Header": "value",
      +  };
      +  var r1 = new Request("", { headers });
      +  ok(
      +    !r1.headers.has("Cookie"),
      +    "Default Request header should have guard request and prevent setting forbidden header."
      +  );
      +  ok(
      +    r1.headers.has("Non-Simple-Header"),
      +    "Default Request header should have guard request and allow setting non-simple header."
      +  );
      +
      +  var r2 = new Request("", { mode: "no-cors", headers });
      +  ok(
      +    !r2.headers.has("Cookie"),
      +    "no-cors Request header should have guard request-no-cors and prevent setting non-simple header."
      +  );
      +  ok(
      +    !r2.headers.has("Non-Simple-Header"),
      +    "no-cors Request header should have guard request-no-cors and prevent setting non-simple header."
      +  );
      +}
      +
      +function testMode() {
      +  try {
      +    var req = new Request("http://example.com", { mode: "navigate" });
      +    ok(
      +      false,
      +      "Creating a Request with navigate RequestMode should throw a TypeError"
      +    );
      +  } catch (e) {
      +    is(
      +      e.name,
      +      "TypeError",
      +      "Creating a Request with navigate RequestMode should throw a TypeError"
      +    );
      +  }
      +}
      +
      +function testMethod() {
      +  // These get normalized.
      +  var allowed = ["delete", "get", "head", "options", "post", "put"];
      +  for (var i = 0; i < allowed.length; ++i) {
      +    try {
      +      var r = new Request("", { method: allowed[i] });
      +      ok(true, "Method " + allowed[i] + " should be allowed");
      +      is(
      +        r.method,
      +        allowed[i].toUpperCase(),
      +        "Standard HTTP method " + allowed[i] + " should be normalized"
      +      );
      +    } catch (e) {
      +      ok(false, "Method " + allowed[i] + " should be allowed");
      +    }
      +  }
      +
      +  var allowed = ["pAtCh", "foo"];
      +  for (var i = 0; i < allowed.length; ++i) {
      +    try {
      +      var r = new Request("", { method: allowed[i] });
      +      ok(true, "Method " + allowed[i] + " should be allowed");
      +      is(
      +        r.method,
      +        allowed[i],
      +        "Non-standard but valid HTTP method " +
      +          allowed[i] +
      +          " should not be normalized"
      +      );
      +    } catch (e) {
      +      ok(false, "Method " + allowed[i] + " should be allowed");
      +    }
      +  }
      +
      +  var forbidden = ["connect", "trace", "track", " {
      +      is(v, "Sample body", "Body should match");
      +      is(req.bodyUsed, true, "After reading body, bodyUsed should be true.");
      +    })
      +    .then(v => {
      +      return req.blob().then(
      +        v => {
      +          ok(false, "Attempting to read body again should fail.");
      +        },
      +        e => {
      +          ok(true, "Attempting to read body again should fail.");
      +        }
      +      );
      +    });
      +}
      +
      +var text = "κόσμε";
      +function testBodyCreation() {
      +  var req1 = new Request("", { method: "post", body: text });
      +  var p1 = req1.text().then(function (v) {
      +    ok(typeof v === "string", "Should resolve to string");
      +    is(text, v, "Extracted string should match");
      +  });
      +
      +  var req2 = new Request("", {
      +    method: "post",
      +    body: new Uint8Array([72, 101, 108, 108, 111]),
      +  });
      +  var p2 = req2.text().then(function (v) {
      +    is("Hello", v, "Extracted string should match");
      +  });
      +
      +  var req2b = new Request("", {
      +    method: "post",
      +    body: new Uint8Array([72, 101, 108, 108, 111]).buffer,
      +  });
      +  var p2b = req2b.text().then(function (v) {
      +    is("Hello", v, "Extracted string should match");
      +  });
      +
      +  var reqblob = new Request("", { method: "post", body: new Blob([text]) });
      +  var pblob = reqblob.text().then(function (v) {
      +    is(v, text, "Extracted string should match");
      +  });
      +
      +  // FormData has its own function since it has blobs and files.
      +
      +  var params = new URLSearchParams();
      +  params.append("item", "Geckos");
      +  params.append("feature", "stickyfeet");
      +  params.append("quantity", "700");
      +  var req3 = new Request("", { method: "post", body: params });
      +  var p3 = req3.text().then(function (v) {
      +    var extracted = new URLSearchParams(v);
      +    is(extracted.get("item"), "Geckos", "Param should match");
      +    is(extracted.get("feature"), "stickyfeet", "Param should match");
      +    is(extracted.get("quantity"), "700", "Param should match");
      +  });
      +
      +  return Promise.all([p1, p2, p2b, pblob, p3]);
      +}
      +
      +function testFormDataBodyCreation() {
      +  var f1 = new FormData();
      +  f1.append("key", "value");
      +  f1.append("foo", "bar");
      +
      +  var r1 = new Request("", { method: "post", body: f1 });
      +  // Since f1 is serialized immediately, later additions should not show up.
      +  f1.append("more", "stuff");
      +  var p1 = r1.formData().then(function (fd) {
      +    ok(fd instanceof FormData, "Valid FormData extracted.");
      +    ok(fd.has("key"), "key should exist.");
      +    ok(fd.has("foo"), "foo should exist.");
      +    ok(!fd.has("more"), "more should not exist.");
      +  });
      +
      +  f1.append("blob", new Blob([text]));
      +  var r2 = new Request("", { method: "post", body: f1 });
      +  f1.delete("key");
      +  var p2 = r2.formData().then(function (fd) {
      +    ok(fd instanceof FormData, "Valid FormData extracted.");
      +    ok(fd.has("more"), "more should exist.");
      +
      +    var b = fd.get("blob");
      +    is(b.name, "blob", "blob entry should be a Blob.");
      +    ok(b instanceof Blob, "blob entry should be a Blob.");
      +
      +    return readAsText(b).then(function (output) {
      +      is(output, text, "Blob contents should match.");
      +    });
      +  });
      +
      +  return Promise.all([p1, p2]);
      +}
      +
      +function testBodyExtraction() {
      +  var text = "κόσμε";
      +  var newReq = function () {
      +    return new Request("", { method: "post", body: text });
      +  };
      +  return newReq()
      +    .text()
      +    .then(function (v) {
      +      ok(typeof v === "string", "Should resolve to string");
      +      is(text, v, "Extracted string should match");
      +    })
      +    .then(function () {
      +      return newReq()
      +        .blob()
      +        .then(function (v) {
      +          ok(v instanceof Blob, "Should resolve to Blob");
      +          return readAsText(v).then(function (result) {
      +            is(result, text, "Decoded Blob should match original");
      +          });
      +        });
      +    })
      +    .then(function () {
      +      return newReq()
      +        .json()
      +        .then(
      +          function (v) {
      +            ok(false, "Invalid json should reject");
      +          },
      +          function (e) {
      +            ok(true, "Invalid json should reject");
      +          }
      +        );
      +    })
      +    .then(function () {
      +      return newReq()
      +        .arrayBuffer()
      +        .then(function (v) {
      +          ok(v instanceof ArrayBuffer, "Should resolve to ArrayBuffer");
      +          var dec = new TextDecoder();
      +          is(
      +            dec.decode(new Uint8Array(v)),
      +            text,
      +            "UTF-8 decoded ArrayBuffer should match original"
      +          );
      +        });
      +    })
      +    .then(function () {
      +      return newReq()
      +        .formData()
      +        .then(
      +          function (v) {
      +            ok(false, "invalid FormData read should fail.");
      +          },
      +          function (e) {
      +            ok(e.name == "TypeError", "invalid FormData read should fail.");
      +          }
      +        );
      +    });
      +}
      +
      +function testFormDataBodyExtraction() {
      +  // URLSearchParams translates to application/x-www-form-urlencoded.
      +  var params = new URLSearchParams();
      +  params.append("item", "Geckos");
      +  params.append("feature", "stickyfeet");
      +  params.append("quantity", "700");
      +  params.append("quantity", "800");
      +
      +  var req = new Request("", { method: "POST", body: params });
      +  var p1 = req.formData().then(function (fd) {
      +    ok(fd.has("item"), "Has entry 'item'.");
      +    ok(fd.has("feature"), "Has entry 'feature'.");
      +    var entries = fd.getAll("quantity");
      +    is(entries.length, 2, "Entries with same name are correctly handled.");
      +    is(entries[0], "700", "Entries with same name are correctly handled.");
      +    is(entries[1], "800", "Entries with same name are correctly handled.");
      +  });
      +
      +  var f1 = new FormData();
      +  f1.append("key", "value");
      +  f1.append("foo", "bar");
      +  f1.append("blob", new Blob([text]));
      +  var r2 = new Request("", { method: "post", body: f1 });
      +  var p2 = r2.formData().then(function (fd) {
      +    ok(fd.has("key"), "Has entry 'key'.");
      +    ok(fd.has("foo"), "Has entry 'foo'.");
      +    ok(fd.has("blob"), "Has entry 'blob'.");
      +    var entries = fd.getAll("blob");
      +    is(entries.length, 1, "getAll returns all items.");
      +    is(entries[0].name, "blob", "Filename should be blob.");
      +    ok(entries[0] instanceof Blob, "getAll returns blobs.");
      +  });
      +
      +  var ws = "\r\n\r\n\r\n\r\n";
      +  f1.set(
      +    "key",
      +    new File([ws], "file name has spaces.txt", { type: "new/lines" })
      +  );
      +  var r3 = new Request("", { method: "post", body: f1 });
      +  var p3 = r3.formData().then(function (fd) {
      +    ok(fd.has("foo"), "Has entry 'foo'.");
      +    ok(fd.has("blob"), "Has entry 'blob'.");
      +    var entries = fd.getAll("blob");
      +    is(entries.length, 1, "getAll returns all items.");
      +    is(entries[0].name, "blob", "Filename should be blob.");
      +    ok(entries[0] instanceof Blob, "getAll returns blobs.");
      +
      +    ok(fd.has("key"), "Has entry 'key'.");
      +    var f = fd.get("key");
      +    ok(f instanceof File, "entry should be a File.");
      +    is(f.name, "file name has spaces.txt", "File name should match.");
      +    is(f.type, "new/lines", "File type should match.");
      +    is(f.size, ws.length, "File size should match.");
      +    return readAsText(f).then(function (text) {
      +      is(text, ws, "File contents should match.");
      +    });
      +  });
      +
      +  // Override header and ensure parse fails.
      +  var boundary = "1234567891011121314151617";
      +  var body =
      +    boundary +
      +    '\r\nContent-Disposition: form-data; name="greeting"\r\n\r\n"hello"\r\n' +
      +    boundary +
      +    "-";
      +
      +  var r4 = new Request("", {
      +    method: "post",
      +    body,
      +    headers: {
      +      "Content-Type": "multipart/form-datafoobar; boundary=" + boundary,
      +    },
      +  });
      +  var p4 = r4.formData().then(
      +    function () {
      +      ok(false, "Invalid mimetype should fail.");
      +    },
      +    function () {
      +      ok(true, "Invalid mimetype should fail.");
      +    }
      +  );
      +
      +  var r5 = new Request("", {
      +    method: "POST",
      +    body: params,
      +    headers: {
      +      "Content-Type": "application/x-www-form-urlencodedfoobar",
      +    },
      +  });
      +  var p5 = r5.formData().then(
      +    function () {
      +      ok(false, "Invalid mimetype should fail.");
      +    },
      +    function () {
      +      ok(true, "Invalid mimetype should fail.");
      +    }
      +  );
      +  return Promise.all([p1, p2, p3, p4]);
      +}
      +
      +// mode cannot be set to "CORS-with-forced-preflight" from javascript.
      +function testModeCorsPreflightEnumValue() {
      +  try {
      +    var r = new Request(".", { mode: "cors-with-forced-preflight" });
      +    ok(
      +      false,
      +      "Creating Request with mode cors-with-forced-preflight should fail."
      +    );
      +  } catch (e) {
      +    ok(
      +      true,
      +      "Creating Request with mode cors-with-forced-preflight should fail."
      +    );
      +    // Also ensure that the error message matches error messages for truly
      +    // invalid strings.
      +    var invalidMode = "not-in-requestmode-enum";
      +    var invalidExc;
      +    try {
      +      var r = new Request(".", { mode: invalidMode });
      +    } catch (e) {
      +      invalidExc = e;
      +    }
      +    var expectedMessage = invalidExc.message.replace(
      +      invalidMode,
      +      "cors-with-forced-preflight"
      +    );
      +    is(
      +      e.message,
      +      expectedMessage,
      +      "mode cors-with-forced-preflight should throw same error as invalid RequestMode strings."
      +    );
      +  }
      +}
      +
      +// HEAD/GET Requests are not allowed to have a body even when copying another
      +// Request.
      +function testBug1154268() {
      +  var r1 = new Request("/index.html", { method: "POST", body: "Hi there" });
      +  ["HEAD", "GET"].forEach(function (method) {
      +    try {
      +      var r2 = new Request(r1, { method });
      +      ok(
      +        false,
      +        method + " Request copied from POST Request with body should fail."
      +      );
      +    } catch (e) {
      +      is(
      +        e.name,
      +        "TypeError",
      +        method + " Request copied from POST Request with body should fail."
      +      );
      +    }
      +  });
      +}
      +
      +function testRequestConsumedByFailedConstructor() {
      +  var r1 = new Request("http://example.com", {
      +    method: "POST",
      +    body: "hello world",
      +  });
      +  try {
      +    var r2 = new Request(r1, { method: "GET" });
      +    ok(false, "GET Request copied from POST Request with body should fail.");
      +  } catch (e) {
      +    ok(true, "GET Request copied from POST Request with body should fail.");
      +  }
      +  ok(
      +    !r1.bodyUsed,
      +    "Initial request should not be consumed by failed Request constructor"
      +  );
      +}
      +
      +function runTest() {
      +  testDefaultCtor();
      +  testSimpleUrlParse();
      +  testUrlFragment();
      +  testUrlCredentials();
      +  testUrlMalformed();
      +  testMode();
      +  testMethod();
      +  testBug1109574();
      +  testBug1184550();
      +  testHeaderGuard();
      +  testModeCorsPreflightEnumValue();
      +  testBug1154268();
      +  testRequestConsumedByFailedConstructor();
      +
      +  return Promise.resolve()
      +    .then(testBodyCreation)
      +    .then(testBodyUsed)
      +    .then(testBodyExtraction)
      +    .then(testFormDataBodyCreation)
      +    .then(testFormDataBodyExtraction)
      +    .then(testUsedRequest)
      +    .then(testClone());
      +  // Put more promise based tests here.
      +}
      diff --git a/dom/tests/mochitest/fetch/test_request_context.html b/dom/tests/mochitest/fetch/test_request_context.html
      new file mode 100644
      index 0000000000..db8b8bdc6e
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_request_context.html
      @@ -0,0 +1,19 @@
      +
      +
      +
      +
      +  Make sure that Request.context is not exposed by default
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_request_sw_reroute.html b/dom/tests/mochitest/fetch/test_request_sw_reroute.html
      new file mode 100644
      index 0000000000..0250148f1b
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_request_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Test Request object in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_response.html b/dom/tests/mochitest/fetch/test_response.html
      new file mode 100644
      index 0000000000..af75f957fc
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_response.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test Response object in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_response.js b/dom/tests/mochitest/fetch/test_response.js
      new file mode 100644
      index 0000000000..40a124bfc0
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_response.js
      @@ -0,0 +1,346 @@
      +function testDefaultCtor() {
      +  var res = new Response();
      +  is(res.type, "default", "Default Response type is default");
      +  ok(
      +    res.headers instanceof Headers,
      +    "Response should have non-null Headers object"
      +  );
      +  is(res.url, "", "URL should be empty string");
      +  is(res.status, 200, "Default status is 200");
      +  is(res.statusText, "", "Default statusText is an empty string");
      +}
      +
      +function testClone() {
      +  var orig = new Response("This is a body", {
      +    status: 404,
      +    statusText: "Not Found",
      +    headers: { "Content-Length": 5 },
      +  });
      +  var clone = orig.clone();
      +  is(clone.status, 404, "Response status is 404");
      +  is(clone.statusText, "Not Found", "Response statusText is POST");
      +  ok(
      +    clone.headers instanceof Headers,
      +    "Response should have non-null Headers object"
      +  );
      +
      +  is(
      +    clone.headers.get("content-length"),
      +    "5",
      +    "Response content-length should be 5."
      +  );
      +  orig.headers.set("content-length", 6);
      +  is(
      +    clone.headers.get("content-length"),
      +    "5",
      +    "Response content-length should be 5."
      +  );
      +
      +  ok(!orig.bodyUsed, "Original body is not consumed.");
      +  ok(!clone.bodyUsed, "Clone body is not consumed.");
      +
      +  var origBody = null;
      +  var clone2 = null;
      +  return orig
      +    .text()
      +    .then(function (body) {
      +      origBody = body;
      +      is(origBody, "This is a body", "Original body string matches");
      +      ok(orig.bodyUsed, "Original body is consumed.");
      +      ok(!clone.bodyUsed, "Clone body is not consumed.");
      +
      +      try {
      +        orig.clone();
      +        ok(false, "Cannot clone Response whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +
      +      clone2 = clone.clone();
      +      return clone.text();
      +    })
      +    .then(function (body) {
      +      is(body, origBody, "Clone body matches original body.");
      +      ok(clone.bodyUsed, "Clone body is consumed.");
      +
      +      try {
      +        clone.clone();
      +        ok(false, "Cannot clone Response whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +
      +      return clone2.text();
      +    })
      +    .then(function (body) {
      +      is(body, origBody, "Clone body matches original body.");
      +      ok(clone2.bodyUsed, "Clone body is consumed.");
      +
      +      try {
      +        clone2.clone();
      +        ok(false, "Cannot clone Response whose body is already consumed");
      +      } catch (e) {
      +        is(
      +          e.name,
      +          "TypeError",
      +          "clone() of consumed body should throw TypeError"
      +        );
      +      }
      +    });
      +}
      +
      +function testCloneUnfiltered() {
      +  var url =
      +    "http://example.com/tests/dom/security/test/cors/file_CrossSiteXHR_server.sjs?status=200";
      +  return fetch(url, { mode: "no-cors" }).then(function (response) {
      +    // By default the chrome-only function should not be available.
      +    is(response.type, "opaque", "response should be opaque");
      +    is(
      +      response.cloneUnfiltered,
      +      undefined,
      +      "response.cloneUnfiltered should be undefined"
      +    );
      +
      +    // When the test is run in a worker context we can't actually try to use
      +    // the chrome-only function.  SpecialPowers is not defined.
      +    if (typeof SpecialPowers !== "object") {
      +      return;
      +    }
      +
      +    // With a chrome code, however, should be able to get an unfiltered response.
      +    var chromeResponse = SpecialPowers.wrap(response);
      +    is(
      +      typeof chromeResponse.cloneUnfiltered,
      +      "function",
      +      "chromeResponse.cloneFiltered should be a function"
      +    );
      +    var unfiltered = chromeResponse.cloneUnfiltered();
      +    is(unfiltered.type, "default", "unfiltered response should be default");
      +    is(unfiltered.status, 200, "unfiltered response should have 200 status");
      +  });
      +}
      +
      +function testError() {
      +  var res = Response.error();
      +  is(res.status, 0, "Error response status should be 0");
      +  try {
      +    res.headers.set("someheader", "not allowed");
      +    ok(false, "Error response should have immutable headers");
      +  } catch (e) {
      +    ok(true, "Error response should have immutable headers");
      +  }
      +}
      +
      +function testRedirect() {
      +  var res = Response.redirect("./redirect.response");
      +  is(res.status, 302, "Default redirect has status code 302");
      +  is(res.statusText, "", "Default redirect has status text empty");
      +  var h = res.headers.get("location");
      +  ok(
      +    h === new URL("./redirect.response", self.location.href).href,
      +    "Location header should be correct absolute URL"
      +  );
      +  try {
      +    res.headers.set("someheader", "not allowed");
      +    ok(false, "Redirects should have immutable headers");
      +  } catch (e) {
      +    ok(true, "Redirects should have immutable headers");
      +  }
      +
      +  var successStatus = [301, 302, 303, 307, 308];
      +  for (var i = 0; i < successStatus.length; ++i) {
      +    var res = Response.redirect("./redirect.response", successStatus[i]);
      +    is(res.status, successStatus[i], "Status code should match");
      +  }
      +
      +  var failStatus = [300, 0, 304, 305, 306, 309, 500];
      +  for (var i = 0; i < failStatus.length; ++i) {
      +    try {
      +      var res = Response.redirect(".", failStatus[i]);
      +      ok(false, "Invalid status code should fail " + failStatus[i]);
      +    } catch (e) {
      +      is(
      +        e.name,
      +        "RangeError",
      +        "Invalid status code should fail " + failStatus[i]
      +      );
      +    }
      +  }
      +}
      +
      +function testOk() {
      +  var r1 = new Response("", { status: 200 });
      +  ok(r1.ok, "Response with status 200 should have ok true");
      +
      +  var r2 = new Response(undefined, { status: 204 });
      +  ok(r2.ok, "Response with status 204 should have ok true");
      +
      +  var r3 = new Response("", { status: 299 });
      +  ok(r3.ok, "Response with status 299 should have ok true");
      +
      +  var r4 = new Response("", { status: 302 });
      +  ok(!r4.ok, "Response with status 302 should have ok false");
      +}
      +
      +function testBodyUsed() {
      +  var res = new Response("Sample body");
      +  ok(!res.bodyUsed, "bodyUsed is initially false.");
      +  return res
      +    .text()
      +    .then(v => {
      +      is(v, "Sample body", "Body should match");
      +      ok(res.bodyUsed, "After reading body, bodyUsed should be true.");
      +    })
      +    .then(() => {
      +      return res.blob().then(
      +        v => {
      +          ok(false, "Attempting to read body again should fail.");
      +        },
      +        e => {
      +          ok(true, "Attempting to read body again should fail.");
      +        }
      +      );
      +    });
      +}
      +
      +function testBodyCreation() {
      +  var text = "κόσμε";
      +  var res1 = new Response(text);
      +  var p1 = res1.text().then(function (v) {
      +    ok(typeof v === "string", "Should resolve to string");
      +    is(text, v, "Extracted string should match");
      +  });
      +
      +  var res2 = new Response(new Uint8Array([72, 101, 108, 108, 111]));
      +  var p2 = res2.text().then(function (v) {
      +    is("Hello", v, "Extracted string should match");
      +  });
      +
      +  var res2b = new Response(new Uint8Array([72, 101, 108, 108, 111]).buffer);
      +  var p2b = res2b.text().then(function (v) {
      +    is("Hello", v, "Extracted string should match");
      +  });
      +
      +  var resblob = new Response(new Blob([text]));
      +  var pblob = resblob.text().then(function (v) {
      +    is(v, text, "Extracted string should match");
      +  });
      +
      +  var params = new URLSearchParams();
      +  params.append("item", "Geckos");
      +  params.append("feature", "stickyfeet");
      +  params.append("quantity", "700");
      +  var res3 = new Response(params);
      +  var p3 = res3.text().then(function (v) {
      +    var extracted = new URLSearchParams(v);
      +    is(extracted.get("item"), "Geckos", "Param should match");
      +    is(extracted.get("feature"), "stickyfeet", "Param should match");
      +    is(extracted.get("quantity"), "700", "Param should match");
      +  });
      +
      +  return Promise.all([p1, p2, p2b, pblob, p3]);
      +}
      +
      +function testBodyExtraction() {
      +  var text = "κόσμε";
      +  var newRes = function () {
      +    return new Response(text);
      +  };
      +  return newRes()
      +    .text()
      +    .then(function (v) {
      +      ok(typeof v === "string", "Should resolve to string");
      +      is(text, v, "Extracted string should match");
      +    })
      +    .then(function () {
      +      return newRes()
      +        .blob()
      +        .then(function (v) {
      +          ok(v instanceof Blob, "Should resolve to Blob");
      +          return readAsText(v).then(function (result) {
      +            is(result, text, "Decoded Blob should match original");
      +          });
      +        });
      +    })
      +    .then(function () {
      +      return newRes()
      +        .json()
      +        .then(
      +          function (v) {
      +            ok(false, "Invalid json should reject");
      +          },
      +          function (e) {
      +            ok(true, "Invalid json should reject");
      +          }
      +        );
      +    })
      +    .then(function () {
      +      return newRes()
      +        .arrayBuffer()
      +        .then(function (v) {
      +          ok(v instanceof ArrayBuffer, "Should resolve to ArrayBuffer");
      +          var dec = new TextDecoder();
      +          is(
      +            dec.decode(new Uint8Array(v)),
      +            text,
      +            "UTF-8 decoded ArrayBuffer should match original"
      +          );
      +        });
      +    });
      +}
      +
      +function testNullBodyStatus() {
      +  [204, 205, 304].forEach(function (status) {
      +    try {
      +      var res = new Response(new Blob(), { status });
      +      ok(
      +        false,
      +        "Response body provided but status code does not permit a body"
      +      );
      +    } catch (e) {
      +      ok(true, "Response body provided but status code does not permit a body");
      +    }
      +  });
      +
      +  [204, 205, 304].forEach(function (status) {
      +    try {
      +      var res = new Response(undefined, { status });
      +      ok(true, "Response body provided but status code does not permit a body");
      +    } catch (e) {
      +      ok(
      +        false,
      +        "Response body provided but status code does not permit a body"
      +      );
      +    }
      +  });
      +}
      +
      +function runTest() {
      +  testDefaultCtor();
      +  testError();
      +  testRedirect();
      +  testOk();
      +  testNullBodyStatus();
      +
      +  return (
      +    Promise.resolve()
      +      .then(testBodyCreation)
      +      .then(testBodyUsed)
      +      .then(testBodyExtraction)
      +      .then(testClone)
      +      .then(testCloneUnfiltered)
      +      // Put more promise based tests here.
      +      .catch(function (e) {
      +        dump("### ### " + e + "\n");
      +        ok(false, "got unexpected error!");
      +      })
      +  );
      +}
      diff --git a/dom/tests/mochitest/fetch/test_responseReadyForWasm.html b/dom/tests/mochitest/fetch/test_responseReadyForWasm.html
      new file mode 100644
      index 0000000000..7f312a9fb3
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_responseReadyForWasm.html
      @@ -0,0 +1,44 @@
      +
      +
      +
      +  
      +  Test for Response ready to be used by wasm
      +  
      +  
      +
      +
      +  
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_response_sw_reroute.html b/dom/tests/mochitest/fetch/test_response_sw_reroute.html
      new file mode 100644
      index 0000000000..b7d52c9849
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_response_sw_reroute.html
      @@ -0,0 +1,23 @@
      +
      +
      +
      +
      +  Bug 1039846 - Test Response object in worker
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_temporaryFileBlob.html b/dom/tests/mochitest/fetch/test_temporaryFileBlob.html
      new file mode 100644
      index 0000000000..8c645e8416
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_temporaryFileBlob.html
      @@ -0,0 +1,41 @@
      +
      +
      +
      +  
      +  Test for Bug 1312410
      +  
      +  
      +  
      +
      +
      +  
      +
      +
      diff --git a/dom/tests/mochitest/fetch/test_webassembly_streaming.html b/dom/tests/mochitest/fetch/test_webassembly_streaming.html
      new file mode 100644
      index 0000000000..48311ca503
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/test_webassembly_streaming.html
      @@ -0,0 +1,22 @@
      +
      +
      +
      +
      +  Test WebAssembly.compileStreaming() and instantiateStreaming()
      +  
      +  
      +
      +
      +

      + +
      
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/fetch/utils.js b/dom/tests/mochitest/fetch/utils.js
      new file mode 100644
      index 0000000000..8b93c1e90b
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/utils.js
      @@ -0,0 +1,51 @@
      +// Utilities
      +// =========
      +
      +// Helper that uses FileReader or FileReaderSync based on context and returns
      +// a Promise that resolves with the text or rejects with error.
      +function readAsText(blob) {
      +  if (typeof FileReader !== "undefined") {
      +    return new Promise(function (resolve, reject) {
      +      var fs = new FileReader();
      +      fs.onload = function () {
      +        resolve(fs.result);
      +      };
      +      fs.onerror = reject;
      +      fs.readAsText(blob);
      +    });
      +  } else {
      +    var fs = new FileReaderSync();
      +    return Promise.resolve(fs.readAsText(blob));
      +  }
      +}
      +
      +function readAsArrayBuffer(blob) {
      +  if (typeof FileReader !== "undefined") {
      +    return new Promise(function (resolve, reject) {
      +      var fs = new FileReader();
      +      fs.onload = function () {
      +        resolve(fs.result);
      +      };
      +      fs.onerror = reject;
      +      fs.readAsArrayBuffer(blob);
      +    });
      +  } else {
      +    var fs = new FileReaderSync();
      +    return Promise.resolve(fs.readAsArrayBuffer(blob));
      +  }
      +}
      +
      +function waitForState(worker, state, context) {
      +  return new Promise(resolve => {
      +    if (worker.state === state) {
      +      resolve(context);
      +      return;
      +    }
      +    worker.addEventListener("statechange", function onStateChange() {
      +      if (worker.state === state) {
      +        worker.removeEventListener("statechange", onStateChange);
      +        resolve(context);
      +      }
      +    });
      +  });
      +}
      diff --git a/dom/tests/mochitest/fetch/worker_readableStreams.js b/dom/tests/mochitest/fetch/worker_readableStreams.js
      new file mode 100644
      index 0000000000..905c73b7fa
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/worker_readableStreams.js
      @@ -0,0 +1,26 @@
      +importScripts("common_readableStreams.js");
      +
      +function info(message) {
      +  postMessage({ type: "info", message });
      +}
      +
      +function ok(a, message) {
      +  postMessage({ type: "test", test: !!a, message });
      +}
      +
      +function is(a, b, message) {
      +  ok(a === b, message);
      +}
      +
      +onmessage = function (e) {
      +  self[e.data](SAME_COMPARTMENT).then(
      +    ok => {
      +      postMessage({ type: "done" });
      +    },
      +    exc => {
      +      dump(exc);
      +      dump(exc.stack);
      +      postMessage({ type: "error", message: exc.toString() });
      +    }
      +  );
      +};
      diff --git a/dom/tests/mochitest/fetch/worker_temporaryFileBlob.js b/dom/tests/mochitest/fetch/worker_temporaryFileBlob.js
      new file mode 100644
      index 0000000000..e36c32a788
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/worker_temporaryFileBlob.js
      @@ -0,0 +1,31 @@
      +importScripts("common_temporaryFileBlob.js");
      +
      +function info(msg) {
      +  postMessage({ type: "info", msg });
      +}
      +
      +function ok(a, msg) {
      +  postMessage({ type: "check", what: !!a, msg });
      +}
      +
      +function is(a, b, msg) {
      +  ok(a === b, msg);
      +}
      +
      +function next() {
      +  postMessage({ type: "finish" });
      +}
      +
      +onmessage = function (e) {
      +  if (e.data == "xhr") {
      +    test_xhr_basic();
      +  } else if (e.data == "fetch") {
      +    test_fetch_basic();
      +  } else if (e.data == "response") {
      +    test_response_basic();
      +  } else if (e.data == "request") {
      +    test_request_basic();
      +  } else {
      +    ok(false, "Unknown message");
      +  }
      +};
      diff --git a/dom/tests/mochitest/fetch/worker_wrapper.js b/dom/tests/mochitest/fetch/worker_wrapper.js
      new file mode 100644
      index 0000000000..72d00db0e1
      --- /dev/null
      +++ b/dom/tests/mochitest/fetch/worker_wrapper.js
      @@ -0,0 +1,85 @@
      +importScripts("utils.js");
      +
      +function getScriptUrl() {
      +  return new URL(location.href).searchParams.get("script");
      +}
      +
      +importScripts(getScriptUrl());
      +
      +var client;
      +var context;
      +
      +function ok(a, msg) {
      +  client.postMessage({
      +    type: "status",
      +    status: !!a,
      +    msg: a + ": " + msg,
      +    context,
      +  });
      +}
      +
      +function is(a, b, msg) {
      +  client.postMessage({
      +    type: "status",
      +    status: a === b,
      +    msg: a + " === " + b + ": " + msg,
      +    context,
      +  });
      +}
      +
      +addEventListener("message", function workerWrapperOnMessage(e) {
      +  removeEventListener("message", workerWrapperOnMessage);
      +  var data = e.data;
      +
      +  function runTestAndReportToClient(event) {
      +    var done = function (res) {
      +      client.postMessage({ type: "finish", context });
      +      return res;
      +    };
      +
      +    try {
      +      // runTest() is provided by the test.
      +      var result = runTest().then(done, done);
      +      if ("waitUntil" in event) {
      +        event.waitUntil(result);
      +      }
      +    } catch (e) {
      +      client.postMessage({
      +        type: "status",
      +        status: false,
      +        msg: "worker failed to run " + data.script + "; error: " + e.message,
      +        context,
      +      });
      +      done();
      +    }
      +  }
      +
      +  if ("ServiceWorker" in self) {
      +    // Fetch requests from a service worker are not intercepted.
      +    self.isSWPresent = false;
      +
      +    e.waitUntil(
      +      self.clients
      +        .matchAll({ includeUncontrolled: true })
      +        .then(function (clients) {
      +          for (var i = 0; i < clients.length; ++i) {
      +            if (clients[i].url.indexOf("message_receiver.html") > -1) {
      +              client = clients[i];
      +              break;
      +            }
      +          }
      +          if (!client) {
      +            dump(
      +              "We couldn't find the message_receiver window, the test will fail\n"
      +            );
      +          }
      +          context = "ServiceWorker";
      +          runTestAndReportToClient(e);
      +        })
      +    );
      +  } else {
      +    client = self;
      +    context = "Worker";
      +    runTestAndReportToClient(e);
      +  }
      +});
      diff --git a/dom/tests/mochitest/fs/chrome.toml b/dom/tests/mochitest/fs/chrome.toml
      new file mode 100644
      index 0000000000..a1732a4962
      --- /dev/null
      +++ b/dom/tests/mochitest/fs/chrome.toml
      @@ -0,0 +1,4 @@
      +[DEFAULT]
      +support-files = "page_blank.html"
      +
      +["test_privateWin.html"]
      diff --git a/dom/tests/mochitest/fs/page_blank.html b/dom/tests/mochitest/fs/page_blank.html
      new file mode 100644
      index 0000000000..3a4797d5ac
      --- /dev/null
      +++ b/dom/tests/mochitest/fs/page_blank.html
      @@ -0,0 +1,6 @@
      +
      +
      +
      +This is a test
      +
      +
      diff --git a/dom/tests/mochitest/fs/test_privateWin.html b/dom/tests/mochitest/fs/test_privateWin.html
      new file mode 100644
      index 0000000000..a222e74db4
      --- /dev/null
      +++ b/dom/tests/mochitest/fs/test_privateWin.html
      @@ -0,0 +1,56 @@
      +
      +
      +OPFS private window test
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/gamepad_frame.html b/dom/tests/mochitest/gamepad/gamepad_frame.html
      new file mode 100644
      index 0000000000..dae1e92b1b
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/gamepad_frame.html
      @@ -0,0 +1,22 @@
      +
      +
      +
      +
      +  frame
      +  
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/gamepad_frame_state.html b/dom/tests/mochitest/gamepad/gamepad_frame_state.html
      new file mode 100644
      index 0000000000..a53b91b2cb
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/gamepad_frame_state.html
      @@ -0,0 +1,16 @@
      +
      +
      +
      +
      +  frame
      +  
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/mochitest.toml b/dom/tests/mochitest/gamepad/mochitest.toml
      new file mode 100644
      index 0000000000..c558fb43cd
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/mochitest.toml
      @@ -0,0 +1,35 @@
      +[DEFAULT]
      +scheme = "https"
      +prefs = [
      +  "dom.gamepad.test.enabled=true",
      +]
      +support-files = [
      +  "gamepad_frame.html",
      +  "gamepad_frame_state.html",
      +  "mock_gamepad.js",
      +]
      +
      +["test_check_timestamp.html"]
      +support-files = ["test_check_timestamp_iframe.html"]
      +
      +["test_gamepad.html"]
      +support-files = ["test_gamepad_iframe.html"]
      +
      +["test_gamepad_connect_events.html"]
      +support-files = ["test_gamepad_connect_events_iframe.html"]
      +
      +["test_gamepad_extensions.html"]
      +support-files = ["test_gamepad_extensions_iframe.html"]
      +
      +["test_gamepad_frame_state_sync.html"]
      +support-files = ["test_gamepad_frame_state_sync_iframe.html"]
      +
      +["test_gamepad_hidden_frame.html"]
      +# Android doesn't switch tabs on window.focus()
      +skip-if = ["os == 'android'"]
      +
      +["test_gamepad_multitouch_crossorigin.html"]
      +support-files = ["test_gamepad_multitouch_crossorigin_iframe.html"]
      +
      +["test_navigator_gamepads.html"]
      +support-files = ["test_navigator_gamepads_iframe.html"]
      diff --git a/dom/tests/mochitest/gamepad/mock_gamepad.js b/dom/tests/mochitest/gamepad/mock_gamepad.js
      new file mode 100644
      index 0000000000..778035ef10
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/mock_gamepad.js
      @@ -0,0 +1,19 @@
      +/* Any copyright is dedicated to the Public Domain.
      + * http://creativecommons.org/publicdomain/zero/1.0/ */
      +
      +var GamepadService;
      +
      +async function setGamepadPreferenceAndCreateIframe(iframeSrc) {
      +  await SpecialPowers.pushPrefEnv({
      +    set: [["dom.gamepad.test.enabled", true]],
      +  });
      +
      +  let iframe = document.createElement("iframe");
      +  iframe.src = iframeSrc;
      +  document.body.appendChild(iframe);
      +}
      +
      +function runGamepadTest(callback) {
      +  GamepadService = navigator.requestGamepadServiceTest();
      +  callback();
      +}
      diff --git a/dom/tests/mochitest/gamepad/test_check_timestamp.html b/dom/tests/mochitest/gamepad/test_check_timestamp.html
      new file mode 100644
      index 0000000000..04fc8dc9d8
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_check_timestamp.html
      @@ -0,0 +1,20 @@
      +
      +
      +
      +
      +  Test Gamepad.timestamp
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_check_timestamp_iframe.html b/dom/tests/mochitest/gamepad/test_check_timestamp_iframe.html
      new file mode 100644
      index 0000000000..ca99c26746
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_check_timestamp_iframe.html
      @@ -0,0 +1,71 @@
      +
      +
      +
      +
      +  Test Gamepad.timestamp
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad.html b/dom/tests/mochitest/gamepad/test_gamepad.html
      new file mode 100644
      index 0000000000..4e7c9a32bc
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad.html
      @@ -0,0 +1,20 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_connect_events.html b/dom/tests/mochitest/gamepad/test_gamepad_connect_events.html
      new file mode 100644
      index 0000000000..f505ceb9d9
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_connect_events.html
      @@ -0,0 +1,22 @@
      +
      +
      +
      +
      +
      +  Test hidden frames
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_connect_events_iframe.html b/dom/tests/mochitest/gamepad/test_gamepad_connect_events_iframe.html
      new file mode 100644
      index 0000000000..278e6796c0
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_connect_events_iframe.html
      @@ -0,0 +1,83 @@
      +
      +
      +
      +
      +
      +  Test hidden frames
      +  
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_extensions.html b/dom/tests/mochitest/gamepad/test_gamepad_extensions.html
      new file mode 100644
      index 0000000000..364ad540fe
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_extensions.html
      @@ -0,0 +1,19 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_extensions_iframe.html b/dom/tests/mochitest/gamepad/test_gamepad_extensions_iframe.html
      new file mode 100644
      index 0000000000..f63b354e68
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_extensions_iframe.html
      @@ -0,0 +1,171 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync.html b/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync.html
      new file mode 100644
      index 0000000000..927a4e54bb
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync.html
      @@ -0,0 +1,19 @@
      +
      +
      +
      +
      +  Test hidden frames
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync_iframe.html b/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync_iframe.html
      new file mode 100644
      index 0000000000..bdea4e8a5a
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_frame_state_sync_iframe.html
      @@ -0,0 +1,87 @@
      +
      +
      +
      +
      +  Test hidden frames
      +  
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_hidden_frame.html b/dom/tests/mochitest/gamepad/test_gamepad_hidden_frame.html
      new file mode 100644
      index 0000000000..91a84ff5ee
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_hidden_frame.html
      @@ -0,0 +1,82 @@
      +
      +
      +Test hidden frames
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_iframe.html b/dom/tests/mochitest/gamepad/test_gamepad_iframe.html
      new file mode 100644
      index 0000000000..f7e29c1761
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_iframe.html
      @@ -0,0 +1,81 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin.html b/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin.html
      new file mode 100644
      index 0000000000..244b2f18dc
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin.html
      @@ -0,0 +1,20 @@
      +
      +   
      +   
      +   
      +     Test hidden frames
      +     
      +     
      +   
      +   
      +   
      +   
      +   
      +   
      +   
      \ No newline at end of file
      diff --git a/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin_iframe.html b/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin_iframe.html
      new file mode 100644
      index 0000000000..3d9fc6a893
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_gamepad_multitouch_crossorigin_iframe.html
      @@ -0,0 +1,204 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_navigator_gamepads.html b/dom/tests/mochitest/gamepad/test_navigator_gamepads.html
      new file mode 100644
      index 0000000000..06dc214a45
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_navigator_gamepads.html
      @@ -0,0 +1,19 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/gamepad/test_navigator_gamepads_iframe.html b/dom/tests/mochitest/gamepad/test_navigator_gamepads_iframe.html
      new file mode 100644
      index 0000000000..9c98bac2d3
      --- /dev/null
      +++ b/dom/tests/mochitest/gamepad/test_navigator_gamepads_iframe.html
      @@ -0,0 +1,123 @@
      +
      +
      +
      +
      +  Test gamepad
      +  
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/497633.html b/dom/tests/mochitest/general/497633.html
      new file mode 100644
      index 0000000000..da011f54c8
      --- /dev/null
      +++ b/dom/tests/mochitest/general/497633.html
      @@ -0,0 +1,35 @@
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/chrome.toml b/dom/tests/mochitest/general/chrome.toml
      new file mode 100644
      index 0000000000..35665404c1
      --- /dev/null
      +++ b/dom/tests/mochitest/general/chrome.toml
      @@ -0,0 +1,18 @@
      +[DEFAULT]
      +skip-if = ["os == 'android'"]
      +
      +["test_focusrings.xhtml"]
      +support-files = ["file_focusrings.html"]
      +
      +["test_innerScreen.xhtml"]
      +
      +["test_nodeAdoption_chrome_boundary.xhtml"]
      +
      +["test_offsets.xhtml"]
      +support-files = [
      +  "test_offsets.css",
      +  "test_offsets.js",
      +]
      +skip-if = ["os == 'mac' && debug"] #leaks Bug 1571583
      +
      +["test_spacetopagedown.html"]
      diff --git a/dom/tests/mochitest/general/cssA.css b/dom/tests/mochitest/general/cssA.css
      new file mode 100644
      index 0000000000..e69de29bb2
      diff --git a/dom/tests/mochitest/general/cssB.css b/dom/tests/mochitest/general/cssB.css
      new file mode 100644
      index 0000000000..8d44ebd00f
      --- /dev/null
      +++ b/dom/tests/mochitest/general/cssB.css
      @@ -0,0 +1,2 @@
      +@import 'cssC.css';
      +@import url('http://example.org/tests/dom/tests/mochitest/general/cssC.css');
      diff --git a/dom/tests/mochitest/general/cssC.css b/dom/tests/mochitest/general/cssC.css
      new file mode 100644
      index 0000000000..e69de29bb2
      diff --git a/dom/tests/mochitest/general/embed_navigate.html b/dom/tests/mochitest/general/embed_navigate.html
      new file mode 100644
      index 0000000000..93641f026a
      --- /dev/null
      +++ b/dom/tests/mochitest/general/embed_navigate.html
      @@ -0,0 +1 @@
      +
      diff --git a/dom/tests/mochitest/general/emptyCssFile2.css b/dom/tests/mochitest/general/emptyCssFile2.css
      new file mode 100644
      index 0000000000..64f97ae687
      --- /dev/null
      +++ b/dom/tests/mochitest/general/emptyCssFile2.css
      @@ -0,0 +1 @@
      +@import url('http://example.org/tests/dom/tests/mochitest/general/cross.css');
      \ No newline at end of file
      diff --git a/dom/tests/mochitest/general/fail.png b/dom/tests/mochitest/general/fail.png
      new file mode 100644
      index 0000000000..db812bd7d5
      Binary files /dev/null and b/dom/tests/mochitest/general/fail.png differ
      diff --git a/dom/tests/mochitest/general/file_bug628069.html b/dom/tests/mochitest/general/file_bug628069.html
      new file mode 100644
      index 0000000000..9fd28888c9
      --- /dev/null
      +++ b/dom/tests/mochitest/general/file_bug628069.html
      @@ -0,0 +1,16 @@
      +
      +
      +
      +
      +
      +Just a shell of a page.
      +
      +
      diff --git a/dom/tests/mochitest/general/file_clonewrapper.html b/dom/tests/mochitest/general/file_clonewrapper.html
      new file mode 100644
      index 0000000000..18e0505d86
      --- /dev/null
      +++ b/dom/tests/mochitest/general/file_clonewrapper.html
      @@ -0,0 +1,35 @@
      +
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/file_domWindowUtils_scrollbarSize.html b/dom/tests/mochitest/general/file_domWindowUtils_scrollbarSize.html
      new file mode 100644
      index 0000000000..1959fc4f68
      --- /dev/null
      +++ b/dom/tests/mochitest/general/file_domWindowUtils_scrollbarSize.html
      @@ -0,0 +1,7 @@
      +
      +
      +
      +  
      +
      +
      + diff --git a/dom/tests/mochitest/general/file_focusrings.html b/dom/tests/mochitest/general/file_focusrings.html new file mode 100644 index 0000000000..74f3a563ed --- /dev/null +++ b/dom/tests/mochitest/general/file_focusrings.html @@ -0,0 +1,5 @@ +
      diff --git a/dom/tests/mochitest/general/file_frameElementWrapping.html b/dom/tests/mochitest/general/file_frameElementWrapping.html new file mode 100644 index 0000000000..44237f7e04 --- /dev/null +++ b/dom/tests/mochitest/general/file_frameElementWrapping.html @@ -0,0 +1,32 @@ + + + diff --git a/dom/tests/mochitest/general/file_moving_nodeList.html b/dom/tests/mochitest/general/file_moving_nodeList.html new file mode 100644 index 0000000000..2456c6e689 --- /dev/null +++ b/dom/tests/mochitest/general/file_moving_nodeList.html @@ -0,0 +1,31 @@ + + + + + + + diff --git a/dom/tests/mochitest/general/file_moving_xhr.html b/dom/tests/mochitest/general/file_moving_xhr.html new file mode 100644 index 0000000000..ee09c2bd10 --- /dev/null +++ b/dom/tests/mochitest/general/file_moving_xhr.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/dom/tests/mochitest/general/file_resource_timing_nocors.html b/dom/tests/mochitest/general/file_resource_timing_nocors.html new file mode 100644 index 0000000000..64725e7663 --- /dev/null +++ b/dom/tests/mochitest/general/file_resource_timing_nocors.html @@ -0,0 +1,181 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Bug #1180145 - Resource Timing NO-CORS CSS + +

      +
      +
      + +
      BLUE
      +
      RED
      +
      Font
      +
      CURSOR
      +
      +
      + + diff --git a/dom/tests/mochitest/general/frameSelectEvents.html b/dom/tests/mochitest/general/frameSelectEvents.html new file mode 100644 index 0000000000..21995c86ef --- /dev/null +++ b/dom/tests/mochitest/general/frameSelectEvents.html @@ -0,0 +1,929 @@ + + + + Testing Selection Events + + + + + +
      + A bunch of text in a span inside of a div which should be selected +
      + +
      + This is a random block of text +
      + +
      + + + + + + diff --git a/dom/tests/mochitest/general/frameStorageAllowed.html b/dom/tests/mochitest/general/frameStorageAllowed.html new file mode 100644 index 0000000000..bb96392398 --- /dev/null +++ b/dom/tests/mochitest/general/frameStorageAllowed.html @@ -0,0 +1,22 @@ + + +frame for storage allowed test + + + + + + + + + diff --git a/dom/tests/mochitest/general/frameStorageChrome.html b/dom/tests/mochitest/general/frameStorageChrome.html new file mode 100644 index 0000000000..51f4fa85e6 --- /dev/null +++ b/dom/tests/mochitest/general/frameStorageChrome.html @@ -0,0 +1,20 @@ + + +frame for storage allowed test + + + + + + + + + diff --git a/dom/tests/mochitest/general/frameStorageNullprincipal.sjs b/dom/tests/mochitest/general/frameStorageNullprincipal.sjs new file mode 100644 index 0000000000..7b2f5a4229 --- /dev/null +++ b/dom/tests/mochitest/general/frameStorageNullprincipal.sjs @@ -0,0 +1,40 @@ +// This is a sjs file which reads in frameStoragePrevented.html, and writes it out as a data: URI, which this page redirects to. +// This produces a URI with the null principal, which should be unable to access storage. +// We append the #nullprincipal hash to the end of the data: URI to tell the script that it shouldn't try to spawn a webworker, +// as it won't be allowed to, as it has a null principal. + +function handleRequest(request, response) { + // Get the nsIFile for frameStoragePrevented.html + var file; + getObjectState("SERVER_ROOT", function (serverRoot) { + file = serverRoot.getFile( + "/tests/dom/tests/mochitest/general/frameStoragePrevented.html" + ); + }); + + // Set up the file streams to read in the file as UTF-8 + let fstream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance( + Ci.nsIFileInputStream + ); + fstream.init(file, -1, 0, 0); + let cstream = Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance( + Ci.nsIConverterInputStream + ); + cstream.init(fstream, "UTF-8", 0, 0); + + // Read in the file, and concatenate it onto the data string + let data = ""; + let str = {}; + let read = 0; + do { + read = cstream.readString(0xffffffff, str); + data += str.value; + } while (read != 0); + + // Write out the file as a data: URI, and redirect to it + response.setStatusLine("1.1", 302, "Found"); + response.setHeader( + "Location", + "data:text/html," + encodeURIComponent(data) + "#nullprincipal" + ); +} diff --git a/dom/tests/mochitest/general/frameStoragePrevented.html b/dom/tests/mochitest/general/frameStoragePrevented.html new file mode 100644 index 0000000000..693beff5a4 --- /dev/null +++ b/dom/tests/mochitest/general/frameStoragePrevented.html @@ -0,0 +1,47 @@ + + + +frame for storage prevented test + + + + + + + + + diff --git a/dom/tests/mochitest/general/generateCss.sjs b/dom/tests/mochitest/general/generateCss.sjs new file mode 100644 index 0000000000..2f91946751 --- /dev/null +++ b/dom/tests/mochitest/general/generateCss.sjs @@ -0,0 +1,39 @@ +function handleRequest(request, response) { + response.setHeader("Content-Type", "text/css", false); + response.write(gResponses[request.queryString]); +} + +let gResponses = { + // 1 + A: "@import 'generateCss.sjs?B';", + B: "", + + // 2 + C: "@import 'generateCss.sjs?D';", + D: "", + + // 3 + E: "@import 'generateCss.sjs?F';", + F: "", + + // 4 + G: "@import 'generateCss.sjs?H'; @import 'http://example.org/tests/dom/tests/mochitest/general/generateCss.sjs?K';", + H: "@import 'http://example.com/tests/dom/tests/mochitest/general/generateCss.sjs?I';", + I: "@import 'generateCss.sjs?J", + J: "", + K: "@import 'generateCss.sjs?L';", + L: "@import 'generateCss.sjs?M", + M: "", + + // 6 + O: ".c2 { background-image: url('/image/test/mochitest/red.png');}", + + // 7 + P: "@font-face { font-family: Ahem; src: url('/tests/dom/base/test/Ahem.ttf'); } .c3 { font-family: Ahem; font-size: 20px; }", + + // 8 + Q: ".c4 { cursor: url('/image/test/mochitest/over.png') 2 2, auto; } ", + + // 9 + R: "#image { mask: url('/tests/dom/base/test/file_use_counter_svg_fill_pattern_data.svg'); }", +}; diff --git a/dom/tests/mochitest/general/historyframes.html b/dom/tests/mochitest/general/historyframes.html new file mode 100644 index 0000000000..f0f7e934ae --- /dev/null +++ b/dom/tests/mochitest/general/historyframes.html @@ -0,0 +1,179 @@ + + + + + Test for Bug 602256 + + +Mozilla Bug 602256 +
      + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/image_100.png b/dom/tests/mochitest/general/image_100.png new file mode 100644 index 0000000000..df421453c2 Binary files /dev/null and b/dom/tests/mochitest/general/image_100.png differ diff --git a/dom/tests/mochitest/general/image_200.png b/dom/tests/mochitest/general/image_200.png new file mode 100644 index 0000000000..6f76d44387 Binary files /dev/null and b/dom/tests/mochitest/general/image_200.png differ diff --git a/dom/tests/mochitest/general/image_50.png b/dom/tests/mochitest/general/image_50.png new file mode 100644 index 0000000000..144a2f0b93 Binary files /dev/null and b/dom/tests/mochitest/general/image_50.png differ diff --git a/dom/tests/mochitest/general/importsSameAndCrossOrigin.css b/dom/tests/mochitest/general/importsSameAndCrossOrigin.css new file mode 100644 index 0000000000..69e239c063 --- /dev/null +++ b/dom/tests/mochitest/general/importsSameAndCrossOrigin.css @@ -0,0 +1,3 @@ +@import 'emptyCssFile2.css'; +@import url('http://example.org/tests/dom/tests/mochitest/general/emptyCssFile2.css'); + diff --git a/dom/tests/mochitest/general/mochitest.toml b/dom/tests/mochitest/general/mochitest.toml new file mode 100644 index 0000000000..b8ec30f510 --- /dev/null +++ b/dom/tests/mochitest/general/mochitest.toml @@ -0,0 +1,281 @@ +[DEFAULT] +prefs = ["dom.svg.pathSeg.enabled=false"] +support-files = [ + "497633.html", + "fail.png", + "file_bug628069.html", + "file_clonewrapper.html", + "file_domWindowUtils_scrollbarSize.html", + "file_frameElementWrapping.html", + "file_moving_nodeList.html", + "file_moving_xhr.html", + "file_resource_timing_nocors.html", + "generateCss.sjs", + "historyframes.html", + "start_historyframe.html", + "url1_historyframe.html", + "url2_historyframe.html", + "image_50.png", + "image_100.png", + "image_200.png", + "pass.apng", + "performance_timeline_main_test.html", + "resource_timing_iframe.html", + "resource_timing_main_test.html", + "resource_timing_cross_origin.html", + "res0.resource", + "res1.resource", + "res1.resource^headers^", + "res2.resource", + "res2.resource^headers^", + "res3.resource", + "res3.resource^headers^", + "res4.resource", + "res4.resource^headers^", + "res5.resource", + "res5.resource^headers^", + "res6.resource", + "res6.resource^headers^", + "res7.resource", + "res7.resource^headers^", + "res8.resource", + "res8.resource^headers^", + "resource_timing.js", + "navigation_timing.html", + "test_interfaces.js", + "frameStorageAllowed.html", + "frameStoragePrevented.html", + "frameStorageChrome.html", + "frameStorageNullprincipal.sjs", + "workerStorageAllowed.js", + "workerStoragePrevented.js", + "storagePermissionsUtils.js", + "window_storagePermissions.html", + "frameSelectEvents.html", + "!/image/test/mochitest/big.png", + "!/image/test/mochitest/blue.png", + "!/image/test/mochitest/clear.png", + "!/image/test/mochitest/damon.jpg", + "!/image/test/mochitest/over.png", + "!/image/test/mochitest/red.png", + "!/dom/base/test/Ahem.ttf", + "!/dom/base/test/file_empty.html", + "!/dom/base/test/file_use_counter_svg_fill_pattern_data.svg", + "resource_timing_location_navigate.html", + "resource_timing_meta_refresh.html", + "resource_timing_redirect.html", + "resource_timing_redirect.html^headers^", + "embed_navigate.html", + "postback.html", +] + +["test_497898.html"] + +["test_CCW_optimization.html"] + +["test_DOMMatrix.html"] + +["test_WebKitCSSMatrix.html"] + +["test_bug504220.html"] + +["test_bug628069_1.html"] + +["test_bug628069_2.html"] + +["test_bug631440.html"] + +["test_bug653364.html"] + +["test_bug861217.html"] + +["test_bug1161721.html"] + +["test_bug1170911.html"] + +["test_bug1208217.html"] + +["test_bug1313753.html"] + +["test_bug1434273.html"] + +["test_clientRects.html"] + +["test_clipboard_disallowed.html"] + +["test_clipboard_events.html"] +support-files = ["window_clipboard_events.html"] +skip-if = ["headless"] # bug 1403542 + +["test_consoleAPI.html"] + +["test_contentViewer_overrideDPPX.html"] + +["test_devicePixelRatio_with_zoom.html"] + +["test_domWindowUtils.html"] + +["test_domWindowUtils_scrollXY.html"] + +["test_domWindowUtils_scrollbarSize.html"] +skip-if = [ + "http3", + "http2", +] + +["test_donottrack.html"] + +["test_focus_legend_noparent.html"] + +["test_focus_scrollchildframe.html"] + +["test_for_of.html"] + +["test_frameElementWrapping.html"] +skip-if = [ + "http3", + "http2", +] + +["test_framedhistoryframes.html"] +skip-if = [ + "http3", + "http2", +] + +["test_img_mutations.html"] + +["test_interfaces.html"] +skip-if = [ + "http3", + "http2", +] + +["test_interfaces_secureContext.html"] +scheme = "https" + +["test_media_queries_with_zoom.html"] + +["test_navigation_timing.html"] + +["test_network_events.html"] +skip-if = ["true"] # Disable this test until bug 795711 is fixed. + +["test_offsets.html"] +support-files = ["test_offsets.js"] + +["test_outerHTML.html"] + +["test_outerHTML.xhtml"] + +["test_paste_selection.html"] + +["test_performance_nav_timing_before_onload.html"] + +["test_performance_now.html"] + +["test_performance_timeline.html"] +skip-if = [ + "verify", + "http3", + "http2", +] + +["test_picture_apng.html"] + +["test_picture_mutations.html"] + +["test_pointerPreserves3D.html"] + +["test_pointerPreserves3DClip.html"] + +["test_pointerPreserves3DPerspective.html"] + +["test_resizeby.html"] +skip-if = [ + "os == 'android'", # Window sizes cannot be controled on android; Windows + "os == 'linux' && bits == 64",# Bug 1604152 +] + +["test_resource_timing.html"] +skip-if = [ + "verify", + "http3", + "http2", +] + +["test_resource_timing_cross_origin.html"] +skip-if = [ + "http3", + "http2", +] + +["test_resource_timing_cross_origin_navigate.html"] +skip-if = [ + "http3", + "http2", +] + +["test_resource_timing_frameset.html"] +skip-if = [ + "http3", + "http2", +] + +["test_resource_timing_nocors.html"] +skip-if = [ + "http3", + "http2", +] + +["test_selectevents.html"] +skip-if = ["os == 'android'"] # bug 1627523 + +["test_showModalDialog_removed.html"] + +["test_storagePermissionsAccept.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storagePermissionsLimitForeign.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storagePermissionsReject.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storagePermissionsRejectForeign.html"] +skip-if = [ + "http3", + "http2", +] + +["test_stylesheetPI.html"] + +["test_toggling_performance_navigation_timing.html"] +skip-if = [ + "os == 'win' && bits == 64 && !debug", # Bug 1730152 + "os == 'mac' && bits == 64 && !debug", # Bug 1730152 +] + +["test_vibrator.html"] +fail-if = ["xorigin"] +skip-if = [ + "http3", + "http2", +] + +["test_windowProperties.html"] + +["test_windowedhistoryframes.html"] +skip-if = [ + "http3", + "http2", +] diff --git a/dom/tests/mochitest/general/navigation_timing.html b/dom/tests/mochitest/general/navigation_timing.html new file mode 100644 index 0000000000..c1f2ccdf91 --- /dev/null +++ b/dom/tests/mochitest/general/navigation_timing.html @@ -0,0 +1,99 @@ + + + + + + + + + + + + + Bug #1099092 - Navigation Timing has incorrect values when page is load via link with target=_blank attribute + +

      + + diff --git a/dom/tests/mochitest/general/pass.apng b/dom/tests/mochitest/general/pass.apng new file mode 100644 index 0000000000..6e78a9eef4 Binary files /dev/null and b/dom/tests/mochitest/general/pass.apng differ diff --git a/dom/tests/mochitest/general/performance_timeline_main_test.html b/dom/tests/mochitest/general/performance_timeline_main_test.html new file mode 100644 index 0000000000..f8094998eb --- /dev/null +++ b/dom/tests/mochitest/general/performance_timeline_main_test.html @@ -0,0 +1,106 @@ + + + + + + + + + + + + Bug #1158731 - Buffer for Performance APIs (Resource Timing, User Timing) should be separeted + +

      +
      + + + +
      + + diff --git a/dom/tests/mochitest/general/postback.html b/dom/tests/mochitest/general/postback.html new file mode 100644 index 0000000000..c45cf5ad34 --- /dev/null +++ b/dom/tests/mochitest/general/postback.html @@ -0,0 +1,16 @@ + + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/res0.resource b/dom/tests/mochitest/general/res0.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res1.resource b/dom/tests/mochitest/general/res1.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res1.resource^headers^ b/dom/tests/mochitest/general/res1.resource^headers^ new file mode 100644 index 0000000000..2e5d8ea17a --- /dev/null +++ b/dom/tests/mochitest/general/res1.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 200 +Timing-Allow-Origin: * diff --git a/dom/tests/mochitest/general/res2.resource b/dom/tests/mochitest/general/res2.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res2.resource^headers^ b/dom/tests/mochitest/general/res2.resource^headers^ new file mode 100644 index 0000000000..f19c20d3ec --- /dev/null +++ b/dom/tests/mochitest/general/res2.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 302 Moved +Location: http://test2.example.com/tests/image/test/mochitest/red.png diff --git a/dom/tests/mochitest/general/res3.resource b/dom/tests/mochitest/general/res3.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res3.resource^headers^ b/dom/tests/mochitest/general/res3.resource^headers^ new file mode 100644 index 0000000000..391a442227 --- /dev/null +++ b/dom/tests/mochitest/general/res3.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 200 +Timing-Allow-Origin: http://mochi.test:8888 diff --git a/dom/tests/mochitest/general/res4.resource b/dom/tests/mochitest/general/res4.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res4.resource^headers^ b/dom/tests/mochitest/general/res4.resource^headers^ new file mode 100644 index 0000000000..fbf4a9de7f --- /dev/null +++ b/dom/tests/mochitest/general/res4.resource^headers^ @@ -0,0 +1,3 @@ +HTTP 302 Moved +Timing-Allow-Origin: * +Location: http://mochi.test:8888/tests/dom/tests/mochitest/general/res1.resource diff --git a/dom/tests/mochitest/general/res5.resource b/dom/tests/mochitest/general/res5.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res5.resource^headers^ b/dom/tests/mochitest/general/res5.resource^headers^ new file mode 100644 index 0000000000..1be24a555c --- /dev/null +++ b/dom/tests/mochitest/general/res5.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 200 +Timing-Allow-Origin: http://mochi.test:8889 diff --git a/dom/tests/mochitest/general/res6.resource b/dom/tests/mochitest/general/res6.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res6.resource^headers^ b/dom/tests/mochitest/general/res6.resource^headers^ new file mode 100644 index 0000000000..4a570ae678 --- /dev/null +++ b/dom/tests/mochitest/general/res6.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 200 +Timing-Allow-Origin: diff --git a/dom/tests/mochitest/general/res7.resource b/dom/tests/mochitest/general/res7.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res7.resource^headers^ b/dom/tests/mochitest/general/res7.resource^headers^ new file mode 100644 index 0000000000..d9bbf9462b --- /dev/null +++ b/dom/tests/mochitest/general/res7.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 200 +Timing-Allow-Origin: http://mochi.test:8888 http://test1.com diff --git a/dom/tests/mochitest/general/res8.resource b/dom/tests/mochitest/general/res8.resource new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/res8.resource^headers^ b/dom/tests/mochitest/general/res8.resource^headers^ new file mode 100644 index 0000000000..21f490fd32 --- /dev/null +++ b/dom/tests/mochitest/general/res8.resource^headers^ @@ -0,0 +1,2 @@ +HTTP 302 Moved +Location: http://test1.example.com/tests/dom/tests/mochitest/general/res4.resource diff --git a/dom/tests/mochitest/general/resource_timing.js b/dom/tests/mochitest/general/resource_timing.js new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dom/tests/mochitest/general/resource_timing_cross_origin.html b/dom/tests/mochitest/general/resource_timing_cross_origin.html new file mode 100644 index 0000000000..d608cdce9a --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_cross_origin.html @@ -0,0 +1,191 @@ + + + + + + + + + + + Bug #822480 - Add in the Resource Timing API + +

      +
      + + + + + + + + + + + +
      + + + diff --git a/dom/tests/mochitest/general/resource_timing_iframe.html b/dom/tests/mochitest/general/resource_timing_iframe.html new file mode 100644 index 0000000000..2d50427d92 --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_iframe.html @@ -0,0 +1,50 @@ + + + + + + + + + Test for Bug 822480 - Add in the Resource Timing API + + + + + + + diff --git a/dom/tests/mochitest/general/resource_timing_location_navigate.html b/dom/tests/mochitest/general/resource_timing_location_navigate.html new file mode 100644 index 0000000000..94d0d0512e --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_location_navigate.html @@ -0,0 +1,3 @@ + diff --git a/dom/tests/mochitest/general/resource_timing_main_test.html b/dom/tests/mochitest/general/resource_timing_main_test.html new file mode 100644 index 0000000000..88b44f76dd --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_main_test.html @@ -0,0 +1,290 @@ + + + + + + + + + + + + + + Bug #822480 - Add in the Resource Timing API + +

      +
      + + + + +
      + + diff --git a/dom/tests/mochitest/general/resource_timing_meta_refresh.html b/dom/tests/mochitest/general/resource_timing_meta_refresh.html new file mode 100644 index 0000000000..dbbcd65413 --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_meta_refresh.html @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/dom/tests/mochitest/general/resource_timing_nocors.html b/dom/tests/mochitest/general/resource_timing_nocors.html new file mode 100644 index 0000000000..39b34950fc --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_nocors.html @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + Bug #1180145 - Resource Timing NO-CORS CSS + +

      +
      +
      + + diff --git a/dom/tests/mochitest/general/resource_timing_redirect.html b/dom/tests/mochitest/general/resource_timing_redirect.html new file mode 100644 index 0000000000..5417098d72 --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_redirect.html @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/resource_timing_redirect.html^headers^ b/dom/tests/mochitest/general/resource_timing_redirect.html^headers^ new file mode 100644 index 0000000000..aed575c918 --- /dev/null +++ b/dom/tests/mochitest/general/resource_timing_redirect.html^headers^ @@ -0,0 +1,2 @@ +HTTP 302 Found +Location: https://example.org/tests/dom/tests/mochitest/general/postback.html diff --git a/dom/tests/mochitest/general/start_historyframe.html b/dom/tests/mochitest/general/start_historyframe.html new file mode 100644 index 0000000000..a791af4e64 --- /dev/null +++ b/dom/tests/mochitest/general/start_historyframe.html @@ -0,0 +1 @@ +

      Start

      diff --git a/dom/tests/mochitest/general/storagePermissionsUtils.js b/dom/tests/mochitest/general/storagePermissionsUtils.js new file mode 100644 index 0000000000..cfab2f0a14 --- /dev/null +++ b/dom/tests/mochitest/general/storagePermissionsUtils.js @@ -0,0 +1,283 @@ +const BEHAVIOR_ACCEPT = 0; +const BEHAVIOR_REJECT_FOREIGN = 1; +const BEHAVIOR_REJECT = 2; +const BEHAVIOR_LIMIT_FOREIGN = 3; + +const kPrefName = "network.cookie.cookieBehavior"; + +// Check if we are in frame, and declare ok and finishTest appropriately +const inFrame = ("" + location).match(/frame/); +if (inFrame) { + ok = function (a, message) { + if (!a) { + parent.postMessage("FAILURE: " + message, "http://mochi.test:8888"); + } else { + parent.postMessage(message, "http://mochi.test:8888"); + } + }; + + finishTest = function () { + parent.postMessage("done", "http://mochi.test:8888"); + }; +} else { + finishTest = function () { + SimpleTest.finish(); + }; +} + +function setCookieBehavior(behavior) { + return SpecialPowers.pushPrefEnv({ set: [[kPrefName, behavior]] }); +} + +function runIFrame(url) { + return new Promise((resolve, reject) => { + function onMessage(e) { + if (e.data == "done") { + resolve(); + window.removeEventListener("message", onMessage); + return; + } + + ok(!e.data.match(/^FAILURE/), e.data + " (IFRAME = " + url + ")"); + } + window.addEventListener("message", onMessage); + + document.querySelector("iframe").src = url; + }); +} + +function runWorker(url) { + return new Promise((resolve, reject) => { + var worker = new Worker(url); + worker.addEventListener("message", function (e) { + if (e.data == "done") { + resolve(); + return; + } + + ok(!e.data.match(/^FAILURE/), e.data + " (WORKER = " + url + ")"); + }); + }); +} + +function chromePower(allowed, blockSessionStorage) { + // localStorage is affected by storage policy. + try { + SpecialPowers.wrap(window).localStorage.getItem("X"); + ok(allowed, "getting localStorage from chrome didn't throw"); + } catch (e) { + ok(!allowed, "getting localStorage from chrome threw"); + } + + // sessionStorage is not. See bug 1183968. + try { + SpecialPowers.wrap(window).sessionStorage.getItem("X"); + ok(!blockSessionStorage, "getting sessionStorage from chrome didn't throw"); + } catch (e) { + ok(blockSessionStorage, "getting sessionStorage from chrome threw"); + } + + // indexedDB is affected by storage policy. + try { + SpecialPowers.wrap(window).indexedDB; + ok(allowed, "getting indexedDB from chrome didn't throw"); + } catch (e) { + ok(!allowed, "getting indexedDB from chrome threw"); + } + + // Same with caches, along with the additional https-only requirement. + try { + var shouldResolve = allowed && location.protocol == "https:"; + var promise = SpecialPowers.wrap(window).caches.keys(); + ok(true, "getting caches from chrome should never throw"); + return new Promise((resolve, reject) => { + promise.then( + function () { + ok(shouldResolve, "The promise was resolved for chrome"); + resolve(); + }, + function (e) { + ok(!shouldResolve, "The promise was rejected for chrome: " + e); + resolve(); + } + ); + }); + } catch (e) { + ok(false, "getting caches from chrome threw"); + return undefined; + } +} + +function storageAllowed() { + try { + localStorage.getItem("X"); + ok(true, "getting localStorage didn't throw"); + } catch (e) { + ok(false, "getting localStorage should not throw"); + } + + try { + sessionStorage.getItem("X"); + ok(true, "getting sessionStorage didn't throw"); + } catch (e) { + ok(false, "getting sessionStorage should not throw"); + } + + try { + indexedDB; + ok(true, "getting indexedDB didn't throw"); + } catch (e) { + ok(false, "getting indexedDB should not throw"); + } + + try { + var promise = caches.keys(); + ok(true, "getting caches didn't throw"); + + return new Promise((resolve, reject) => { + promise.then( + function () { + ok(location.protocol == "https:", "The promise was not rejected"); + resolve(); + }, + function () { + ok( + location.protocol !== "https:", + "The promise should not have been rejected" + ); + resolve(); + } + ); + }); + } catch (e) { + ok(location.protocol !== "https:", "getting caches should not have thrown"); + return Promise.resolve(); + } +} + +function storagePrevented() { + try { + localStorage.getItem("X"); + ok(false, "getting localStorage should have thrown"); + } catch (e) { + ok(true, "getting localStorage threw"); + } + + if (location.hash == "#thirdparty") { + // No matter what the user's preferences are, we don't block + // sessionStorage in 3rd-party iframes. We do block them everywhere + // else however. + try { + sessionStorage.getItem("X"); + ok(true, "getting sessionStorage didn't throw"); + } catch (e) { + ok(false, "getting sessionStorage should not have thrown"); + } + } else { + try { + sessionStorage.getItem("X"); + ok(false, "getting sessionStorage should have thrown"); + } catch (e) { + ok(true, "getting sessionStorage threw"); + } + } + + try { + indexedDB; + ok(false, "getting indexedDB should have thrown"); + } catch (e) { + ok(true, "getting indexedDB threw"); + } + + try { + var promise = caches.keys(); + ok(true, "getting caches didn't throw"); + + return new Promise((resolve, reject) => { + promise.then( + function () { + ok(false, "The promise should have rejected"); + resolve(); + }, + function () { + ok(true, "The promise was rejected"); + resolve(); + } + ); + }); + } catch (e) { + ok(location.protocol !== "https:", "getting caches should not have thrown"); + + return Promise.resolve(); + } +} + +function task(fn) { + if (!inFrame) { + SimpleTest.waitForExplicitFinish(); + } + + var gen = fn(); + + function next_step(val, e) { + var it; + try { + if (typeof e !== "undefined") { + it = gen.throw(e); + } else { + it = gen.next(val); + } + } catch (e) { + ok(false, "An error was thrown while stepping: " + e); + ok(false, "Stack: " + e.stack); + finishTest(); + } + + if (it.done) { + finishTest(); + return; + } + it.value.then(next_step, e => next_step(null, e)); + } + + if (!gen.then) { + next_step(); + } else { + gen.then(finishTest, e => { + ok(false, "An error was thrown while stepping: " + e); + ok(false, "Stack: " + e.stack); + finishTest(); + }); + } +} + +// The test will run on a separate window in order to apply the new cookie jar settings. +async function runTestInWindow(test) { + let w = window.open("window_storagePermissions.html"); + await new Promise(resolve => { + w.onload = e => { + resolve(); + }; + }); + + await new Promise(resolve => { + onmessage = e => { + if (e.data.type == "finish") { + w.close(); + resolve(); + return; + } + + if (e.data.type == "check") { + ok(e.data.test, e.data.msg); + return; + } + + ok(false, "Unknown message"); + }; + + w.postMessage(test.toString(), "*"); + }); +} + +var thirdparty = "https://example.com/tests/dom/tests/mochitest/general/"; diff --git a/dom/tests/mochitest/general/test-data.json b/dom/tests/mochitest/general/test-data.json new file mode 100644 index 0000000000..797ab7a9dc --- /dev/null +++ b/dom/tests/mochitest/general/test-data.json @@ -0,0 +1 @@ +{ "id": "test JSON data", "myArray": ["foo", "bar", "baz", "biff"] } diff --git a/dom/tests/mochitest/general/test-data2.json b/dom/tests/mochitest/general/test-data2.json new file mode 100644 index 0000000000..797ab7a9dc --- /dev/null +++ b/dom/tests/mochitest/general/test-data2.json @@ -0,0 +1 @@ +{ "id": "test JSON data", "myArray": ["foo", "bar", "baz", "biff"] } diff --git a/dom/tests/mochitest/general/test_497898.html b/dom/tests/mochitest/general/test_497898.html new file mode 100644 index 0000000000..c26c67af86 --- /dev/null +++ b/dom/tests/mochitest/general/test_497898.html @@ -0,0 +1,41 @@ + + +Crash [@ nsFocusManager::SendFocusOrBlurEvent] after switching focus to a different window in this case + + + + + + + +

      + + + + + diff --git a/dom/tests/mochitest/general/test_CCW_optimization.html b/dom/tests/mochitest/general/test_CCW_optimization.html new file mode 100644 index 0000000000..ca3a2e096c --- /dev/null +++ b/dom/tests/mochitest/general/test_CCW_optimization.html @@ -0,0 +1,50 @@ + + + + + Test for Bug 1319087 + + + + + +Mozilla Bug 1319087 +

      +
      + + +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/test_DOMMatrix.html b/dom/tests/mochitest/general/test_DOMMatrix.html
      new file mode 100644
      index 0000000000..81bf68d71c
      --- /dev/null
      +++ b/dom/tests/mochitest/general/test_DOMMatrix.html
      @@ -0,0 +1,717 @@
      +
      +
      +
      +  Test DOMMatrix behavior
      +  
      +  
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_WebKitCSSMatrix.html b/dom/tests/mochitest/general/test_WebKitCSSMatrix.html new file mode 100644 index 0000000000..690a7d2c63 --- /dev/null +++ b/dom/tests/mochitest/general/test_WebKitCSSMatrix.html @@ -0,0 +1,339 @@ + + +Test for WebKitCSSMatrix + + +
      + diff --git a/dom/tests/mochitest/general/test_bug1161721.html b/dom/tests/mochitest/general/test_bug1161721.html new file mode 100644 index 0000000000..ab609bf046 --- /dev/null +++ b/dom/tests/mochitest/general/test_bug1161721.html @@ -0,0 +1,32 @@ + + + + + Test for Bug 1161721 + + + + + + +Mozilla Bug 1161721 +

      + +
      +
      + +
      +  
      +
      + + diff --git a/dom/tests/mochitest/general/test_bug1170911.html b/dom/tests/mochitest/general/test_bug1170911.html new file mode 100644 index 0000000000..af0e71576f --- /dev/null +++ b/dom/tests/mochitest/general/test_bug1170911.html @@ -0,0 +1,90 @@ + + + + + Test for Bug 1170911 + + + + + + +Mozilla Bug 1170911 +

      + +
      + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_bug1208217.html b/dom/tests/mochitest/general/test_bug1208217.html new file mode 100644 index 0000000000..1f76ba34de --- /dev/null +++ b/dom/tests/mochitest/general/test_bug1208217.html @@ -0,0 +1,31 @@ + + + + + Test for Bug 1208217 + + + + + +Mozilla Bug 1208217 + + + diff --git a/dom/tests/mochitest/general/test_bug1313753.html b/dom/tests/mochitest/general/test_bug1313753.html new file mode 100644 index 0000000000..e684f29136 --- /dev/null +++ b/dom/tests/mochitest/general/test_bug1313753.html @@ -0,0 +1,63 @@ + + +Test for bug 1313753 + +
      + + + +
      +
      +
      +
      +
        +
      • +
        +
        +
        +
      • +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/test_bug1434273.html b/dom/tests/mochitest/general/test_bug1434273.html new file mode 100644 index 0000000000..89556d1a0d --- /dev/null +++ b/dom/tests/mochitest/general/test_bug1434273.html @@ -0,0 +1,36 @@ + + + + + + Test for Bug 1434273 + + + + + + + +Mozilla Bug 1434273 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/general/test_bug504220.html b/dom/tests/mochitest/general/test_bug504220.html new file mode 100644 index 0000000000..7223c67d91 --- /dev/null +++ b/dom/tests/mochitest/general/test_bug504220.html @@ -0,0 +1,65 @@ + + + + + Test for Bug 504220 + + + + + +Mozilla Bug 504220 +

      +
      + + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_bug628069_1.html b/dom/tests/mochitest/general/test_bug628069_1.html new file mode 100644 index 0000000000..fef2307a45 --- /dev/null +++ b/dom/tests/mochitest/general/test_bug628069_1.html @@ -0,0 +1,50 @@ + + + + + Test for Bug 628069 + + + + + +Mozilla Bug 628069 +

      +
      + + +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/test_bug628069_2.html b/dom/tests/mochitest/general/test_bug628069_2.html
      new file mode 100644
      index 0000000000..e9c5b623eb
      --- /dev/null
      +++ b/dom/tests/mochitest/general/test_bug628069_2.html
      @@ -0,0 +1,41 @@
      +
      +
      +
      +
      +  Test for Bug 628069
      +  
      +  
      +  
      +
      +
      +Mozilla Bug 628069
      +

      +
      + + +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/test_bug631440.html b/dom/tests/mochitest/general/test_bug631440.html
      new file mode 100644
      index 0000000000..8228a0af99
      --- /dev/null
      +++ b/dom/tests/mochitest/general/test_bug631440.html
      @@ -0,0 +1,39 @@
      +
      +
      +
      +
      +  Test for Bug 631440
      +  
      +  
      +
      +
      +Mozilla Bug 631440
      +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_bug653364.html b/dom/tests/mochitest/general/test_bug653364.html new file mode 100644 index 0000000000..2db81254eb --- /dev/null +++ b/dom/tests/mochitest/general/test_bug653364.html @@ -0,0 +1,39 @@ + + + + + Test for Bug 653364 + + + + + +Mozilla Bug 653364 +

      +
      + + +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/general/test_bug861217.html b/dom/tests/mochitest/general/test_bug861217.html
      new file mode 100644
      index 0000000000..1af3f58ff6
      --- /dev/null
      +++ b/dom/tests/mochitest/general/test_bug861217.html
      @@ -0,0 +1,115 @@
      +
      +
      +
      +
      +  Test for Bug 861217
      +  
      +  
      +
      +
      +Mozilla Bug 861217
      +

      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      1
      2
      3
      4
      5
      6
      7
      8
      + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_clientRects.html b/dom/tests/mochitest/general/test_clientRects.html new file mode 100644 index 0000000000..3c44d6b4c1 --- /dev/null +++ b/dom/tests/mochitest/general/test_clientRects.html @@ -0,0 +1,127 @@ + + + + Tests for getClientRects/getBoundingClientRect + + + + + + + + +
      + +
      +
      +
      +
      +
      +
      + + + +
      +
      +
      + + + +
      +
      + + +
      + +
      +
      +
      + +
      +
      +
      +
      +
      + +
      + + + + + + + + + + +

      + + + + diff --git a/dom/tests/mochitest/general/test_clipboard_disallowed.html b/dom/tests/mochitest/general/test_clipboard_disallowed.html new file mode 100644 index 0000000000..ce331ee253 --- /dev/null +++ b/dom/tests/mochitest/general/test_clipboard_disallowed.html @@ -0,0 +1,69 @@ + + + + Test for Clipboard Events + + + + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_clipboard_events.html b/dom/tests/mochitest/general/test_clipboard_events.html new file mode 100644 index 0000000000..aa99010b89 --- /dev/null +++ b/dom/tests/mochitest/general/test_clipboard_events.html @@ -0,0 +1,37 @@ + + + + Test for Clipboard Events + + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_consoleAPI.html b/dom/tests/mochitest/general/test_consoleAPI.html new file mode 100644 index 0000000000..506fc7f160 --- /dev/null +++ b/dom/tests/mochitest/general/test_consoleAPI.html @@ -0,0 +1,66 @@ + + + + window.console test + + + + + + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_contentViewer_overrideDPPX.html b/dom/tests/mochitest/general/test_contentViewer_overrideDPPX.html new file mode 100644 index 0000000000..a5d15d0cad --- /dev/null +++ b/dom/tests/mochitest/general/test_contentViewer_overrideDPPX.html @@ -0,0 +1,428 @@ + + + + nsIDocumentViewer::overrideDPPX test + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_devicePixelRatio_with_zoom.html b/dom/tests/mochitest/general/test_devicePixelRatio_with_zoom.html new file mode 100644 index 0000000000..710af8fe43 --- /dev/null +++ b/dom/tests/mochitest/general/test_devicePixelRatio_with_zoom.html @@ -0,0 +1,84 @@ + + + + DevicePixelRatios with Zoom + + + + + + +
      Testing devicePixelRatio with different zoom levels
      + + + + + diff --git a/dom/tests/mochitest/general/test_domWindowUtils.html b/dom/tests/mochitest/general/test_domWindowUtils.html new file mode 100644 index 0000000000..2b0bcc9086 --- /dev/null +++ b/dom/tests/mochitest/general/test_domWindowUtils.html @@ -0,0 +1,183 @@ + + + + Test nsIDOMWindowUtils + + + + + + + + +
      +
      + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_domWindowUtils_scrollXY.html b/dom/tests/mochitest/general/test_domWindowUtils_scrollXY.html new file mode 100644 index 0000000000..6bf29f46e4 --- /dev/null +++ b/dom/tests/mochitest/general/test_domWindowUtils_scrollXY.html @@ -0,0 +1,90 @@ + + + + nsIDOMWindowUtils::elementFromPoint test + + + + + + + + + + + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_domWindowUtils_scrollbarSize.html b/dom/tests/mochitest/general/test_domWindowUtils_scrollbarSize.html new file mode 100644 index 0000000000..2822a5d93c --- /dev/null +++ b/dom/tests/mochitest/general/test_domWindowUtils_scrollbarSize.html @@ -0,0 +1,65 @@ + + + + nsIDOMWindowUtils::getScrollbarSize test + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_donottrack.html b/dom/tests/mochitest/general/test_donottrack.html new file mode 100644 index 0000000000..84bd383a1d --- /dev/null +++ b/dom/tests/mochitest/general/test_donottrack.html @@ -0,0 +1,72 @@ + + + + + Test for Bug 629535 + + + + +Mozilla Bug 629535 + + + + + + diff --git a/dom/tests/mochitest/general/test_focus_legend_noparent.html b/dom/tests/mochitest/general/test_focus_legend_noparent.html new file mode 100644 index 0000000000..99bc9d9f22 --- /dev/null +++ b/dom/tests/mochitest/general/test_focus_legend_noparent.html @@ -0,0 +1,36 @@ + + + + + + + +

      + + + + diff --git a/dom/tests/mochitest/general/test_focus_scrollchildframe.html b/dom/tests/mochitest/general/test_focus_scrollchildframe.html new file mode 100644 index 0000000000..4b12462c45 --- /dev/null +++ b/dom/tests/mochitest/general/test_focus_scrollchildframe.html @@ -0,0 +1,24 @@ + + + + Tests for for-of loops + + + + + +

      + + +
      + + diff --git a/dom/tests/mochitest/general/test_focusrings.xhtml b/dom/tests/mochitest/general/test_focusrings.xhtml new file mode 100644 index 0000000000..7f519a3da6 --- /dev/null +++ b/dom/tests/mochitest/general/test_focusrings.xhtml @@ -0,0 +1,220 @@ + + + + + + + + + + +* { outline: none; } +#b3:focus-visible { outline: auto } +#l1:focus-visible, #l3:focus-visible, #b1:focus-visible { outline: 2px solid red; } +#l2:focus, #b2:focus { outline: 2px solid red; } + + + + + + + +
      + + + diff --git a/dom/tests/mochitest/general/test_performance_nav_timing_before_onload.html b/dom/tests/mochitest/general/test_performance_nav_timing_before_onload.html new file mode 100644 index 0000000000..af85a6edab --- /dev/null +++ b/dom/tests/mochitest/general/test_performance_nav_timing_before_onload.html @@ -0,0 +1,30 @@ + + + + + + + Test for Bug 1405961 - Using PerformanceNavigationTiming before onload + + + + +
      + + + diff --git a/dom/tests/mochitest/general/test_performance_now.html b/dom/tests/mochitest/general/test_performance_now.html new file mode 100644 index 0000000000..23f5f45969 --- /dev/null +++ b/dom/tests/mochitest/general/test_performance_now.html @@ -0,0 +1,60 @@ + + + + Test for High Resolution Timer + + + + + + + + diff --git a/dom/tests/mochitest/general/test_performance_timeline.html b/dom/tests/mochitest/general/test_performance_timeline.html new file mode 100644 index 0000000000..e0ec357ab7 --- /dev/null +++ b/dom/tests/mochitest/general/test_performance_timeline.html @@ -0,0 +1,35 @@ + + + + + + + + + + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_picture_apng.html b/dom/tests/mochitest/general/test_picture_apng.html new file mode 100644 index 0000000000..8fc37c04c2 --- /dev/null +++ b/dom/tests/mochitest/general/test_picture_apng.html @@ -0,0 +1,77 @@ + + + + + + Image srcset mutations + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_picture_mutations.html b/dom/tests/mochitest/general/test_picture_mutations.html new file mode 100644 index 0000000000..b311ffc8a2 --- /dev/null +++ b/dom/tests/mochitest/general/test_picture_mutations.html @@ -0,0 +1,311 @@ + + + + + Image srcset mutations + + + + + + + diff --git a/dom/tests/mochitest/general/test_pointerPreserves3D.html b/dom/tests/mochitest/general/test_pointerPreserves3D.html new file mode 100644 index 0000000000..d99403002d --- /dev/null +++ b/dom/tests/mochitest/general/test_pointerPreserves3D.html @@ -0,0 +1,25 @@ + + + + Test for pointer events with preserve-3d + + + + +
      +
      +
      +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_pointerPreserves3DClip.html b/dom/tests/mochitest/general/test_pointerPreserves3DClip.html new file mode 100644 index 0000000000..82f64f5969 --- /dev/null +++ b/dom/tests/mochitest/general/test_pointerPreserves3DClip.html @@ -0,0 +1,55 @@ + + + + Test for pointer events with preserve-3d and clips + + + + + +
      +
      +
      +
      +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_pointerPreserves3DPerspective.html b/dom/tests/mochitest/general/test_pointerPreserves3DPerspective.html new file mode 100644 index 0000000000..4feaf03551 --- /dev/null +++ b/dom/tests/mochitest/general/test_pointerPreserves3DPerspective.html @@ -0,0 +1,29 @@ + + + + Test for pointer events with preserve-3d + + + + +
      +
      +
      +
      +
      +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_resizeby.html b/dom/tests/mochitest/general/test_resizeby.html new file mode 100644 index 0000000000..4826e538a0 --- /dev/null +++ b/dom/tests/mochitest/general/test_resizeby.html @@ -0,0 +1,64 @@ + + + + Test for Bug 1369627 + + + + + + + +Mozilla Bug 1369627 +

      +
      + +
      +
      +
      + + + + diff --git a/dom/tests/mochitest/general/test_resource_timing.html b/dom/tests/mochitest/general/test_resource_timing.html new file mode 100644 index 0000000000..4b45d69941 --- /dev/null +++ b/dom/tests/mochitest/general/test_resource_timing.html @@ -0,0 +1,40 @@ + + + + + + + + + + + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_resource_timing_cross_origin.html b/dom/tests/mochitest/general/test_resource_timing_cross_origin.html new file mode 100644 index 0000000000..bef092abde --- /dev/null +++ b/dom/tests/mochitest/general/test_resource_timing_cross_origin.html @@ -0,0 +1,47 @@ + + + + + + + + + + + +
      +
      +
      + + + Bug #936814 - Implement the "timing allow check algorithm" for cross-origin Resource Timing + + + + diff --git a/dom/tests/mochitest/general/test_resource_timing_cross_origin_navigate.html b/dom/tests/mochitest/general/test_resource_timing_cross_origin_navigate.html new file mode 100644 index 0000000000..133e9a0c8a --- /dev/null +++ b/dom/tests/mochitest/general/test_resource_timing_cross_origin_navigate.html @@ -0,0 +1,73 @@ + + + + + + + + + + + +
      +
      +
      + + + Bug #1789128 - Cross-Origin URL Steal is possible using performance.getEntries() + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_resource_timing_frameset.html b/dom/tests/mochitest/general/test_resource_timing_frameset.html new file mode 100644 index 0000000000..245bd382ee --- /dev/null +++ b/dom/tests/mochitest/general/test_resource_timing_frameset.html @@ -0,0 +1,29 @@ + + + + + + + browser_frametree_sample_frameset.html + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_resource_timing_nocors.html b/dom/tests/mochitest/general/test_resource_timing_nocors.html new file mode 100644 index 0000000000..388b8f9837 --- /dev/null +++ b/dom/tests/mochitest/general/test_resource_timing_nocors.html @@ -0,0 +1,37 @@ + + + + + + + + + + + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/general/test_selectevents.html b/dom/tests/mochitest/general/test_selectevents.html new file mode 100644 index 0000000000..bcc3526492 --- /dev/null +++ b/dom/tests/mochitest/general/test_selectevents.html @@ -0,0 +1,31 @@ + + + + Testing Selection Events + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_showModalDialog_removed.html b/dom/tests/mochitest/general/test_showModalDialog_removed.html new file mode 100644 index 0000000000..a5f85ffc8e --- /dev/null +++ b/dom/tests/mochitest/general/test_showModalDialog_removed.html @@ -0,0 +1,31 @@ + + + + + Test for showModalDialog unavailability in e10s + + + + + +Mozilla Bug 1077002 +

      +
      + + +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/test_spacetopagedown.html b/dom/tests/mochitest/general/test_spacetopagedown.html new file mode 100644 index 0000000000..39b02bc0fa --- /dev/null +++ b/dom/tests/mochitest/general/test_spacetopagedown.html @@ -0,0 +1,75 @@ + + + + + + + + + + +Checkbox + +

      Text

      + +

      + +
      +
      + + diff --git a/dom/tests/mochitest/general/test_storagePermissionsAccept.html b/dom/tests/mochitest/general/test_storagePermissionsAccept.html new file mode 100644 index 0000000000..ddb33de9c3 --- /dev/null +++ b/dom/tests/mochitest/general/test_storagePermissionsAccept.html @@ -0,0 +1,44 @@ + + + Storage Permission Restrictions + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_storagePermissionsLimitForeign.html b/dom/tests/mochitest/general/test_storagePermissionsLimitForeign.html new file mode 100644 index 0000000000..e2b4b93798 --- /dev/null +++ b/dom/tests/mochitest/general/test_storagePermissionsLimitForeign.html @@ -0,0 +1,46 @@ + + + Storage Permission Restrictions + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_storagePermissionsReject.html b/dom/tests/mochitest/general/test_storagePermissionsReject.html new file mode 100644 index 0000000000..70dbe856d9 --- /dev/null +++ b/dom/tests/mochitest/general/test_storagePermissionsReject.html @@ -0,0 +1,44 @@ + + + Storage Permission Restrictions + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_storagePermissionsRejectForeign.html b/dom/tests/mochitest/general/test_storagePermissionsRejectForeign.html new file mode 100644 index 0000000000..f188d46cb2 --- /dev/null +++ b/dom/tests/mochitest/general/test_storagePermissionsRejectForeign.html @@ -0,0 +1,44 @@ + + + Storage Permission Restrictions + + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_stylesheetPI.html b/dom/tests/mochitest/general/test_stylesheetPI.html new file mode 100644 index 0000000000..2b242597d2 --- /dev/null +++ b/dom/tests/mochitest/general/test_stylesheetPI.html @@ -0,0 +1,37 @@ + + + + + + Test for Bug 836809 + + + + + +Mozilla Bug 836809 +

      + +
      +
      + + diff --git a/dom/tests/mochitest/general/test_toggling_performance_navigation_timing.html b/dom/tests/mochitest/general/test_toggling_performance_navigation_timing.html new file mode 100644 index 0000000000..6e6d94dca7 --- /dev/null +++ b/dom/tests/mochitest/general/test_toggling_performance_navigation_timing.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 1511941 - Don't expose PerformanceNavigationTiming when it is disabled + + + + +
      + + + diff --git a/dom/tests/mochitest/general/test_vibrator.html b/dom/tests/mochitest/general/test_vibrator.html new file mode 100644 index 0000000000..e7085fc987 --- /dev/null +++ b/dom/tests/mochitest/general/test_vibrator.html @@ -0,0 +1,148 @@ + + + + Test for Vibrator + + + + + + + + + + diff --git a/dom/tests/mochitest/general/test_windowProperties.html b/dom/tests/mochitest/general/test_windowProperties.html new file mode 100644 index 0000000000..3fe4c9ee9e --- /dev/null +++ b/dom/tests/mochitest/general/test_windowProperties.html @@ -0,0 +1,28 @@ + + + + Test that all window properties are accessible to nonprivileged code + + + + + + + + +

      + + + diff --git a/dom/tests/mochitest/general/test_windowedhistoryframes.html b/dom/tests/mochitest/general/test_windowedhistoryframes.html new file mode 100644 index 0000000000..c2c148b838 --- /dev/null +++ b/dom/tests/mochitest/general/test_windowedhistoryframes.html @@ -0,0 +1,32 @@ + + + + + Test for Bug 602256 + + + + +Mozilla Bug 602256 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/url1_historyframe.html b/dom/tests/mochitest/general/url1_historyframe.html new file mode 100644 index 0000000000..b86af4b3fa --- /dev/null +++ b/dom/tests/mochitest/general/url1_historyframe.html @@ -0,0 +1 @@ +

      Test1

      diff --git a/dom/tests/mochitest/general/url2_historyframe.html b/dom/tests/mochitest/general/url2_historyframe.html new file mode 100644 index 0000000000..24374d1a5b --- /dev/null +++ b/dom/tests/mochitest/general/url2_historyframe.html @@ -0,0 +1 @@ +

      Test2

      diff --git a/dom/tests/mochitest/general/window_clipboard_events.html b/dom/tests/mochitest/general/window_clipboard_events.html new file mode 100644 index 0000000000..ee88cc5fa0 --- /dev/null +++ b/dom/tests/mochitest/general/window_clipboard_events.html @@ -0,0 +1,1239 @@ + + + + + Test for Clipboard Events + + + + + +

      +
      CONTENT TEXT
      + + + +
      Spot
      + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/general/window_storagePermissions.html b/dom/tests/mochitest/general/window_storagePermissions.html new file mode 100644 index 0000000000..3bab23c13b --- /dev/null +++ b/dom/tests/mochitest/general/window_storagePermissions.html @@ -0,0 +1,38 @@ + + + Storage Permission Restrictions + + + + + + + + diff --git a/dom/tests/mochitest/general/workerStorageAllowed.js b/dom/tests/mochitest/general/workerStorageAllowed.js new file mode 100644 index 0000000000..89e0a4b9ce --- /dev/null +++ b/dom/tests/mochitest/general/workerStorageAllowed.js @@ -0,0 +1,78 @@ +// Unfortunately, workers can't share the code from storagePermissionsUtils. +// These are basic mechanisms for communicating to the test runner. + +function ok(condition, text) { + if (!condition) { + self.postMessage("FAILURE: " + text); + } else { + self.postMessage(text); + } +} + +function finishTest() { + self.postMessage("done"); + self.close(); +} + +// Workers don't have access to localstorage or sessionstorage +ok(typeof self.localStorage == "undefined", "localStorage should be undefined"); +ok( + typeof self.sessionStorage == "undefined", + "sessionStorage should be undefined" +); + +// Make sure that we can access indexedDB +try { + indexedDB; + ok(true, "WORKER getting indexedDB didn't throw"); +} catch (e) { + ok(false, "WORKER getting indexedDB should not throw"); +} + +// Make sure that we can access caches +try { + var promise = caches.keys(); + ok(true, "WORKER getting caches didn't throw"); + + promise.then( + function () { + ok(location.protocol == "https:", "WORKER The promise was not rejected"); + workerTest(); + }, + function () { + ok( + location.protocol !== "https:", + "WORKER The promise should not have been rejected" + ); + workerTest(); + } + ); +} catch (e) { + ok( + location.protocol !== "https:", + "WORKER getting caches should not have thrown" + ); + workerTest(); +} + +// Try to spawn an inner worker, and make sure that it can also access storage +function workerTest() { + if (location.hash == "#inner") { + // Don't recurse infinitely, if we are the inner worker, don't spawn another + finishTest(); + return; + } + // Create the inner worker, and listen for test messages from it + var worker = new Worker("workerStorageAllowed.js#inner"); + worker.addEventListener("message", function (e) { + if (e.data == "done") { + finishTest(); + return; + } + + ok( + !e.data.match(/^FAILURE/), + e.data + " (WORKER = workerStorageAllowed.js#inner)" + ); + }); +} diff --git a/dom/tests/mochitest/general/workerStoragePrevented.js b/dom/tests/mochitest/general/workerStoragePrevented.js new file mode 100644 index 0000000000..467cc09113 --- /dev/null +++ b/dom/tests/mochitest/general/workerStoragePrevented.js @@ -0,0 +1,75 @@ +// Unfortunately, workers can't share the code from storagePermissionsUtils. +// These are basic mechanisms for communicating to the test runner. + +function ok(condition, text) { + if (!condition) { + self.postMessage("FAILURE: " + text); + } else { + self.postMessage(text); + } +} + +function finishTest() { + self.postMessage("done"); + self.close(); +} + +// Workers don't have access to localstorage or sessionstorage +ok(typeof self.localStorage == "undefined", "localStorage should be undefined"); +ok( + typeof self.sessionStorage == "undefined", + "sessionStorage should be undefined" +); + +// Make sure that we can't access indexedDB +try { + indexedDB; + ok(false, "WORKER getting indexedDB should have thrown"); +} catch (e) { + ok(true, "WORKER getting indexedDB threw"); +} + +// Make sure that we can't access caches +try { + var promise = caches.keys(); + ok(true, "WORKER getting caches didn't throw"); + + promise.then( + function () { + ok(false, "WORKER The promise should have rejected"); + workerTest(); + }, + function () { + ok(true, "WORKER The promise was rejected"); + workerTest(); + } + ); +} catch (e) { + ok( + location.protocol !== "https:", + "WORKER getting caches should not have thrown" + ); + workerTest(); +} + +// Try to spawn an inner worker, and make sure that it also can't access storage +function workerTest() { + if (location.hash == "#inner") { + // Don't recurse infinitely, if we are the inner worker, don't spawn another + finishTest(); + return; + } + // Create the inner worker, and listen for test messages from it + var worker = new Worker("workerStoragePrevented.js#inner"); + worker.addEventListener("message", function (e) { + if (e.data == "done") { + finishTest(); + return; + } + + ok( + !e.data.match(/^FAILURE/), + e.data + " (WORKER = workerStoragePrevented.js#inner)" + ); + }); +} diff --git a/dom/tests/mochitest/geolocation/chrome.toml b/dom/tests/mochitest/geolocation/chrome.toml new file mode 100644 index 0000000000..e392ab203e --- /dev/null +++ b/dom/tests/mochitest/geolocation/chrome.toml @@ -0,0 +1,7 @@ +[DEFAULT] +support-files = [ + "geolocation_common.js", + "network_geolocation.sjs", +] + +["test_handlerSpinsEventLoop.html"] diff --git a/dom/tests/mochitest/geolocation/crossorigin_iframe.html b/dom/tests/mochitest/geolocation/crossorigin_iframe.html new file mode 100644 index 0000000000..f370003ad8 --- /dev/null +++ b/dom/tests/mochitest/geolocation/crossorigin_iframe.html @@ -0,0 +1,33 @@ + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/file_featurePolicy.html b/dom/tests/mochitest/geolocation/file_featurePolicy.html new file mode 100644 index 0000000000..3028321721 --- /dev/null +++ b/dom/tests/mochitest/geolocation/file_featurePolicy.html @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/dom/tests/mochitest/geolocation/geolocation.html b/dom/tests/mochitest/geolocation/geolocation.html new file mode 100644 index 0000000000..e62f13e7d3 --- /dev/null +++ b/dom/tests/mochitest/geolocation/geolocation.html @@ -0,0 +1,13 @@ + + + Simple access of geolocation + + + + + diff --git a/dom/tests/mochitest/geolocation/geolocation_common.js b/dom/tests/mochitest/geolocation/geolocation_common.js new file mode 100644 index 0000000000..2868215e76 --- /dev/null +++ b/dom/tests/mochitest/geolocation/geolocation_common.js @@ -0,0 +1,154 @@ +"use strict"; + +var harness = + SimpleTest.harnessParameters.testRoot == "chrome" ? "chrome" : "tests"; +var BASE_URL = + "http://mochi.test:8888/" + + harness + + "/dom/tests/mochitest/geolocation/network_geolocation.sjs"; + +function set_geo_wifi_uri(uri, callback) { + // Disable NetworkGeolocationProvider.js request cache because the cache + // does not remember from which location service it came from. We expect + // different results when we change the provider URL (geo.provider.network.url). + set_network_request_cache_enabled(false, () => { + SpecialPowers.pushPrefEnv( + { set: [["geo.provider.network.url", uri]] }, + callback + ); + }); +} + +function sleep(delay) { + var start = Date.now(); + while (Date.now() < start + delay) {} +} + +function force_prompt(allow, callback) { + SpecialPowers.pushPrefEnv( + { + set: [ + ["geo.prompt.testing", true], + ["geo.prompt.testing.allow", allow], + ], + }, + callback + ); +} + +function start_sending_garbage(callback) { + set_geo_wifi_uri(BASE_URL + "?action=respond-garbage", () => { + // we need to be sure that all location data has been purged/set. + sleep(1000); + callback.call(); + }); +} + +function stop_sending_garbage(callback) { + set_geo_wifi_uri(BASE_URL + "", () => { + // we need to be sure that all location data has been purged/set. + sleep(1000); + callback.call(); + }); +} + +function stop_geolocationProvider(callback) { + set_geo_wifi_uri(BASE_URL + "?action=stop-responding", () => { + // we need to be sure that all location data has been purged/set. + sleep(1000); + callback.call(); + }); +} + +function set_network_request_cache_enabled(enabled, callback) { + SpecialPowers.pushPrefEnv( + { set: [["geo.provider.network.debug.requestCache.enabled", enabled]] }, + callback + ); +} + +function worse_geolocationProvider(callback) { + set_geo_wifi_uri(BASE_URL + "?action=worse-accuracy", callback); +} + +function resume_geolocationProvider(callback) { + set_geo_wifi_uri(BASE_URL + "", callback); +} + +function delay_geolocationProvider(delay, callback) { + set_geo_wifi_uri(BASE_URL + "?delay=" + delay, callback); +} + +function send404_geolocationProvider(callback) { + set_geo_wifi_uri(BASE_URL + "?action=send404", callback); +} + +function check_geolocation(location) { + ok(location, "Check to see if this location is non-null"); + + const timestamp = location.timestamp; + dump(`timestamp=${timestamp}\n`); + ok(IsNumber(timestamp), "check timestamp type"); + ok(timestamp > 0, "check timestamp range"); + + // eventually, coords may be optional (eg, when civic addresses are supported) + ok("coords" in location, "Check to see if this location has a coords"); + + const { + latitude, + longitude, + accuracy, + altitude, + altitudeAccuracy, + speed, + heading, + } = location.coords; + + dump(`latitude=${latitude}\n`); + dump(`longitude=${longitude}\n`); + dump(`accuracy=${accuracy}\n`); + dump(`altitude=${altitude}\n`); + dump(`altitudeAccuracy=${altitudeAccuracy}\n`); + dump(`speed=${speed}\n`); + dump(`heading=${heading}\n`); + + ok(IsNumber(latitude), "check latitude type"); + ok(IsNumber(longitude), "check longitude type"); + + ok( + Math.abs(latitude - 37.41857) < 0.001, + "latitude matches hard-coded value" + ); + ok( + Math.abs(longitude + 122.08769) < 0.001, + "longitude matches hard-coded value" + ); + + ok(IsNonNegativeNumber(accuracy), "check accuracy type and range"); + ok(IsNumber(altitude) || altitude === null, "check accuracy type"); + + ok( + (IsNonNegativeNumber(altitudeAccuracy) && IsNumber(altitude)) || + altitudeAccuracy === null, + "check altitudeAccuracy type and range" + ); + + ok( + IsNonNegativeNumber(speed) || speed === null, + "check speed type and range" + ); + + ok( + (IsNonNegativeNumber(heading) && heading < 360 && speed > 0) || + heading === null, + "check heading type and range" + ); +} + +function IsNumber(x) { + return typeof x === "number" && !Number.isNaN(x); +} + +function IsNonNegativeNumber(x) { + return IsNumber(x) && x >= 0; +} diff --git a/dom/tests/mochitest/geolocation/mochitest.toml b/dom/tests/mochitest/geolocation/mochitest.toml new file mode 100644 index 0000000000..28af26ceb3 --- /dev/null +++ b/dom/tests/mochitest/geolocation/mochitest.toml @@ -0,0 +1,100 @@ +[DEFAULT] +# TODO: Refactor skip-if via Bug 1857079 +tags = "geolocation condprof" +scheme = "https" +support-files = [ + "geolocation.html", + "geolocation_common.js", + "network_geolocation.sjs", + "windowTest.html", + "popup.html", +] +prefs = [ + "dom.security.featurePolicy.header.enabled=true", + "dom.security.featurePolicy.webidl.enabled=true", +] + +["test_allowCurrent.html"] + +["test_allowWatch.html"] + +["test_cachedPosition.html"] + +["test_cancelCurrent.html"] + +["test_cancelWatch.html"] + +["test_clearWatch.html"] + +["test_clearWatchBeforeAllowing.html"] + +["test_clearWatch_invalid.html"] + +["test_crossorigin_iframe.html"] +support-files = ["crossorigin_iframe.html"] + +["test_enableHighAccuracy.html"] + +["test_errorcheck.html"] + +["test_featurePolicy.html"] +support-files = ["file_featurePolicy.html"] + +["test_geoGetCurrentPositionBlockedInInsecureContext.html"] +scheme = "http" # This test REQUIRES to run on HTTP (_NOT_ HTTPS). +skip-if = [ + "http3", + "http2", +] + +["test_geoWatchPositionBlockedInInsecureContext.html"] +scheme = "http" # This test REQUIRES to run on HTTP (_NOT_ HTTPS). +skip-if = [ + "http3", + "http2", +] + +["test_geolocation_is_undefined_when_pref_is_off.html"] +support-files = ["test_geolocation_is_undefined_when_pref_is_off_iframe.html"] + +["test_hidden.html"] +skip-if = [ + "os == 'android'", # test uses popup windows + "condprof", +] #: timed out +support-files = ["popup.html"] + +["test_manyCurrentConcurrent.html"] +skip-if = ["condprof"] #: timed out + +["test_manyCurrentSerial.html"] +skip-if = [ + "condprof", #: timed out +] + +["test_manyWatchConcurrent.html"] +skip-if = ["condprof"] #: timed out + +["test_manyWatchSerial.html"] + +["test_manyWindows.html"] + +["test_native_provider.html"] +skip-if = [ + "os != 'android'", +] + +["test_not_fully_active.html"] +support-files = ["popup.html"] + +["test_optional_api_params.html"] + +["test_shutdown.html"] + +["test_timeoutCurrent.html"] + +["test_timerRestartWatch.html"] + +["test_windowClose.html"] + +["test_worseAccuracyDoesNotBlockCallback.html"] diff --git a/dom/tests/mochitest/geolocation/network_geolocation.sjs b/dom/tests/mochitest/geolocation/network_geolocation.sjs new file mode 100644 index 0000000000..4074e57c1c --- /dev/null +++ b/dom/tests/mochitest/geolocation/network_geolocation.sjs @@ -0,0 +1,79 @@ +function parseQueryString(str) { + if (str == "") { + return {}; + } + + var paramArray = str.split("&"); + var regex = /^([^=]+)=(.*)$/; + var params = {}; + for (var i = 0, sz = paramArray.length; i < sz; i++) { + var match = regex.exec(paramArray[i]); + if (!match) { + throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } + params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); + } + + return params; +} + +function getPosition(action) { + var response = { + status: "OK", + location: { + lat: 37.41857, + lng: -122.08769, + }, + accuracy: action == "worse-accuracy" ? 100 : 42, + }; + + return JSON.stringify(response); +} + +var timer; +function handleRequest(request, response) { + var params = parseQueryString(request.queryString); + + if (params.action == "stop-responding") { + response.processAsync(); + return; + } + + var position = getPosition(params.action); + + if (params.action == "respond-garbage") { + // better way? + var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"; + position = ""; + var len = Math.floor(Math.random() * 5000); + + for (var i = 0; i < len; i++) { + var c = Math.floor(Math.random() * chars.length); + position += chars.substring(c, c + 1); + } + } + + var response; + response.processAsync(); + response.setStatusLine("1.0", 200, "OK"); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "aplication/x-javascript", false); + + var delay = 0; + if ("delay" in params) { + delay = params.delay; + } + if (params.action === "send404") { + response.setStatusLine("1.0", 404, "Not Found"); + position = ""; + } + timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + timer.initWithCallback( + function () { + response.write(position); + response.finish(); + }, + delay, + timer.TYPE_ONE_SHOT + ); +} diff --git a/dom/tests/mochitest/geolocation/popup.html b/dom/tests/mochitest/geolocation/popup.html new file mode 100644 index 0000000000..b286f16ff3 --- /dev/null +++ b/dom/tests/mochitest/geolocation/popup.html @@ -0,0 +1,19 @@ + + + Simple access of geolocation + + + + + + + +

      Just a support file

      + + diff --git a/dom/tests/mochitest/geolocation/test_allowCurrent.html b/dom/tests/mochitest/geolocation/test_allowCurrent.html new file mode 100644 index 0000000000..a0ebefdc60 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_allowCurrent.html @@ -0,0 +1,41 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_allowWatch.html b/dom/tests/mochitest/geolocation/test_allowWatch.html new file mode 100644 index 0000000000..782d5ee071 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_allowWatch.html @@ -0,0 +1,44 @@ + + + + + Test for watchPosition + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_cachedPosition.html b/dom/tests/mochitest/geolocation/test_cachedPosition.html new file mode 100644 index 0000000000..1422c3c3bb --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_cachedPosition.html @@ -0,0 +1,83 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 850442 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_cancelCurrent.html b/dom/tests/mochitest/geolocation/test_cancelCurrent.html new file mode 100644 index 0000000000..a5357ac938 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_cancelCurrent.html @@ -0,0 +1,45 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_cancelWatch.html b/dom/tests/mochitest/geolocation/test_cancelWatch.html new file mode 100644 index 0000000000..18ca21ba18 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_cancelWatch.html @@ -0,0 +1,49 @@ + + + + + Test for watchPosition + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + + + + diff --git a/dom/tests/mochitest/geolocation/test_clearWatch.html b/dom/tests/mochitest/geolocation/test_clearWatch.html new file mode 100644 index 0000000000..4c1776331e --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_clearWatch.html @@ -0,0 +1,76 @@ + + + + + Test for watchPosition and clearWatch + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_clearWatchBeforeAllowing.html b/dom/tests/mochitest/geolocation/test_clearWatchBeforeAllowing.html new file mode 100644 index 0000000000..3ac82232b7 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_clearWatchBeforeAllowing.html @@ -0,0 +1,62 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 886026 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_clearWatch_invalid.html b/dom/tests/mochitest/geolocation/test_clearWatch_invalid.html new file mode 100644 index 0000000000..fe2007481e --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_clearWatch_invalid.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 463039 + + + + + +Mozilla Bug 463039 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_crossorigin_iframe.html b/dom/tests/mochitest/geolocation/test_crossorigin_iframe.html new file mode 100644 index 0000000000..545ba518ae --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_crossorigin_iframe.html @@ -0,0 +1,61 @@ + + + + Test for geolocation is disabled by default, and set + allow="geolocation" in iframe could enable geolcation + + + + + + + diff --git a/dom/tests/mochitest/geolocation/test_enableHighAccuracy.html b/dom/tests/mochitest/geolocation/test_enableHighAccuracy.html new file mode 100644 index 0000000000..f139c15d01 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_enableHighAccuracy.html @@ -0,0 +1,73 @@ + + + + + Tests for watchPosition and getCurrentPosition with setHighAccuracy + + + + +Mozilla Bug 1765835 + + + diff --git a/dom/tests/mochitest/geolocation/test_errorcheck.html b/dom/tests/mochitest/geolocation/test_errorcheck.html new file mode 100644 index 0000000000..7900aed1e2 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_errorcheck.html @@ -0,0 +1,52 @@ + + + + + Test for ErrorChecking + + + + + + +Mozilla Bug 684722 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_featurePolicy.html b/dom/tests/mochitest/geolocation/test_featurePolicy.html new file mode 100644 index 0000000000..f603c7f8f2 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_featurePolicy.html @@ -0,0 +1,51 @@ + + + + Test for geolocation + featurePolicy + + + + + + + diff --git a/dom/tests/mochitest/geolocation/test_garbageWatch.html b/dom/tests/mochitest/geolocation/test_garbageWatch.html new file mode 100644 index 0000000000..65e2fc8ac6 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_garbageWatch.html @@ -0,0 +1,56 @@ + + + + + Test for garbage data returned from location provider + + + + + + +Mozilla Bug 482260 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_geoGetCurrentPositionBlockedInInsecureContext.html b/dom/tests/mochitest/geolocation/test_geoGetCurrentPositionBlockedInInsecureContext.html new file mode 100644 index 0000000000..55435f6f16 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_geoGetCurrentPositionBlockedInInsecureContext.html @@ -0,0 +1,47 @@ + + + + + Test for Bug 1269531 + + + + + + Mozilla Bug 1269531 +

      + +
      +  
      +  
      + + + diff --git a/dom/tests/mochitest/geolocation/test_geoWatchPositionBlockedInInsecureContext.html b/dom/tests/mochitest/geolocation/test_geoWatchPositionBlockedInInsecureContext.html new file mode 100644 index 0000000000..60bad9f644 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_geoWatchPositionBlockedInInsecureContext.html @@ -0,0 +1,51 @@ + + + + + Test for Bug 1269531 + + + + + + Mozilla Bug 1269531 +

      + +
      +  
      +  
      + + + diff --git a/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off.html b/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off.html new file mode 100644 index 0000000000..cfdc537a1b --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off.html @@ -0,0 +1,36 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 884921 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off_iframe.html b/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off_iframe.html new file mode 100644 index 0000000000..1be69a2212 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_geolocation_is_undefined_when_pref_is_off_iframe.html @@ -0,0 +1,28 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 884921 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_handlerSpinsEventLoop.html b/dom/tests/mochitest/geolocation/test_handlerSpinsEventLoop.html new file mode 100644 index 0000000000..99ae586c4e --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_handlerSpinsEventLoop.html @@ -0,0 +1,70 @@ + + + + + Test for spinning the event loop inside position handlers + + + + + + +Mozilla Bug 911595 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_hidden.html b/dom/tests/mochitest/geolocation/test_hidden.html new file mode 100644 index 0000000000..25f7f80d43 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_hidden.html @@ -0,0 +1,110 @@ + + + + +Test that geolocation position can't be gotten when document is hidden + + + + +Mozilla Bug 1653549 +

      + +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_manyCurrentConcurrent.html b/dom/tests/mochitest/geolocation/test_manyCurrentConcurrent.html new file mode 100644 index 0000000000..b70bf09633 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_manyCurrentConcurrent.html @@ -0,0 +1,60 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 482260 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_manyCurrentSerial.html b/dom/tests/mochitest/geolocation/test_manyCurrentSerial.html new file mode 100644 index 0000000000..9afb62e52e --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_manyCurrentSerial.html @@ -0,0 +1,47 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 482260 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_manyWatchConcurrent.html b/dom/tests/mochitest/geolocation/test_manyWatchConcurrent.html new file mode 100644 index 0000000000..8d22e442cb --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_manyWatchConcurrent.html @@ -0,0 +1,60 @@ + + + + + Test for watchPosition + + + + + + +Mozilla Bug 482260 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_manyWatchSerial.html b/dom/tests/mochitest/geolocation/test_manyWatchSerial.html new file mode 100644 index 0000000000..bb27651d56 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_manyWatchSerial.html @@ -0,0 +1,56 @@ + + + + + Test for watchPosition + + + + + + +Mozilla Bug 482260 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_manyWindows.html b/dom/tests/mochitest/geolocation/test_manyWindows.html new file mode 100644 index 0000000000..5e6e74c61f --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_manyWindows.html @@ -0,0 +1,67 @@ + + + + + Test for many windows + + + + + + +Crash in Multiple Windows +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_native_provider.html b/dom/tests/mochitest/geolocation/test_native_provider.html new file mode 100644 index 0000000000..e0c26c611a --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_native_provider.html @@ -0,0 +1,70 @@ + + + + + Test for getCurrentPosition with native location provider + + + + +Mozilla Bug 1596164 +Mozilla Bug 1765835 + + + diff --git a/dom/tests/mochitest/geolocation/test_not_fully_active.html b/dom/tests/mochitest/geolocation/test_not_fully_active.html new file mode 100644 index 0000000000..6fc7689c8c --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_not_fully_active.html @@ -0,0 +1,93 @@ + + + + + Test for when geolocation is used on non fully active documents + + + + + + + + + diff --git a/dom/tests/mochitest/geolocation/test_optional_api_params.html b/dom/tests/mochitest/geolocation/test_optional_api_params.html new file mode 100644 index 0000000000..4aeb488a64 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_optional_api_params.html @@ -0,0 +1,126 @@ + + + + + Test for Bug 452566 + + + + + +Mozilla Bug 452566 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_shutdown.html b/dom/tests/mochitest/geolocation/test_shutdown.html new file mode 100644 index 0000000000..4b9133ef9d --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_shutdown.html @@ -0,0 +1,63 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 716127 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_timeoutCurrent.html b/dom/tests/mochitest/geolocation/test_timeoutCurrent.html new file mode 100644 index 0000000000..283f26b1fe --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_timeoutCurrent.html @@ -0,0 +1,56 @@ + + + + + Test for timeout option + + + + + + +Mozilla Bug 858827 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_timeoutWatch.html b/dom/tests/mochitest/geolocation/test_timeoutWatch.html new file mode 100644 index 0000000000..324886a4e7 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_timeoutWatch.html @@ -0,0 +1,65 @@ + + + + + Test for timeout option + + + + + + +Mozilla Bug 478911 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_timerRestartWatch.html b/dom/tests/mochitest/geolocation/test_timerRestartWatch.html new file mode 100644 index 0000000000..fe190951b7 --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_timerRestartWatch.html @@ -0,0 +1,75 @@ + + + + + Test for watchPosition + + + + + + +Mozilla Bug 526326 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/test_windowClose.html b/dom/tests/mochitest/geolocation/test_windowClose.html new file mode 100644 index 0000000000..4ff858e8bb --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_windowClose.html @@ -0,0 +1,36 @@ + + + + + Test for geolocation in chrome + + + + + + +Mozilla Bug 493615 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/geolocation/test_worseAccuracyDoesNotBlockCallback.html b/dom/tests/mochitest/geolocation/test_worseAccuracyDoesNotBlockCallback.html new file mode 100644 index 0000000000..76d60ac97b --- /dev/null +++ b/dom/tests/mochitest/geolocation/test_worseAccuracyDoesNotBlockCallback.html @@ -0,0 +1,51 @@ + + + + + Test for getCurrentPosition + + + + + + +Mozilla Bug 494924 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/geolocation/windowTest.html b/dom/tests/mochitest/geolocation/windowTest.html new file mode 100644 index 0000000000..0366ffbe1e --- /dev/null +++ b/dom/tests/mochitest/geolocation/windowTest.html @@ -0,0 +1,44 @@ + + + + + Test for closing a window while it is doing a geolocation request + + + + + + +Mozilla Bug 493615 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/integer-gemm/mochitest.toml b/dom/tests/mochitest/integer-gemm/mochitest.toml new file mode 100644 index 0000000000..147e2bd5ea --- /dev/null +++ b/dom/tests/mochitest/integer-gemm/mochitest.toml @@ -0,0 +1,3 @@ +[DEFAULT] + +["test_unavailable_for_webpage.html"] diff --git a/dom/tests/mochitest/integer-gemm/test_unavailable_for_webpage.html b/dom/tests/mochitest/integer-gemm/test_unavailable_for_webpage.html new file mode 100644 index 0000000000..0a2400905c --- /dev/null +++ b/dom/tests/mochitest/integer-gemm/test_unavailable_for_webpage.html @@ -0,0 +1,29 @@ + + + + + + Test for Mozilla integer gemm (1746631) -- Mozilla integer gemm shouldn't be available for web pages + + + + +Feature Test 1746631 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/keyhandling/browsertest.html b/dom/tests/mochitest/keyhandling/browsertest.html new file mode 100644 index 0000000000..7121e6b02f --- /dev/null +++ b/dom/tests/mochitest/keyhandling/browsertest.html @@ -0,0 +1,108 @@ + + + + +

      + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. + A long paragraph to make a horizontal scrollbar. +

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      +

      Lots of paragraphs to make a vertical scrollbar.

      + + diff --git a/dom/tests/mochitest/keyhandling/chrome.toml b/dom/tests/mochitest/keyhandling/chrome.toml new file mode 100644 index 0000000000..5dbecb7979 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/chrome.toml @@ -0,0 +1,22 @@ +[DEFAULT] +# test_input.html and test_textarea.html are also used as mochitests, hence +# we have to flip the skip assertion flag for the chrome tests here. +prefs = ["dom.security.skip_remote_script_assertion_in_system_priv_context=true"] + +# nsIWidget::SynthesizeNativeKeyEvent() required (Bug 1410525 for headless) +skip-if = [ + "os == 'linux'", + "os == 'android'", + "headless", +] + +["test_browser.xhtml"] +support-files = ["browsertest.html"] + +["test_editor.xhtml"] + +["test_windowed.xhtml"] +support-files = [ + "test_input.html", + "test_textarea.html", +] diff --git a/dom/tests/mochitest/keyhandling/mochitest.toml b/dom/tests/mochitest/keyhandling/mochitest.toml new file mode 100644 index 0000000000..461defc36c --- /dev/null +++ b/dom/tests/mochitest/keyhandling/mochitest.toml @@ -0,0 +1,12 @@ +[DEFAULT] +# nsIWidget::SynthesizeNativeKeyEvent() required (Bug 1410525 for headless) +skip-if = [ + "os == 'linux'", + "os == 'android'", + "headless", +] + +["test_input.html"] + +["test_textarea.html"] +skip-if = ["os == 'win' && asan"] # Bug 1658513 diff --git a/dom/tests/mochitest/keyhandling/test_browser.xhtml b/dom/tests/mochitest/keyhandling/test_browser.xhtml new file mode 100644 index 0000000000..3cddf5ba76 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/test_browser.xhtml @@ -0,0 +1,252 @@ + + + + + + + +

      + +
      
      +  
      +  
      +
      diff --git a/dom/tests/mochitest/keyhandling/test_editor.xhtml b/dom/tests/mochitest/keyhandling/test_editor.xhtml new file mode 100644 index 0000000000..9ddbe4adc0 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/test_editor.xhtml @@ -0,0 +1,268 @@ + + + + + + + +

      + +
      
      +  
      +  
      +
      diff --git a/dom/tests/mochitest/keyhandling/test_input.html b/dom/tests/mochitest/keyhandling/test_input.html new file mode 100644 index 0000000000..f4ec1dddf5 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/test_input.html @@ -0,0 +1,226 @@ + + +input key handling + + + + + + + + + + + + diff --git a/dom/tests/mochitest/keyhandling/test_textarea.html b/dom/tests/mochitest/keyhandling/test_textarea.html new file mode 100644 index 0000000000..613baac0c9 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/test_textarea.html @@ -0,0 +1,226 @@ + + +input key handling + + + + + + + + + + + + diff --git a/dom/tests/mochitest/keyhandling/test_windowed.xhtml b/dom/tests/mochitest/keyhandling/test_windowed.xhtml new file mode 100644 index 0000000000..c89027b5c6 --- /dev/null +++ b/dom/tests/mochitest/keyhandling/test_windowed.xhtml @@ -0,0 +1,33 @@ + + + + + + + +

      + +
      
      +  
      +
      diff --git a/dom/tests/mochitest/localstorage/chrome.toml b/dom/tests/mochitest/localstorage/chrome.toml new file mode 100644 index 0000000000..4ce54b42a3 --- /dev/null +++ b/dom/tests/mochitest/localstorage/chrome.toml @@ -0,0 +1,14 @@ +[DEFAULT] +skip-if = ["os == 'android'"] +support-files = [ + "page_blank.html", + "frameQuota.html", + "interOriginFrame.js", +] + +["test_localStorageBasePrivateBrowsing_perwindowpb.html"] +skip-if = ["true"] # bug 1156725 + +["test_localStorageFromChrome.xhtml"] + +["test_localStorageQuotaPrivateBrowsing_perwindowpb.html"] diff --git a/dom/tests/mochitest/localstorage/file_tryAccessSessionStorage.html b/dom/tests/mochitest/localstorage/file_tryAccessSessionStorage.html new file mode 100644 index 0000000000..1def32a62a --- /dev/null +++ b/dom/tests/mochitest/localstorage/file_tryAccessSessionStorage.html @@ -0,0 +1,10 @@ + diff --git a/dom/tests/mochitest/localstorage/frameChromeSlave.html b/dom/tests/mochitest/localstorage/frameChromeSlave.html new file mode 100644 index 0000000000..fd87702e9d --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameChromeSlave.html @@ -0,0 +1,9 @@ + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameKeySync.html b/dom/tests/mochitest/localstorage/frameKeySync.html new file mode 100644 index 0000000000..a6b39d47d7 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameKeySync.html @@ -0,0 +1,51 @@ + + +frame for localStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameLocalStorageCookieSettings.html b/dom/tests/mochitest/localstorage/frameLocalStorageCookieSettings.html new file mode 100644 index 0000000000..4952a81c44 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameLocalStorageCookieSettings.html @@ -0,0 +1,26 @@ + + +localStorage cookies settings test + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameLocalStorageSessionOnly.html b/dom/tests/mochitest/localstorage/frameLocalStorageSessionOnly.html new file mode 100644 index 0000000000..f6c7f0291f --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameLocalStorageSessionOnly.html @@ -0,0 +1,8 @@ + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameMasterEqual.html b/dom/tests/mochitest/localstorage/frameMasterEqual.html new file mode 100644 index 0000000000..4d83c4fef2 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameMasterEqual.html @@ -0,0 +1,56 @@ + + +frame for localStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameMasterNotEqual.html b/dom/tests/mochitest/localstorage/frameMasterNotEqual.html new file mode 100644 index 0000000000..fef476bed3 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameMasterNotEqual.html @@ -0,0 +1,47 @@ + + +frame for localStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameOrder.html b/dom/tests/mochitest/localstorage/frameOrder.html new file mode 100644 index 0000000000..8fed3bc794 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameOrder.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameQuota.html b/dom/tests/mochitest/localstorage/frameQuota.html new file mode 100644 index 0000000000..5ff9855c99 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameQuota.html @@ -0,0 +1,97 @@ + + +slave for sessionStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameQuotaSessionOnly.html b/dom/tests/mochitest/localstorage/frameQuotaSessionOnly.html new file mode 100644 index 0000000000..754a5b3598 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameQuotaSessionOnly.html @@ -0,0 +1,101 @@ + + +slave for sessionStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameReplace.html b/dom/tests/mochitest/localstorage/frameReplace.html new file mode 100644 index 0000000000..145bfe8fce --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameReplace.html @@ -0,0 +1,72 @@ + + +localStorage replace frame + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameSlaveEqual.html b/dom/tests/mochitest/localstorage/frameSlaveEqual.html new file mode 100644 index 0000000000..b64b8de10a --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameSlaveEqual.html @@ -0,0 +1,51 @@ + + +frame for localStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/frameSlaveNotEqual.html b/dom/tests/mochitest/localstorage/frameSlaveNotEqual.html new file mode 100644 index 0000000000..9daf9e9f73 --- /dev/null +++ b/dom/tests/mochitest/localstorage/frameSlaveNotEqual.html @@ -0,0 +1,44 @@ + + +frame for localStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/interOriginFrame.js b/dom/tests/mochitest/localstorage/interOriginFrame.js new file mode 100644 index 0000000000..64470c4ef6 --- /dev/null +++ b/dom/tests/mochitest/localstorage/interOriginFrame.js @@ -0,0 +1,53 @@ +function postMsg(message) { + parent.postMessage(message, "http://mochi.test:8888"); +} + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + if (event.data == "step") { + var performed = false; + try { + performed = doStep(); + } catch (ex) { + postMsg("FAILURE: exception threw at " + location + ":\n" + ex); + finishTest(); + } + + if (performed) { + postMsg("perf"); + } + + return; + } + + postMsg("Invalid message"); +} + +function ok(a, message) { + if (!a) { + postMsg("FAILURE: " + message); + } else { + postMsg(message); + } +} + +function is(a, b, message) { + if (a != b) { + postMsg("FAILURE: " + message + ", expected " + b + " got " + a); + } else { + postMsg(message + ", expected " + b + " got " + a); + } +} + +function todo(a, b, message) { + postMsg("TODO: " + message + ", expected " + b + " got " + a); +} + +function finishTest() { + try { + localStorage.clear(); + } catch (e) {} + postMsg("done"); + return false; +} diff --git a/dom/tests/mochitest/localstorage/interOriginTest.js b/dom/tests/mochitest/localstorage/interOriginTest.js new file mode 100644 index 0000000000..526b5b0fb1 --- /dev/null +++ b/dom/tests/mochitest/localstorage/interOriginTest.js @@ -0,0 +1,41 @@ +var slaveLoadsPending = 1; + +var slaveOrigin = ""; +var slave = null; + +var failureRegExp = new RegExp("^FAILURE"); +const slavePath = "/tests/dom/tests/mochitest/localstorage/"; + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + switch (event.data) { + // Indication of the frame onload event + case "frame loaded": + if (--slaveLoadsPending) { + break; + } + + // Indication of successfully finished step of a test + // fall through + case "perf": + if (event.data == "perf") { + doStep(); + } + + slave.postMessage("step", slaveOrigin); + break; + + // Indication of all test parts finish (from any of the frames) + case "done": + localStorage.clear(); + slaveLoadsPending = 1; + doNextTest(); + break; + + // Any other message indicates error or succes message of a test + default: + SimpleTest.ok(!event.data.match(failureRegExp), event.data); + break; + } +} diff --git a/dom/tests/mochitest/localstorage/interOriginTest2.js b/dom/tests/mochitest/localstorage/interOriginTest2.js new file mode 100644 index 0000000000..d675475c76 --- /dev/null +++ b/dom/tests/mochitest/localstorage/interOriginTest2.js @@ -0,0 +1,53 @@ +var t = async_test(document.title); + +var frameLoadsPending = 2; + +var callMasterFrame = true; +var testDone = false; + +var masterFrameOrigin = ""; +var slaveFrameOrigin = ""; + +var failureRegExp = new RegExp("^FAILURE"); + +const framePath = "/tests/dom/tests/mochitest/localstorage/"; + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + switch (event.data) { + // Indication of the frame onload event + case "frame loaded": + if (--frameLoadsPending) { + break; + } + + // Indication of successfully finished step of a test + // Just fall through... + case "perf": + if (callMasterFrame) { + masterFrame.postMessage("step", masterFrameOrigin); + } else { + slaveFrame.postMessage("step", slaveFrameOrigin); + } + callMasterFrame = !callMasterFrame; + break; + + // Indication of all test parts finish (from any of the frames) + case "done": + if (testDone) { + break; + } + + testDone = true; + t.done(); + break; + + // Any other message indicates error, succes or todo message of a test + default: + t.step(function () { + assert_true(!event.data.match(failureRegExp), event.data); + }); + break; + } +} diff --git a/dom/tests/mochitest/localstorage/localStorageCommon.js b/dom/tests/mochitest/localstorage/localStorageCommon.js new file mode 100644 index 0000000000..364e708870 --- /dev/null +++ b/dom/tests/mochitest/localstorage/localStorageCommon.js @@ -0,0 +1,131 @@ +function localStorageFlush(cb) { + if (SpecialPowers.Services.domStorageManager.nextGenLocalStorageEnabled) { + SimpleTest.executeSoon(function () { + cb(); + }); + return; + } + + var ob = { + observe(sub, top, dat) { + os().removeObserver(ob, "domstorage-test-flushed"); + cb(); + }, + }; + os().addObserver(ob, "domstorage-test-flushed"); + notify("domstorage-test-flush-force"); +} + +function localStorageReload(callback) { + if (SpecialPowers.Services.domStorageManager.nextGenLocalStorageEnabled) { + localStorage.close(); + let qms = SpecialPowers.Services.qms; + let principal = SpecialPowers.wrap(document).nodePrincipal; + let request = qms.resetStoragesForPrincipal(principal, "default", "ls"); + request.callback = SpecialPowers.wrapCallback(function () { + localStorage.open(); + callback(); + }); + return; + } + + notify("domstorage-test-reload"); + SimpleTest.executeSoon(function () { + callback(); + }); +} + +function localStorageFlushAndReload(callback) { + if (SpecialPowers.Services.domStorageManager.nextGenLocalStorageEnabled) { + localStorage.close(); + let qms = SpecialPowers.Services.qms; + let principal = SpecialPowers.wrap(document).nodePrincipal; + let request = qms.resetStoragesForPrincipal(principal, "default", "ls"); + request.callback = SpecialPowers.wrapCallback(function () { + localStorage.open(); + callback(); + }); + return; + } + + localStorageFlush(function () { + localStorageReload(callback); + }); +} + +function localStorageClearAll(callback) { + if (SpecialPowers.Services.domStorageManager.nextGenLocalStorageEnabled) { + let qms = SpecialPowers.Services.qms; + let ssm = SpecialPowers.Services.scriptSecurityManager; + + qms.getUsage( + SpecialPowers.wrapCallback(function (request) { + if (request.resultCode != SpecialPowers.Cr.NS_OK) { + callback(); + return; + } + + let clearRequestCount = 0; + for (let item of request.result) { + let principal = ssm.createContentPrincipalFromOrigin(item.origin); + let clearRequest = qms.clearStoragesForPrincipal( + principal, + "default", + "ls" + ); + clearRequestCount++; + clearRequest.callback = SpecialPowers.wrapCallback(function () { + if (--clearRequestCount == 0) { + callback(); + } + }); + } + }) + ); + return; + } + + os().notifyObservers(null, "cookie-changed", "cleared"); + SimpleTest.executeSoon(function () { + callback(); + }); +} + +function localStorageClearDomain(domain, callback) { + if (SpecialPowers.Services.domStorageManager.nextGenLocalStorageEnabled) { + let qms = SpecialPowers.Services.qms; + let principal = SpecialPowers.wrap(document).effectiveStoragePrincipal; + let request = qms.clearStoragesForPrincipal(principal, "default", "ls"); + let cb = SpecialPowers.wrapCallback(callback); + request.callback = cb; + return; + } + + os().notifyObservers(null, "extension:purge-localStorage", domain); + SimpleTest.executeSoon(function () { + callback(); + }); +} + +function os() { + return SpecialPowers.Services.obs; +} + +function notify(top) { + os().notifyObservers(null, top); +} + +/** + * Enable testing observer notifications in DOMStorageObserver.cpp. + */ +function localStorageEnableTestingMode(cb) { + SpecialPowers.pushPrefEnv( + { + set: [ + ["dom.storage.testing", true], + ["dom.quotaManager.testing", true], + ], + }, + cb + ); +} diff --git a/dom/tests/mochitest/localstorage/mochitest.toml b/dom/tests/mochitest/localstorage/mochitest.toml new file mode 100644 index 0000000000..07b9eb313a --- /dev/null +++ b/dom/tests/mochitest/localstorage/mochitest.toml @@ -0,0 +1,103 @@ +[DEFAULT] +support-files = [ + "frameChromeSlave.html", + "frameLocalStorageCookieSettings.html", + "frameKeySync.html", + "frameMasterEqual.html", + "frameMasterNotEqual.html", + "frameOrder.html", + "frameQuota.html", + "frameQuotaSessionOnly.html", + "frameReplace.html", + "frameSlaveEqual.html", + "frameSlaveNotEqual.html", + "interOriginFrame.js", + "interOriginTest.js", + "interOriginTest2.js", + "localStorageCommon.js", + "frameLocalStorageSessionOnly.html", + "file_tryAccessSessionStorage.html", + "windowProxy.html", +] + +["test_brokenUTF-16.html"] + +["test_bug600307-DBOps.html"] + +["test_bug746272-1.html"] + +["test_bug746272-2.html"] +skip-if = ["verify"] + +["test_cookieBlock.html"] + +["test_embededNulls.html"] + +["test_keySync.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageBase.html"] + +["test_localStorageBaseSessionOnly.html"] + +["test_localStorageCookieSettings.html"] + +["test_localStorageEnablePref.html"] + +["test_localStorageKeyOrder.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageOriginsDiff.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageOriginsDomainDiffs.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageOriginsEquals.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageOriginsPortDiffs.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageOriginsSchemaDiffs.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageQuota.html"] +skip-if = [ + "http3", + "http2", +] + +["test_localStorageQuotaSessionOnly.html"] + +["test_localStorageQuotaSessionOnly2.html"] +skip-if = ["true"] # bug 1347690 + +["test_localStorageReplace.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storageConstructor.html"] diff --git a/dom/tests/mochitest/localstorage/page_blank.html b/dom/tests/mochitest/localstorage/page_blank.html new file mode 100644 index 0000000000..157317d64b --- /dev/null +++ b/dom/tests/mochitest/localstorage/page_blank.html @@ -0,0 +1,6 @@ + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_brokenUTF-16.html b/dom/tests/mochitest/localstorage/test_brokenUTF-16.html new file mode 100644 index 0000000000..a9289b195c --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_brokenUTF-16.html @@ -0,0 +1,100 @@ + + +incomplete UTF-16 test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_bug600307-DBOps.html b/dom/tests/mochitest/localstorage/test_bug600307-DBOps.html new file mode 100644 index 0000000000..cfce270d5d --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_bug600307-DBOps.html @@ -0,0 +1,178 @@ + + +bug 600307 + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_bug746272-1.html b/dom/tests/mochitest/localstorage/test_bug746272-1.html new file mode 100644 index 0000000000..36612fe79f --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_bug746272-1.html @@ -0,0 +1,32 @@ + + +incomplete UTF-16 test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_bug746272-2.html b/dom/tests/mochitest/localstorage/test_bug746272-2.html new file mode 100644 index 0000000000..31edbc906a --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_bug746272-2.html @@ -0,0 +1,31 @@ + + +incomplete UTF-16 test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_cookieBlock.html b/dom/tests/mochitest/localstorage/test_cookieBlock.html new file mode 100644 index 0000000000..9cc7495d40 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_cookieBlock.html @@ -0,0 +1,53 @@ + + +cookie blocking test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_embededNulls.html b/dom/tests/mochitest/localstorage/test_embededNulls.html new file mode 100644 index 0000000000..b12a403b85 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_embededNulls.html @@ -0,0 +1,40 @@ + + +embeded nulls test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_keySync.html b/dom/tests/mochitest/localstorage/test_keySync.html new file mode 100644 index 0000000000..3f23945e2f --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_keySync.html @@ -0,0 +1,33 @@ + + +localStorage equal origins + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageBase.html b/dom/tests/mochitest/localstorage/test_localStorageBase.html new file mode 100644 index 0000000000..a906b42a63 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageBase.html @@ -0,0 +1,247 @@ + + +localStorage basic test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageBasePrivateBrowsing_perwindowpb.html b/dom/tests/mochitest/localstorage/test_localStorageBasePrivateBrowsing_perwindowpb.html new file mode 100644 index 0000000000..1bf1f4450e --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageBasePrivateBrowsing_perwindowpb.html @@ -0,0 +1,256 @@ + + +localStorage basic test, while in sesison only mode + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageBaseSessionOnly.html b/dom/tests/mochitest/localstorage/test_localStorageBaseSessionOnly.html new file mode 100644 index 0000000000..39df8ac519 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageBaseSessionOnly.html @@ -0,0 +1,211 @@ + + +localStorage basic test, while in sesison only mode + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageCookieSettings.html b/dom/tests/mochitest/localstorage/test_localStorageCookieSettings.html new file mode 100644 index 0000000000..9860c67661 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageCookieSettings.html @@ -0,0 +1,75 @@ + + +localStorage cookies settings test + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageEnablePref.html b/dom/tests/mochitest/localstorage/test_localStorageEnablePref.html new file mode 100644 index 0000000000..485f4e010a --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageEnablePref.html @@ -0,0 +1,65 @@ + + +localStorage enable preference test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageFromChrome.xhtml b/dom/tests/mochitest/localstorage/test_localStorageFromChrome.xhtml new file mode 100644 index 0000000000..e2fc0d8219 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageFromChrome.xhtml @@ -0,0 +1,60 @@ + + +localStorage basic test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageKeyOrder.html b/dom/tests/mochitest/localstorage/test_localStorageKeyOrder.html new file mode 100644 index 0000000000..a5dbb28b42 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageKeyOrder.html @@ -0,0 +1,73 @@ + + +localStorage key order test + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageOriginsDomainDiffs.html b/dom/tests/mochitest/localstorage/test_localStorageOriginsDomainDiffs.html new file mode 100644 index 0000000000..c1a4417727 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageOriginsDomainDiffs.html @@ -0,0 +1,41 @@ + + +localStorage different domains + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageOriginsEquals.html b/dom/tests/mochitest/localstorage/test_localStorageOriginsEquals.html new file mode 100644 index 0000000000..35cdd86b32 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageOriginsEquals.html @@ -0,0 +1,42 @@ + + +localStorage equal origins + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageOriginsPortDiffs.html b/dom/tests/mochitest/localstorage/test_localStorageOriginsPortDiffs.html new file mode 100644 index 0000000000..d34e0dbcd1 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageOriginsPortDiffs.html @@ -0,0 +1,41 @@ + + +localStorage different port numbers + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageOriginsSchemaDiffs.html b/dom/tests/mochitest/localstorage/test_localStorageOriginsSchemaDiffs.html new file mode 100644 index 0000000000..57e4fb5ab3 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageOriginsSchemaDiffs.html @@ -0,0 +1,41 @@ + + +localStorage different domains + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageQuota.html b/dom/tests/mochitest/localstorage/test_localStorageQuota.html new file mode 100644 index 0000000000..a26252b313 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageQuota.html @@ -0,0 +1,136 @@ + + +localStorage and DOM quota test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing_perwindowpb.html b/dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing_perwindowpb.html new file mode 100644 index 0000000000..ab04360821 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing_perwindowpb.html @@ -0,0 +1,189 @@ + + +localStorage and DOM quota test + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly.html b/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly.html new file mode 100644 index 0000000000..1d32776907 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly.html @@ -0,0 +1,134 @@ + + +localStorage and DOM quota test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly2.html b/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly2.html new file mode 100644 index 0000000000..156ff02bf6 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageQuotaSessionOnly2.html @@ -0,0 +1,98 @@ + + +localStorage and DOM quota test + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_localStorageReplace.html b/dom/tests/mochitest/localstorage/test_localStorageReplace.html new file mode 100644 index 0000000000..b80c35dbc5 --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_localStorageReplace.html @@ -0,0 +1,80 @@ + + +localStorage replace test + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/test_storageConstructor.html b/dom/tests/mochitest/localstorage/test_storageConstructor.html new file mode 100644 index 0000000000..e0aa4e11dc --- /dev/null +++ b/dom/tests/mochitest/localstorage/test_storageConstructor.html @@ -0,0 +1,35 @@ + + +Storage interface + + + + + + + + + + + diff --git a/dom/tests/mochitest/localstorage/windowProxy.html b/dom/tests/mochitest/localstorage/windowProxy.html new file mode 100644 index 0000000000..39ba8eab0f --- /dev/null +++ b/dom/tests/mochitest/localstorage/windowProxy.html @@ -0,0 +1,3 @@ + + + diff --git a/dom/tests/mochitest/orientation/bug507902-frame.html b/dom/tests/mochitest/orientation/bug507902-frame.html new file mode 100644 index 0000000000..5a352f3ee4 --- /dev/null +++ b/dom/tests/mochitest/orientation/bug507902-frame.html @@ -0,0 +1,30 @@ + + + + Frame for watchPosition + + + + + + + diff --git a/dom/tests/mochitest/orientation/mochitest.toml b/dom/tests/mochitest/orientation/mochitest.toml new file mode 100644 index 0000000000..d13eee8fc0 --- /dev/null +++ b/dom/tests/mochitest/orientation/mochitest.toml @@ -0,0 +1,4 @@ +[DEFAULT] +support-files = ["bug507902-frame.html"] + +["test_bug507902.html"] diff --git a/dom/tests/mochitest/orientation/test_bug507902.html b/dom/tests/mochitest/orientation/test_bug507902.html new file mode 100644 index 0000000000..aaf5290da4 --- /dev/null +++ b/dom/tests/mochitest/orientation/test_bug507902.html @@ -0,0 +1,36 @@ + + + + + Test for devicemotion + + + + +Mozilla Bug 507902 +

      +
      + +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/pointerlock/file_allowPointerLockSandboxFlag.html b/dom/tests/mochitest/pointerlock/file_allowPointerLockSandboxFlag.html new file mode 100644 index 0000000000..33f550f7d7 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_allowPointerLockSandboxFlag.html @@ -0,0 +1,96 @@ + + + + + Bug 784402 + + + + + + + + Mozilla Bug 784402 +

      + + + +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_changeLockElement.html b/dom/tests/mochitest/pointerlock/file_changeLockElement.html new file mode 100644 index 0000000000..62c5b27956 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_changeLockElement.html @@ -0,0 +1,115 @@ + + + + + Bug 1284788 + + + + + + + +
      +
      +
      +
      + +
      + + diff --git a/dom/tests/mochitest/pointerlock/file_childIframe.html b/dom/tests/mochitest/pointerlock/file_childIframe.html new file mode 100644 index 0000000000..9ee3153d2e --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_childIframe.html @@ -0,0 +1,134 @@ + + + + + Bug 633602 - file_childIframe.html + + + + + + + + + Mozilla Bug 633602 + + +
      + + + + + +
      + + +
      +
      +
      +
      + +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_doubleLock.html b/dom/tests/mochitest/pointerlock/file_doubleLock.html new file mode 100644 index 0000000000..93e156a0b0 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_doubleLock.html @@ -0,0 +1,64 @@ + + + + + Bug 633602 - file_doubleLockCallBack.html + + + + + + + + + Mozilla Bug 633602 +
      +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_escapeKey.html b/dom/tests/mochitest/pointerlock/file_escapeKey.html new file mode 100644 index 0000000000..987b880232 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_escapeKey.html @@ -0,0 +1,77 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 + +
      +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_infiniteMovement.html b/dom/tests/mochitest/pointerlock/file_infiniteMovement.html new file mode 100644 index 0000000000..995d99843b --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_infiniteMovement.html @@ -0,0 +1,114 @@ + + + + + Bug 633602 - file_movementXY.html + + + + + + + + Mozilla Bug 633602 + +
      +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_locksvgelement.html b/dom/tests/mochitest/pointerlock/file_locksvgelement.html new file mode 100644 index 0000000000..edbfa45995 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_locksvgelement.html @@ -0,0 +1,62 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 +

      + + + + + +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_movementXY.html b/dom/tests/mochitest/pointerlock/file_movementXY.html new file mode 100644 index 0000000000..7ef47cfaa9 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_movementXY.html @@ -0,0 +1,106 @@ + + + + + Bug 633602 - file_movementXY.html + + + + + + + + Mozilla Bug 633602 + +
      +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_nestedFullScreen.html b/dom/tests/mochitest/pointerlock/file_nestedFullScreen.html new file mode 100644 index 0000000000..8d625b6704 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_nestedFullScreen.html @@ -0,0 +1,76 @@ + + + + + Bug 633602 - file_nestedFullScreen.html + + + + + + + + Mozilla Bug 633602 + + +
      +
      +
      + + + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerLockPref.html b/dom/tests/mochitest/pointerlock/file_pointerLockPref.html new file mode 100644 index 0000000000..09c3b42052 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerLockPref.html @@ -0,0 +1,75 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 +

      +
      +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlock-api-with-shadow.html b/dom/tests/mochitest/pointerlock/file_pointerlock-api-with-shadow.html new file mode 100644 index 0000000000..a9c2d525de --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlock-api-with-shadow.html @@ -0,0 +1,110 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 + +
      +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlock-api.html b/dom/tests/mochitest/pointerlock/file_pointerlock-api.html new file mode 100644 index 0000000000..6f5fb537be --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlock-api.html @@ -0,0 +1,104 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 + +
      +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe.html b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe.html new file mode 100644 index 0000000000..f8e34ef64b --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe.html @@ -0,0 +1,125 @@ + + + + +Bug 1662587 + + + + + + + +Mozilla Bug 1662587 +
      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_no_user_gesture.html b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_no_user_gesture.html new file mode 100644 index 0000000000..68977ffada --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_no_user_gesture.html @@ -0,0 +1,95 @@ + + + + +Bug 1672330 + + + + + + + + + +Mozilla Bug 1672330 +
      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_not_focused.html b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_not_focused.html new file mode 100644 index 0000000000..a6c0058657 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlock_xorigin_iframe_not_focused.html @@ -0,0 +1,112 @@ + + + + +Bug 1662587 + + + + + + + +Mozilla Bug 1698611 +
      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/pointerlock/file_pointerlockerror.html b/dom/tests/mochitest/pointerlock/file_pointerlockerror.html new file mode 100644 index 0000000000..0948a19452 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_pointerlockerror.html @@ -0,0 +1,41 @@ + + + + + Bug 633602 + + + + + + + + Mozilla Bug 633602 + + +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_removedFromDOM.html b/dom/tests/mochitest/pointerlock/file_removedFromDOM.html new file mode 100644 index 0000000000..3e2f9ca866 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_removedFromDOM.html @@ -0,0 +1,95 @@ + + + + +Bug 633602 - file_DOMtree.html + + + + + + + + Mozilla Bug 633602 + +
      +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/pointerlock/file_retargetMouseEvents.html b/dom/tests/mochitest/pointerlock/file_retargetMouseEvents.html new file mode 100644 index 0000000000..2cd329bb33 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_retargetMouseEvents.html @@ -0,0 +1,212 @@ + + + + + Bug 633602 - file_retargetMouseEvents.html + + + + + + + + Mozilla Bug 633602 + + +
      +
      +
      +
      + +
      +    
      +  
      + + diff --git a/dom/tests/mochitest/pointerlock/file_screenClientXYConst.html b/dom/tests/mochitest/pointerlock/file_screenClientXYConst.html new file mode 100644 index 0000000000..31bd232a57 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_screenClientXYConst.html @@ -0,0 +1,143 @@ + + + + + Bug 633602 - constantXY.html + + + + + + + + Mozilla Bug 633602 + +
      + + + diff --git a/dom/tests/mochitest/pointerlock/file_suppressSomeMouseEvents.html b/dom/tests/mochitest/pointerlock/file_suppressSomeMouseEvents.html new file mode 100644 index 0000000000..bc1e1e64a5 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_suppressSomeMouseEvents.html @@ -0,0 +1,158 @@ + + + + + Bug 633602 - file_cursorPosEvents.html + + + + + + + + + Mozilla Bug 633602 + +
      +
      +
      + + + + diff --git a/dom/tests/mochitest/pointerlock/file_targetOutOfFocus.html b/dom/tests/mochitest/pointerlock/file_targetOutOfFocus.html new file mode 100644 index 0000000000..4a6b9084bb --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_targetOutOfFocus.html @@ -0,0 +1,69 @@ + + + + + Bug 633602 - file_targetOutOfFocus.html + + + + + + + + Mozilla Bug 633602 + +

      +
      +
      +
      + +
      +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/file_withoutDOM.html b/dom/tests/mochitest/pointerlock/file_withoutDOM.html new file mode 100644 index 0000000000..c63a72cf9a --- /dev/null +++ b/dom/tests/mochitest/pointerlock/file_withoutDOM.html @@ -0,0 +1,54 @@ + + + + + Bug 633602 - file_DOMtree.html + + + + + + + + + Mozilla Bug 633602 + +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/iframe_differentDOM.html b/dom/tests/mochitest/pointerlock/iframe_differentDOM.html new file mode 100644 index 0000000000..0e3eac19b9 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/iframe_differentDOM.html @@ -0,0 +1,7 @@ + + + + +
      + + diff --git a/dom/tests/mochitest/pointerlock/mochitest.toml b/dom/tests/mochitest/pointerlock/mochitest.toml new file mode 100644 index 0000000000..87e2879cd3 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/mochitest.toml @@ -0,0 +1,49 @@ +[DEFAULT] +support-files = [ + "pointerlock_utils.js", + "iframe_differentDOM.html", + "!/gfx/layers/apz/test/mochitest/apz_test_utils.js", +] + +["test_closewindow-with-pointerlock.html"] + +["test_pointerlock-api.html"] +tags = "fullscreen" +skip-if = [ + "os == 'android'", # Bug 1612553 + "display == 'wayland' && os_version == '22.04'", # Bug 1857057 + "!debug && !asan && !tsan && !ccov", # Bug 1833142 +] +support-files = [ + "file_pointerlock-api.html", + "file_pointerlock-api-with-shadow.html", + "file_pointerlockerror.html", + "file_escapeKey.html", + "file_withoutDOM.html", + "file_removedFromDOM.html", + "file_pointerLockPref.html", + "file_nestedFullScreen.html", + "file_doubleLock.html", + "file_childIframe.html", + "file_movementXY.html", + "file_infiniteMovement.html", + "file_retargetMouseEvents.html", + "file_targetOutOfFocus.html", + "file_screenClientXYConst.html", + "file_suppressSomeMouseEvents.html", + "file_locksvgelement.html", + "file_allowPointerLockSandboxFlag.html", + "file_changeLockElement.html", +] + +["test_pointerlock_focus.html"] + +["test_pointerlock_target_not_in_active_document.html"] + +["test_pointerlock_xorigin_iframe.html"] +support-files = [ + "file_pointerlock_xorigin_iframe.html", + "file_pointerlock_xorigin_iframe_no_user_gesture.html", + "file_pointerlock_xorigin_iframe_not_focused.html", +] +skip-if = ["display == 'wayland' && os_version == '22.04'"] # Bug 1857057 diff --git a/dom/tests/mochitest/pointerlock/pointerlock_utils.js b/dom/tests/mochitest/pointerlock/pointerlock_utils.js new file mode 100644 index 0000000000..050d161070 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/pointerlock_utils.js @@ -0,0 +1,112 @@ +const { ChromeUtils } = SpecialPowers; +const { TestUtils } = ChromeUtils.importESModule( + "resource://testing-common/TestUtils.sys.mjs" +); + +// Get test filename for page being run in popup so errors are more useful +var testName = location.pathname.split("/").pop(); + +// Wrap test functions and pass to parent window +window.ok = function (a, msg) { + opener.ok(a, testName + ": " + msg); +}; + +window.is = function (a, b, msg) { + opener.is(a, b, testName + ": " + msg); +}; + +window.isnot = function (a, b, msg) { + opener.isnot(a, b, testName + ": " + msg); +}; + +window.todo = function (a, msg) { + opener.todo(a, testName + ": " + msg); +}; + +window.todo_is = function (a, b, msg) { + opener.todo_is(a, b, testName + ": " + msg); +}; + +window.todo_isnot = function (a, b, msg) { + opener.todo_isnot(a, b, testName + ": " + msg); +}; + +window.info = function (msg) { + opener.info(testName + ": " + msg); +}; + +// Override bits of SimpleTest so test files work stand-alone +var SimpleTest = SimpleTest || {}; + +SimpleTest.waitForExplicitFinish = function () { + dump("[POINTERLOCK] Starting " + testName + "\n"); +}; + +SimpleTest.finish = function () { + dump("[POINTERLOCK] Finishing " + testName + "\n"); + opener.nextTest(); +}; + +// Keep track of how many fullscreenChange enters we've received, so that +// we can balance them with the number of exits we receive. We reset this +// to 0 when we load a test. +var fullscreenChangeEnters = 0; + +addLoadEvent(function () { + info(`Resetting fullscreen enter count.`); + fullscreenChangeEnters = 0; + if (typeof start !== "undefined") { + // Delay one event loop to stabilize the initial state of the page. + SimpleTest.executeSoon(start); + } +}); + +// Returns true if the window believes it is in fullscreen. This may be true even +// before an asynchronous fullscreen transition is complete. +function inFullscreenMode(win) { + return win.document.fullscreenElement; +} + +// Adds a listener that will be called once a fullscreen transition +// is complete. When type==='enter', callback is called when we've +// received a fullscreenchange event, and the fullscreen transition is +// complete. When type==='exit', callback is called when we've +// received a fullscreenchange event and the window is out of +// fullscreen. inDoc is the document which the listeners are added on, +// if absent, the listeners are added to the current document. +function addFullscreenChangeContinuation(type, callback, inDoc) { + var doc = inDoc || document; + var topWin = doc.defaultView.top; + function checkCondition() { + if (type == "enter") { + fullscreenChangeEnters++; + return inFullscreenMode(topWin); + } else if (type == "exit") { + fullscreenChangeEnters--; + return fullscreenChangeEnters + ? inFullscreenMode(topWin) + : !inFullscreenMode(topWin); + } else { + throw "'type' must be either 'enter', or 'exit'."; + } + } + function onFullscreenChange(event) { + doc.removeEventListener("fullscreenchange", onFullscreenChange); + ok(checkCondition(), `Should ${type} fullscreen.`); + + // Invoke the callback after the browsingContext has become active + // (or we've timed out waiting for it to become active). + let bc = SpecialPowers.wrap(topWin).browsingContext; + TestUtils.waitForCondition( + () => bc.isActive, + "browsingContext should become active" + ) + .catch(e => + ok(false, `Wait for browsingContext.isActive failed with ${e}`) + ) + .finally(() => { + requestAnimationFrame(() => setTimeout(() => callback(event), 0), 0); + }); + } + doc.addEventListener("fullscreenchange", onFullscreenChange); +} diff --git a/dom/tests/mochitest/pointerlock/test_closewindow-with-pointerlock.html b/dom/tests/mochitest/pointerlock/test_closewindow-with-pointerlock.html new file mode 100644 index 0000000000..797228c3e0 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/test_closewindow-with-pointerlock.html @@ -0,0 +1,51 @@ + + + + + Bug 1323983 - Auto-close window after holding pointerlock + + + + + + + + diff --git a/dom/tests/mochitest/pointerlock/test_pointerlock-api.html b/dom/tests/mochitest/pointerlock/test_pointerlock-api.html new file mode 100644 index 0000000000..c0fddb5c87 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/test_pointerlock-api.html @@ -0,0 +1,113 @@ + + + + + Test for Bug 633602 + + + + + + + Mozilla Bug 633602 + +
      +
      +
      +      
      +    
      + + diff --git a/dom/tests/mochitest/pointerlock/test_pointerlock_focus.html b/dom/tests/mochitest/pointerlock/test_pointerlock_focus.html new file mode 100644 index 0000000000..4b414d3ba6 --- /dev/null +++ b/dom/tests/mochitest/pointerlock/test_pointerlock_focus.html @@ -0,0 +1,111 @@ + + + + + Bug 1646493 - test_pointerlock_focus.html + + + + + + +Mozilla Bug 1646493
      +
      +
      + + + + diff --git a/dom/tests/mochitest/pointerlock/test_pointerlock_target_not_in_active_document.html b/dom/tests/mochitest/pointerlock/test_pointerlock_target_not_in_active_document.html new file mode 100644 index 0000000000..8629230b6b --- /dev/null +++ b/dom/tests/mochitest/pointerlock/test_pointerlock_target_not_in_active_document.html @@ -0,0 +1,77 @@ + + + + + Bug 1646493 - test_pointerlock_target_not_in_active_document.html + + + + + +Mozilla Bug 1646493
      + + + + diff --git a/dom/tests/mochitest/pointerlock/test_pointerlock_xorigin_iframe.html b/dom/tests/mochitest/pointerlock/test_pointerlock_xorigin_iframe.html new file mode 100644 index 0000000000..fb4f84470e --- /dev/null +++ b/dom/tests/mochitest/pointerlock/test_pointerlock_xorigin_iframe.html @@ -0,0 +1,59 @@ + + + + +Test for Bug 1662587 + + + + + +Mozilla Bug 1662587 +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/script/bug1656248_frame.html b/dom/tests/mochitest/script/bug1656248_frame.html new file mode 100644 index 0000000000..7d24911899 --- /dev/null +++ b/dom/tests/mochitest/script/bug1656248_frame.html @@ -0,0 +1,11 @@ + + + + + + + diff --git a/dom/tests/mochitest/script/file_blocked_script.sjs b/dom/tests/mochitest/script/file_blocked_script.sjs new file mode 100644 index 0000000000..a5b375a23d --- /dev/null +++ b/dom/tests/mochitest/script/file_blocked_script.sjs @@ -0,0 +1,70 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* 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/. */ + +function setGlobalState(data, key) { + x = { + data, + QueryInterface(iid) { + return this; + }, + }; + x.wrappedJSObject = x; + setObjectState(key, x); +} + +function getGlobalState(key) { + var data; + getObjectState(key, function (x) { + data = x && x.wrappedJSObject.data; + }); + return data; +} + +function finishBlockedRequest(request, response, query) { + response.setStatusLine(request.httpVersion, 200, "OK"); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "application/javascript", false); + response.write("scriptLoaded('" + query[1] + "');"); + response.finish(); + + setGlobalState(undefined, query[1]); +} + +function handleRequest(request, response) { + var query = request.queryString.split("&"); + switch (query[0]) { + case "blocked": + var alreadyUnblocked = getGlobalState(query[1]); + + response.processAsync(); + if (alreadyUnblocked === true) { + // the unblock request came before the blocked request, just go on and finish synchronously + finishBlockedRequest(request, response, query); + } else { + setGlobalState(response, query[1]); + } + break; + + case "unblock": + response.setStatusLine(request.httpVersion, 200, "OK"); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "image/png", false); + response.write("\x89PNG"); // just a broken image is enough for our purpose + + var blockedResponse = getGlobalState(query[1]); + if (blockedResponse === undefined) { + // the unblock request came before the blocked request, remember to not block it + setGlobalState(true, query[1]); + } else if (typeof blockedResponse == "object") { + finishBlockedRequest(request, blockedResponse, query); + } + break; + + default: + response.setStatusLine(request.httpVersion, 400, "Bad request"); + break; + } +} diff --git a/dom/tests/mochitest/script/mochitest.toml b/dom/tests/mochitest/script/mochitest.toml new file mode 100644 index 0000000000..ddd448cd88 --- /dev/null +++ b/dom/tests/mochitest/script/mochitest.toml @@ -0,0 +1,19 @@ +[DEFAULT] +support-files = [ + "file_blocked_script.sjs", + "bug1656248_frame.html", + "subdir/bug1656248_script.mjs", + "subdir/bug1656248_import.mjs", + "test_bug1788532_moduleA.mjs", + "test_bug1788532_moduleB.mjs", + "slow.sjs", +] + +["test_bug1053321.html"] + +["test_bug1656248.html"] +skip-if = ["verify"] + +["test_bug1788532.html"] + +["test_whitespace.html"] diff --git a/dom/tests/mochitest/script/slow.sjs b/dom/tests/mochitest/script/slow.sjs new file mode 100644 index 0000000000..39a75acd86 --- /dev/null +++ b/dom/tests/mochitest/script/slow.sjs @@ -0,0 +1,13 @@ +function handleRequest(request, response) { + response.processAsync(); + + timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); + timer.init( + function () { + response.write("Here the content. But slowly."); + response.finish(); + }, + 5000, + Ci.nsITimer.TYPE_ONE_SHOT + ); +} diff --git a/dom/tests/mochitest/script/subdir/bug1656248_import.mjs b/dom/tests/mochitest/script/subdir/bug1656248_import.mjs new file mode 100644 index 0000000000..7a4e8a723a --- /dev/null +++ b/dom/tests/mochitest/script/subdir/bug1656248_import.mjs @@ -0,0 +1 @@ +export default 42; diff --git a/dom/tests/mochitest/script/subdir/bug1656248_script.mjs b/dom/tests/mochitest/script/subdir/bug1656248_script.mjs new file mode 100644 index 0000000000..ee65a6046a --- /dev/null +++ b/dom/tests/mochitest/script/subdir/bug1656248_script.mjs @@ -0,0 +1,18 @@ +// Import a module which should be resolved relative to this script's URL. +import("./bug1656248_import.mjs") + .then(ns => window.parent.checkResult(ns.default)) + .catch(e => window.parent.checkResult(`error: ${e}`)); + +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. +// To trigger the bytecode cache, this script needs to be at least 1KB. diff --git a/dom/tests/mochitest/script/test_bug1053321.html b/dom/tests/mochitest/script/test_bug1053321.html new file mode 100644 index 0000000000..bad2b4b4c4 --- /dev/null +++ b/dom/tests/mochitest/script/test_bug1053321.html @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/script/test_bug1656248.html b/dom/tests/mochitest/script/test_bug1656248.html new file mode 100644 index 0000000000..3b12fdaf80 --- /dev/null +++ b/dom/tests/mochitest/script/test_bug1656248.html @@ -0,0 +1,93 @@ + + + + + + + + + + + diff --git a/dom/tests/mochitest/script/test_bug1788532.html b/dom/tests/mochitest/script/test_bug1788532.html new file mode 100644 index 0000000000..8465c3a1fc --- /dev/null +++ b/dom/tests/mochitest/script/test_bug1788532.html @@ -0,0 +1,21 @@ + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/script/test_bug1788532_moduleA.mjs b/dom/tests/mochitest/script/test_bug1788532_moduleA.mjs new file mode 100644 index 0000000000..d667aac482 --- /dev/null +++ b/dom/tests/mochitest/script/test_bug1788532_moduleA.mjs @@ -0,0 +1,15 @@ +let xhrFinished = false; + +import("./test_bug1788532_moduleB.mjs") + .then(() => { + ok(xhrFinished, "Loaded after XHR finished"); + SimpleTest.finish(); + }) + .catch(e => { + ok(false, "Caught exception: " + e); + }); + +let request = new XMLHttpRequest(); +request.open("GET", "./slow.sjs", false); +request.send(null); +xhrFinished = true; diff --git a/dom/tests/mochitest/script/test_bug1788532_moduleB.mjs b/dom/tests/mochitest/script/test_bug1788532_moduleB.mjs new file mode 100644 index 0000000000..71e2e7009b --- /dev/null +++ b/dom/tests/mochitest/script/test_bug1788532_moduleB.mjs @@ -0,0 +1,2 @@ +/* eslint-disable-next-line import/no-unassigned-import */ +import "./test_bug1788532_moduleA.mjs"; diff --git a/dom/tests/mochitest/script/test_whitespace.html b/dom/tests/mochitest/script/test_whitespace.html new file mode 100644 index 0000000000..7ab14d9b67 --- /dev/null +++ b/dom/tests/mochitest/script/test_whitespace.html @@ -0,0 +1,31 @@ + + + + Test for ScriptLoader and type with whitespaces + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/chrome.toml b/dom/tests/mochitest/sessionstorage/chrome.toml new file mode 100644 index 0000000000..d08aa43973 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/chrome.toml @@ -0,0 +1,3 @@ +[DEFAULT] + +["test_sessionStorageFromChrome.xhtml"] diff --git a/dom/tests/mochitest/sessionstorage/file_http.html b/dom/tests/mochitest/sessionstorage/file_http.html new file mode 100644 index 0000000000..7825f60c51 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/file_http.html @@ -0,0 +1,40 @@ + + + + + +insecure + + diff --git a/dom/tests/mochitest/sessionstorage/file_https.html b/dom/tests/mochitest/sessionstorage/file_https.html new file mode 100644 index 0000000000..915c54950e --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/file_https.html @@ -0,0 +1,15 @@ + + + + + +secure + + diff --git a/dom/tests/mochitest/sessionstorage/frameEqual.html b/dom/tests/mochitest/sessionstorage/frameEqual.html new file mode 100644 index 0000000000..787f3ee3eb --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/frameEqual.html @@ -0,0 +1,47 @@ + + +slave for sessionStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/frameNotEqual.html b/dom/tests/mochitest/sessionstorage/frameNotEqual.html new file mode 100644 index 0000000000..bdda1baf70 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/frameNotEqual.html @@ -0,0 +1,49 @@ + + +slave for sessionStorage test + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/frameReplace.html b/dom/tests/mochitest/sessionstorage/frameReplace.html new file mode 100644 index 0000000000..bf5579c718 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/frameReplace.html @@ -0,0 +1,75 @@ + + +sessionStorage replace frame + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/interOriginSlave.js b/dom/tests/mochitest/sessionstorage/interOriginSlave.js new file mode 100644 index 0000000000..c4d4231542 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/interOriginSlave.js @@ -0,0 +1,40 @@ +function postMsg(message) { + opener.postMessage(message, "http://mochi.test:8888"); +} + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + //alert("slave got event: "+event.data); + if (event.data == "step") { + if (doStep()) { + postMsg("perf"); + } + + return; + } + + postMsg("Invalid message"); +} + +function ok(a, message) { + if (!a) { + postMsg("FAILURE: " + message); + } else { + postMsg(message); + } +} + +function is(a, b, message) { + if (a != b) { + postMsg("FAILURE: " + message + ", expected " + b + " got " + a); + } else { + postMsg(message + ", expected " + b + " got " + a); + } +} + +function finishTest() { + sessionStorage.clear(); + postMsg("done"); + return false; +} diff --git a/dom/tests/mochitest/sessionstorage/interOriginTest.js b/dom/tests/mochitest/sessionstorage/interOriginTest.js new file mode 100644 index 0000000000..4d2654e5dc --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/interOriginTest.js @@ -0,0 +1,43 @@ +var slaveLoadsPending = 1; + +var slaveOrigin = ""; +var slave = null; + +var failureRegExp = new RegExp("^FAILURE"); +const slavePath = "/tests/dom/tests/mochitest/sessionstorage/"; + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + //alert("master got event: "+event.data); + switch (event.data) { + // Indication of the frame onload event + case "frame loaded": + if (--slaveLoadsPending) { + break; + } + + // Indication of successfully finished step of a test + // Just fall through... + case "perf": + // We called doStep before the frame was load + if (event.data == "perf") { + doStep(); + } + + slave.postMessage("step", slaveOrigin); + break; + + // Indication of all test parts finish (from any of the frames) + case "done": + sessionStorage.clear(); + slaveLoadsPending = 1; + doNextTest(); + break; + + // Any other message indicates error or succes message of a test + default: + SimpleTest.ok(!event.data.match(failureRegExp), event.data); + break; + } +} diff --git a/dom/tests/mochitest/sessionstorage/mochitest.toml b/dom/tests/mochitest/sessionstorage/mochitest.toml new file mode 100644 index 0000000000..b30ef73aa7 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/mochitest.toml @@ -0,0 +1,47 @@ +[DEFAULT] +support-files = [ + "file_http.html", + "file_https.html", + "frameEqual.html", + "frameNotEqual.html", + "frameReplace.html", + "interOriginSlave.js", + "interOriginTest.js", +] + +["test_sessionStorageBase.html"] + +["test_sessionStorageBaseSessionOnly.html"] + +["test_sessionStorageClone.html"] +skip-if = [ + "http3", + "http2", +] + +["test_sessionStorageClone_alwaysPartitioned.html"] +skip-if = [ + "http3", + "http2", + "os == 'android' && xorigin", # bug 1855525 +] + +["test_sessionStorageClone_alwaysPartitioned_exempted.html"] +skip-if = [ + "http3", + "http2", +] + +["test_sessionStorageHttpHttps.html"] +skip-if = [ + "http3", + "http2", +] + +["test_sessionStorageReplace.html"] +skip-if = [ + "http3", + "http2", +] + +["test_sessionStorageUsage.html"] diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageBase.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageBase.html new file mode 100644 index 0000000000..e7538127fe --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageBase.html @@ -0,0 +1,180 @@ + + +sessionStorage basic test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageBaseSessionOnly.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageBaseSessionOnly.html new file mode 100644 index 0000000000..34169decc4 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageBaseSessionOnly.html @@ -0,0 +1,231 @@ + + +sessionStorage basic test, while in sesison only mode + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageClone.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone.html new file mode 100644 index 0000000000..e0045480b2 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone.html @@ -0,0 +1,112 @@ + + +sessionStorage clone equal origins + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned.html new file mode 100644 index 0000000000..384faf2044 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned.html @@ -0,0 +1,110 @@ + + +sessionStorage clone equal origins + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned_exempted.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned_exempted.html new file mode 100644 index 0000000000..3f9e3b331f --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageClone_alwaysPartitioned_exempted.html @@ -0,0 +1,110 @@ + + +sessionStorage clone equal origins + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageFromChrome.xhtml b/dom/tests/mochitest/sessionstorage/test_sessionStorageFromChrome.xhtml new file mode 100644 index 0000000000..1a95a8c91f --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageFromChrome.xhtml @@ -0,0 +1,34 @@ + + +sessionStorage basic test + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageHttpHttps.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageHttpHttps.html new file mode 100644 index 0000000000..e8fbfcca03 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageHttpHttps.html @@ -0,0 +1,59 @@ + + +sessionStorage replace test + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageReplace.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageReplace.html new file mode 100644 index 0000000000..9993d8f789 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageReplace.html @@ -0,0 +1,78 @@ + + +sessionStorage replace test + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/sessionstorage/test_sessionStorageUsage.html b/dom/tests/mochitest/sessionstorage/test_sessionStorageUsage.html new file mode 100644 index 0000000000..db894c9780 --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/test_sessionStorageUsage.html @@ -0,0 +1,53 @@ + + +sessionStorage basic test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameLocalStorageMaster.html b/dom/tests/mochitest/storageevent/frameLocalStorageMaster.html new file mode 100644 index 0000000000..55cbad1d28 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameLocalStorageMaster.html @@ -0,0 +1,63 @@ + + +master frame for event storage propagation + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html new file mode 100644 index 0000000000..ad3738bed2 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html @@ -0,0 +1,55 @@ + + +slave for storage event propagation + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameLocalStorageSlaveNotEqual.html b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveNotEqual.html new file mode 100644 index 0000000000..248604b400 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveNotEqual.html @@ -0,0 +1,39 @@ + + +slave for storage event propagation + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameSessionStorageMasterEqual.html b/dom/tests/mochitest/storageevent/frameSessionStorageMasterEqual.html new file mode 100644 index 0000000000..595e21351b --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameSessionStorageMasterEqual.html @@ -0,0 +1,67 @@ + + +master frame for event storage propagation + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameSessionStorageMasterNotEqual.html b/dom/tests/mochitest/storageevent/frameSessionStorageMasterNotEqual.html new file mode 100644 index 0000000000..6c66e085e0 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameSessionStorageMasterNotEqual.html @@ -0,0 +1,70 @@ + + +master frame for event storage propagation + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameSessionStorageSlaveEqual.html b/dom/tests/mochitest/storageevent/frameSessionStorageSlaveEqual.html new file mode 100644 index 0000000000..c7326e9a89 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameSessionStorageSlaveEqual.html @@ -0,0 +1,59 @@ + + +slave for storage event propagation + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/frameSessionStorageSlaveNotEqual.html b/dom/tests/mochitest/storageevent/frameSessionStorageSlaveNotEqual.html new file mode 100644 index 0000000000..b86b3c02cc --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameSessionStorageSlaveNotEqual.html @@ -0,0 +1,39 @@ + + +slave for storage event propagation + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/interOriginFrame.js b/dom/tests/mochitest/storageevent/interOriginFrame.js new file mode 100644 index 0000000000..f4b3d6c9ab --- /dev/null +++ b/dom/tests/mochitest/storageevent/interOriginFrame.js @@ -0,0 +1,63 @@ +let parentLocation = ""; + +// The first time this gets called in a page, the location of the parent +// should be passed in. This will be used as the target origin argument +// for the postMessage call for all subsequent calls to postMsg(). +function postMsg(message, newParentLocation) { + if (newParentLocation) { + parentLocation = newParentLocation; + } else if (parentLocation == "") { + throw new Error("Failed to pass in newParentLocation"); + } + + parent.postMessage(message, parentLocation); +} + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + if (event.data == "step") { + var performed = false; + try { + performed = doStep(); + } catch (ex) { + postMsg("FAILURE: exception threw at " + location + ":\n" + ex); + finishTest(); + } + + if (performed) { + postMsg("perf"); + } + + return; + } + + if (parent) { + postMsg(event.data); + } +} + +function ok(a, message) { + if (!a) { + postMsg("FAILURE: " + message); + } else { + postMsg(message); + } +} + +function is(a, b, message) { + if (a != b) { + postMsg("FAILURE: " + message + ", expected " + b + " got " + a); + } else { + postMsg(message + ", expected " + b + " got " + a); + } +} + +function todo(a, b, message) { + postMsg("TODO: " + message + ", expected " + b + " got " + a); +} + +function finishTest() { + postMsg("done"); + return false; +} diff --git a/dom/tests/mochitest/storageevent/interOriginTest2.js b/dom/tests/mochitest/storageevent/interOriginTest2.js new file mode 100644 index 0000000000..733f88a32d --- /dev/null +++ b/dom/tests/mochitest/storageevent/interOriginTest2.js @@ -0,0 +1,60 @@ +var frameLoadsPending = 2; + +var callMasterFrame = true; +var testDone = false; + +var masterFrameOrigin = ""; +var slaveFrameOrigin = ""; + +var failureRegExp = new RegExp("^FAILURE"); +var todoRegExp = new RegExp("^TODO"); + +const framePath = "/tests/dom/tests/mochitest/storageevent/"; + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + switch (event.data) { + // Indication of the frame onload event + case "frame loaded": + if (--frameLoadsPending) { + break; + } + + // Indication of successfully finished step of a test + // Just fall through... + case "perf": + if (callMasterFrame) { + masterFrame.postMessage("step", "*"); + } else if (slaveFrame) { + slaveFrame.postMessage("step", "*"); + } else if (masterFrame.slaveFrame) { + masterFrame.slaveFrame.postMessage("step", "*"); + } + callMasterFrame = !callMasterFrame; + break; + + // Indication of all test parts finish (from any of the frames) + case "done": + if (testDone) { + break; + } + + testDone = true; + SimpleTest.finish(); + break; + + // Any other message indicates error, succes or todo message of a test + default: + if (typeof event.data == "undefined") { + break; + } // XXXkhuey this receives undefined values + // (which used to become empty strings) on occasion ... + if (event.data.match(todoRegExp)) { + SimpleTest.todo(false, event.data); + } else { + SimpleTest.ok(!event.data.match(failureRegExp), event.data); + } + break; + } +} diff --git a/dom/tests/mochitest/storageevent/mochitest.toml b/dom/tests/mochitest/storageevent/mochitest.toml new file mode 100644 index 0000000000..6639b94d2a --- /dev/null +++ b/dom/tests/mochitest/storageevent/mochitest.toml @@ -0,0 +1,38 @@ +[DEFAULT] +support-files = [ + "frameLocalStorageMaster.html", + "frameLocalStorageSlaveEqual.html", + "frameLocalStorageSlaveNotEqual.html", + "frameSessionStorageMasterEqual.html", + "frameSessionStorageMasterNotEqual.html", + "frameSessionStorageSlaveEqual.html", + "frameSessionStorageSlaveNotEqual.html", + "interOriginFrame.js", + "interOriginTest2.js", +] + +["test_storageLocalStorageEventCheckNoPropagation.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storageLocalStorageEventCheckPropagation.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storageNotifications.html"] + +["test_storageSessionStorageEventCheckNoPropagation.html"] +skip-if = [ + "http3", + "http2", +] + +["test_storageSessionStorageEventCheckPropagation.html"] +skip-if = [ + "http3", + "http2", +] diff --git a/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckNoPropagation.html b/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckNoPropagation.html new file mode 100644 index 0000000000..ee48abedba --- /dev/null +++ b/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckNoPropagation.html @@ -0,0 +1,43 @@ + + +storage event propagation test + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckPropagation.html b/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckPropagation.html new file mode 100644 index 0000000000..a6d291e147 --- /dev/null +++ b/dom/tests/mochitest/storageevent/test_storageLocalStorageEventCheckPropagation.html @@ -0,0 +1,43 @@ + + +storage event propagation test + + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/test_storageNotifications.html b/dom/tests/mochitest/storageevent/test_storageNotifications.html new file mode 100644 index 0000000000..255de171de --- /dev/null +++ b/dom/tests/mochitest/storageevent/test_storageNotifications.html @@ -0,0 +1,130 @@ + + +sessionStorage basic test + + + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckNoPropagation.html b/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckNoPropagation.html new file mode 100644 index 0000000000..7ffa70dbf6 --- /dev/null +++ b/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckNoPropagation.html @@ -0,0 +1,43 @@ + + +storage event propagation test + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckPropagation.html b/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckPropagation.html new file mode 100644 index 0000000000..4f3402b6bb --- /dev/null +++ b/dom/tests/mochitest/storageevent/test_storageSessionStorageEventCheckPropagation.html @@ -0,0 +1,43 @@ + + +storage event propagation test + + + + + + + + + + + + + + + diff --git a/dom/tests/mochitest/webcomponents/chrome.toml b/dom/tests/mochitest/webcomponents/chrome.toml new file mode 100644 index 0000000000..b29df619c4 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/chrome.toml @@ -0,0 +1,24 @@ +[DEFAULT] +support-files = ["dummy_page.html"] + +["test_custom_element_ensure_custom_element.html"] + +["test_custom_element_htmlconstructor_chrome.html"] +support-files = [ + "htmlconstructor_autonomous_tests.js", + "htmlconstructor_builtin_tests.js", +] + +["test_custom_element_namespace.html"] + +["test_custom_element_namespace.xhtml"] + +["test_custom_element_upgrade_chrome.html"] +support-files = [ + "test_upgrade_page.html", + "upgrade_tests.js", +] + +["test_xul_custom_element.xhtml"] + +["test_xul_shadowdom_accesskey.xhtml"] diff --git a/dom/tests/mochitest/webcomponents/dummy_page.html b/dom/tests/mochitest/webcomponents/dummy_page.html new file mode 100644 index 0000000000..fd238954c6 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/dummy_page.html @@ -0,0 +1,10 @@ + + + +Dummy test page + + + +

      Dummy test page

      + + diff --git a/dom/tests/mochitest/webcomponents/head.js b/dom/tests/mochitest/webcomponents/head.js new file mode 100644 index 0000000000..23c91d63be --- /dev/null +++ b/dom/tests/mochitest/webcomponents/head.js @@ -0,0 +1,26 @@ +/* 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"; + +/** + * Loads an iframe. + * + * @return {Promise} promise that resolves when iframe is loaded. + */ +function createIframe(aSrcDoc) { + return new Promise(function (aResolve, aReject) { + let iframe = document.createElement("iframe"); + iframe.onload = function () { + aResolve(iframe.contentDocument); + }; + iframe.onerror = function () { + aReject("Failed to load iframe"); + }; + if (aSrcDoc) { + iframe.srcdoc = aSrcDoc; + } + document.body.appendChild(iframe); + }); +} diff --git a/dom/tests/mochitest/webcomponents/htmlconstructor_autonomous_tests.js b/dom/tests/mochitest/webcomponents/htmlconstructor_autonomous_tests.js new file mode 100644 index 0000000000..75b42389cc --- /dev/null +++ b/dom/tests/mochitest/webcomponents/htmlconstructor_autonomous_tests.js @@ -0,0 +1,107 @@ +promises.push( + test_with_new_window(testWindow => { + // Test calling the HTMLElement constructor. + (() => { + SimpleTest.doesThrow(() => { + testWindow.HTMLElement(); + }, "calling the HTMLElement constructor should throw a TypeError"); + })(); + + // Test constructing a HTMLELement. + (() => { + SimpleTest.doesThrow(() => { + new testWindow.HTMLElement(); + }, "constructing a HTMLElement should throw a TypeError"); + })(); + + // Test constructing a custom element with defining HTMLElement as entry. + (() => { + testWindow.customElements.define( + "x-defining-html-element", + testWindow.HTMLElement + ); + SimpleTest.doesThrow(() => { + new testWindow.HTMLElement(); + }, "constructing a custom element with defining HTMLElement as registry " + "entry should throw a TypeError"); + })(); + + // Test calling a custom element constructor and constructing an autonomous + // custom element. + (() => { + let num_constructor_invocations = 0; + class X extends testWindow.HTMLElement { + constructor() { + super(); + num_constructor_invocations++; + } + } + testWindow.customElements.define("x-element", X); + SimpleTest.doesThrow(() => { + X(); + }, "calling an autonomous custom element constructor should throw a TypeError"); + + let element = new X(); + SimpleTest.is( + Object.getPrototypeOf(Cu.waiveXrays(element)), + X.prototype, + "constructing an autonomous custom element; " + + "the element should be a registered constructor" + ); + SimpleTest.is( + element.localName, + "x-element", + "constructing an autonomous custom element; " + + 'the element tag name should be "x-element"' + ); + SimpleTest.is( + element.namespaceURI, + "http://www.w3.org/1999/xhtml", + "constructing an autonomous custom element; " + + "the element should be in the HTML namespace" + ); + SimpleTest.is( + element.prefix, + null, + "constructing an autonomous custom element; " + + "the element name should not have a prefix" + ); + SimpleTest.is( + element.ownerDocument, + testWindow.document, + "constructing an autonomous custom element; " + + "the element should be owned by the registry's associated " + + "document" + ); + SimpleTest.is( + num_constructor_invocations, + 1, + "constructing an autonomous custom element; " + + "the constructor should have been invoked once" + ); + })(); + + // Test if prototype is no an object. + (() => { + function ElementWithNonObjectPrototype() { + let o = Reflect.construct(testWindow.HTMLElement, [], new.target); + SimpleTest.is( + Object.getPrototypeOf(Cu.waiveXrays(o)), + window.HTMLElement.prototype, + "constructing an autonomous custom element; " + + "if prototype is not object, fallback from NewTarget's realm" + ); + } + + // Prototype have to be an object during define(), otherwise define will + // throw an TypeError exception. + ElementWithNonObjectPrototype.prototype = {}; + testWindow.customElements.define( + "x-non-object-prototype", + ElementWithNonObjectPrototype + ); + + ElementWithNonObjectPrototype.prototype = "string"; + new ElementWithNonObjectPrototype(); + })(); + }) +); diff --git a/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js b/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js new file mode 100644 index 0000000000..0b72ca3f7a --- /dev/null +++ b/dom/tests/mochitest/webcomponents/htmlconstructor_builtin_tests.js @@ -0,0 +1,282 @@ +[ + // [TagName, InterfaceName] + ["a", "Anchor"], + ["abbr", ""], + ["acronym", ""], + ["address", ""], + ["area", "Area"], + ["article", ""], + ["aside", ""], + ["audio", "Audio"], + ["b", ""], + ["base", "Base"], + ["basefont", ""], + ["bdo", ""], + ["big", ""], + ["blockquote", "Quote"], + ["body", "Body"], + ["br", "BR"], + ["button", "Button"], + ["canvas", "Canvas"], + ["caption", "TableCaption"], + ["center", ""], + ["cite", ""], + ["code", ""], + ["col", "TableCol"], + ["colgroup", "TableCol"], + ["data", "Data"], + ["datalist", "DataList"], + ["dd", ""], + ["del", "Mod"], + ["details", "Details"], + ["dfn", ""], + ["dir", "Directory"], + ["div", "Div"], + ["dl", "DList"], + ["dt", ""], + ["em", ""], + ["embed", "Embed"], + ["fieldset", "FieldSet"], + ["figcaption", ""], + ["figure", ""], + ["font", "Font"], + ["footer", ""], + ["form", "Form"], + ["frame", "Frame"], + ["frameset", "FrameSet"], + ["h1", "Heading"], + ["h2", "Heading"], + ["h3", "Heading"], + ["h4", "Heading"], + ["h5", "Heading"], + ["h6", "Heading"], + ["head", "Head"], + ["header", ""], + ["hgroup", ""], + ["hr", "HR"], + ["html", "Html"], + ["i", ""], + ["iframe", "IFrame"], + ["image", ""], + ["img", "Image"], + ["input", "Input"], + ["ins", "Mod"], + ["kbd", ""], + ["label", "Label"], + ["legend", "Legend"], + ["li", "LI"], + ["link", "Link"], + ["listing", "Pre"], + ["main", ""], + ["map", "Map"], + ["mark", ""], + ["marquee", "Marquee"], + ["menu", "Menu"], + ["meta", "Meta"], + ["meter", "Meter"], + ["nav", ""], + ["nobr", ""], + ["noembed", ""], + ["noframes", ""], + ["noscript", ""], + ["object", "Object"], + ["ol", "OList"], + ["optgroup", "OptGroup"], + ["option", "Option"], + ["output", "Output"], + ["p", "Paragraph"], + ["param", "Param"], + ["picture", "Picture"], + ["plaintext", ""], + ["pre", "Pre"], + ["progress", "Progress"], + ["q", "Quote"], + ["rb", ""], + ["rp", ""], + ["rt", ""], + ["rtc", ""], + ["ruby", ""], + ["s", ""], + ["samp", ""], + ["script", "Script"], + ["section", ""], + ["select", "Select"], + ["small", ""], + ["source", "Source"], + ["span", "Span"], + ["strike", ""], + ["strong", ""], + ["style", "Style"], + ["sub", ""], + ["summary", ""], + ["sup", ""], + ["table", "Table"], + ["tbody", "TableSection"], + ["td", "TableCell"], + ["textarea", "TextArea"], + ["tfoot", "TableSection"], + ["th", "TableCell"], + ["thead", "TableSection"], + ["template", "Template"], + ["time", "Time"], + ["title", "Title"], + ["tr", "TableRow"], + ["track", "Track"], + ["tt", ""], + ["u", ""], + ["ul", "UList"], + ["var", ""], + ["video", "Video"], + ["wbr", ""], + ["xmp", "Pre"], +].forEach(e => { + let tagName = e[0]; + let interfaceName = "HTML" + e[1] + "Element"; + promises.push( + test_with_new_window(testWindow => { + // Use window from iframe to isolate the test. + // Test calling the HTML*Element constructor. + (() => { + SimpleTest.doesThrow(() => { + testWindow[interfaceName](); + }, "calling the " + interfaceName + " constructor should throw a TypeError"); + })(); + + // Test constructing a HTML*ELement. + (() => { + SimpleTest.doesThrow(() => { + new testWindow[interfaceName](); + }, "constructing a " + interfaceName + " should throw a TypeError"); + })(); + + // Test constructing a custom element with defining HTML*Element as entry. + (() => { + testWindow.customElements.define( + "x-defining-" + tagName, + testWindow[interfaceName] + ); + SimpleTest.doesThrow(() => { + new testWindow[interfaceName](); + }, "constructing a custom element with defining " + interfaceName + " as registry entry should throw a TypeError"); + })(); + + // Since HTMLElement can be registered without specifying "extends", skip + // testing HTMLElement tags. + if (interfaceName !== "HTMLElement") { + // Test constructing a customized HTML*Element with defining a registry entry + // without specifying "extends". + (() => { + class X extends testWindow[interfaceName] {} + testWindow.customElements.define("x-defining-invalid-" + tagName, X); + SimpleTest.doesThrow(() => { + new X(); + }, "constructing a customized " + interfaceName + " with defining a " + 'registry entry without specifying "extends" should throw a TypeError'); + })(); + } + + // Test constructing a built-in custom element with defining a registry entry + // with incorrect "extends" information. + (() => { + class X extends testWindow[interfaceName] {} + testWindow.customElements.define("x-defining-incorrect-" + tagName, X, { + extends: tagName === "img" ? "p" : "img", + }); + SimpleTest.doesThrow(() => { + new X(); + }, "constructing a customized " + interfaceName + " with defining a " + 'registry entry with incorrect "extends" should throw a TypeError'); + })(); + + // Test calling a custom element constructor and constructing a built-in + // custom element. + (() => { + let num_constructor_invocations = 0; + class X extends testWindow[interfaceName] { + constructor() { + super(); + num_constructor_invocations++; + } + } + testWindow.customElements.define("x-" + tagName, X, { + extends: tagName, + }); + SimpleTest.doesThrow(() => { + X(); + }, "calling a customized " + interfaceName + " constructor should throw a TypeError"); + + let element = new X(); + + SimpleTest.is( + Object.getPrototypeOf(Cu.waiveXrays(element)), + X.prototype, + "constructing a customized " + + interfaceName + + "; the element should be a registered constructor" + ); + SimpleTest.is( + element.localName, + tagName, + "constructing a customized " + + interfaceName + + '; the element tag name should be "' + + tagName + + '"' + ); + SimpleTest.is( + element.namespaceURI, + "http://www.w3.org/1999/xhtml", + "constructing a customized " + + interfaceName + + "; the element should be in the HTML namespace" + ); + SimpleTest.is( + element.prefix, + null, + "constructing a customized " + + interfaceName + + "; the element name should not have a prefix" + ); + SimpleTest.is( + element.ownerDocument, + testWindow.document, + "constructing a customized " + + interfaceName + + "; the element should be owned by the registry's associated " + + "document" + ); + SimpleTest.is( + num_constructor_invocations, + 1, + "constructing a customized " + + interfaceName + + "; the constructor should have been invoked once" + ); + })(); + + // Test if prototype is no an object. + (() => { + function ElementWithNonObjectPrototype() { + let o = Reflect.construct(testWindow[interfaceName], [], new.target); + SimpleTest.is( + Object.getPrototypeOf(Cu.waiveXrays(o)), + window[interfaceName].prototype, + "constructing a customized " + + interfaceName + + "; if prototype is not object, fallback from NewTarget's realm" + ); + } + + // Prototype have to be an object during define(), otherwise define will + // throw an TypeError exception. + ElementWithNonObjectPrototype.prototype = {}; + testWindow.customElements.define( + "x-non-object-prototype-" + tagName, + ElementWithNonObjectPrototype, + { extends: tagName } + ); + + ElementWithNonObjectPrototype.prototype = "string"; + new ElementWithNonObjectPrototype(); + })(); + }) + ); +}); diff --git a/dom/tests/mochitest/webcomponents/inert_style.css b/dom/tests/mochitest/webcomponents/inert_style.css new file mode 100644 index 0000000000..3b005ede8c --- /dev/null +++ b/dom/tests/mochitest/webcomponents/inert_style.css @@ -0,0 +1,10 @@ +/* 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/. */ + +/* This style is linked in test_shadowroot_inert_link to ensure + that link element in ShadowRoot is inert. */ +span { + padding-top: 10px; +} + diff --git a/dom/tests/mochitest/webcomponents/mochitest.toml b/dom/tests/mochitest/webcomponents/mochitest.toml new file mode 100644 index 0000000000..8b9dad41d5 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/mochitest.toml @@ -0,0 +1,90 @@ +[DEFAULT] +support-files = [ + "inert_style.css", + "dummy_page.html", + "head.js", +] + +["test_bug900724.html"] + +["test_bug1017896.html"] + +["test_bug1269155.html"] + +["test_bug1276240.html"] + +["test_custom_element_callback_innerhtml.html"] + +["test_custom_element_define.html"] + +["test_custom_element_define_parser.html"] + +["test_custom_element_get.html"] + +["test_custom_element_htmlconstructor.html"] +support-files = [ + "htmlconstructor_autonomous_tests.js", + "htmlconstructor_builtin_tests.js", +] + +["test_custom_element_in_shadow.html"] + +["test_custom_element_lifecycle.html"] + +["test_custom_element_set_element_creation_callback.html"] + +["test_custom_element_stack.html"] + +["test_custom_element_template.html"] + +["test_custom_element_throw_on_dynamic_markup_insertion.html"] + +["test_custom_element_uncatchable_exception.html"] +run-if = ["debug"] # TestFunctions only applied in debug builds + +["test_custom_element_upgrade.html"] +support-files = [ + "test_upgrade_page.html", + "upgrade_tests.js", +] + +["test_custom_element_when_defined.html"] + +["test_declarative_shadowdom_failure_log.html"] + +["test_declarative_shadowdom_reentry.html"] + +["test_detached_style.html"] + +["test_document_adoptnode.html"] + +["test_document_importnode.html"] + +["test_event_composed.html"] + +["test_event_retarget.html"] + +["test_event_stopping.html"] + +["test_link_prefetch.html"] + +["test_shadowdom_active_pseudo_class.html"] +support-files = ["!/gfx/layers/apz/test/mochitest/apz_test_utils.js"] + +["test_shadowdom_ime.html"] + +["test_shadowroot.html"] + +["test_shadowroot_clonenode.html"] + +["test_shadowroot_inert_element.html"] + +["test_shadowroot_style.html"] + +["test_shadowroot_style_order.html"] + +["test_style_fallback_content.html"] + +["test_template.html"] + +["test_template_xhtml.html"] diff --git a/dom/tests/mochitest/webcomponents/test_bug1017896.html b/dom/tests/mochitest/webcomponents/test_bug1017896.html new file mode 100644 index 0000000000..53562e9251 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_bug1017896.html @@ -0,0 +1,32 @@ + + + + + Test template element in stale document. + + + + +Bug 1017896 +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_bug1269155.html b/dom/tests/mochitest/webcomponents/test_bug1269155.html new file mode 100644 index 0000000000..6464ca92e7 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_bug1269155.html @@ -0,0 +1,95 @@ + + + + + Test for Bug 1269155 + + + + + + +Mozilla Bug 1269155 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_bug1276240.html b/dom/tests/mochitest/webcomponents/test_bug1276240.html new file mode 100644 index 0000000000..220f005138 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_bug1276240.html @@ -0,0 +1,44 @@ + + + + + Test for Bug 1276240 + + + + + +Mozilla Bug 1276240 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/webcomponents/test_bug900724.html b/dom/tests/mochitest/webcomponents/test_bug900724.html new file mode 100644 index 0000000000..19abc37ac8 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_bug900724.html @@ -0,0 +1,32 @@ + + + + + Test for form-association in template contents. + + + + +Bug 900724 +
      +
      +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_callback_innerhtml.html b/dom/tests/mochitest/webcomponents/test_custom_element_callback_innerhtml.html new file mode 100644 index 0000000000..c8a8d872ed --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_callback_innerhtml.html @@ -0,0 +1,43 @@ + + + + + Test for connected callback for element created in the document by the parser + + + + +Bug 1102502 +
      + + + + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_define.html b/dom/tests/mochitest/webcomponents/test_custom_element_define.html new file mode 100644 index 0000000000..7ab5ed44aa --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_define.html @@ -0,0 +1,129 @@ + + + + + Test for customElements.define + + + + +Bug 783129 +
      + +
      + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_define_parser.html b/dom/tests/mochitest/webcomponents/test_custom_element_define_parser.html new file mode 100644 index 0000000000..dc247220d4 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_define_parser.html @@ -0,0 +1,61 @@ + + + + + Test for customElements.define for elements created by the parser + + + + + +Bug 783129 + + + +
      + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_ensure_custom_element.html b/dom/tests/mochitest/webcomponents/test_custom_element_ensure_custom_element.html new file mode 100644 index 0000000000..03ed2e3815 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_ensure_custom_element.html @@ -0,0 +1,55 @@ + + + + + + Test for customElements.ensureCustomElement + + + + + +

      + +
      
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_get.html b/dom/tests/mochitest/webcomponents/test_custom_element_get.html
      new file mode 100644
      index 0000000000..0688d21aaa
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_get.html
      @@ -0,0 +1,31 @@
      +
      +
      +
      +
      +  Test custom elements get function.
      +  
      +  
      +
      +
      +
      +Bug 1275838
      +
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor.html b/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor.html
      new file mode 100644
      index 0000000000..c295a15038
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor.html
      @@ -0,0 +1,42 @@
      +
      +
      +
      +
      +  Test HTMLConstructor for custom elements.
      +  
      +  
      +
      +
      +Bug 1274159
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor_chrome.html b/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor_chrome.html
      new file mode 100644
      index 0000000000..2adb0aac28
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_htmlconstructor_chrome.html
      @@ -0,0 +1,40 @@
      +
      +
      +
      +
      +  Test HTMLConstructor for custom elements.
      +  
      +  
      +
      +
      +Bug 1274159
      +
      +
      +
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_in_shadow.html b/dom/tests/mochitest/webcomponents/test_custom_element_in_shadow.html
      new file mode 100644
      index 0000000000..4371d296ce
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_in_shadow.html
      @@ -0,0 +1,129 @@
      +
      +
      +
      +
      +  Test for custom element callbacks in shadow DOM.
      +  
      +  
      +  
      +
      +
      +Bug 1087460
      +
      +
      +
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_lifecycle.html b/dom/tests/mochitest/webcomponents/test_custom_element_lifecycle.html
      new file mode 100644
      index 0000000000..a02d0b297b
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_lifecycle.html
      @@ -0,0 +1,432 @@
      +
      +
      +
      +
      +  Test for custom elements lifecycle callback
      +  
      +
      +
      +
      +Bug 783129
      +
      + + +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_namespace.html b/dom/tests/mochitest/webcomponents/test_custom_element_namespace.html new file mode 100644 index 0000000000..a4dc4c40cc --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_namespace.html @@ -0,0 +1,95 @@ + + + + Custom Elements in an HTML document + + + + + +

      +
      + + +
      +
      
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_namespace.xhtml b/dom/tests/mochitest/webcomponents/test_custom_element_namespace.xhtml
      new file mode 100644
      index 0000000000..5bfdd779ad
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_namespace.xhtml
      @@ -0,0 +1,104 @@
      +
      +
      +
      +
      +  Custom Elements in an XHTML document
      +  
      +  
      +  
      +
      +
      +  

      +
      + + + + +
      +
      
      +
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_set_element_creation_callback.html b/dom/tests/mochitest/webcomponents/test_custom_element_set_element_creation_callback.html
      new file mode 100644
      index 0000000000..6a8f127d93
      --- /dev/null
      +++ b/dom/tests/mochitest/webcomponents/test_custom_element_set_element_creation_callback.html
      @@ -0,0 +1,159 @@
      +
      +
      +
      +
      +  Test for customElements.setElementCreationCallback
      +  
      +  
      +
      +
      +Bug 1460815
      +
      +
      + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_stack.html b/dom/tests/mochitest/webcomponents/test_custom_element_stack.html new file mode 100644 index 0000000000..1b20103eb7 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_stack.html @@ -0,0 +1,138 @@ + + + + + Test for custom elements lifecycle callback + + + + +Bug 783129 +
      +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_template.html b/dom/tests/mochitest/webcomponents/test_custom_element_template.html new file mode 100644 index 0000000000..f077f84ebe --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_template.html @@ -0,0 +1,33 @@ + + + + + Test for custom elements in template + + + + + +Bug 1091425 + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_throw_on_dynamic_markup_insertion.html b/dom/tests/mochitest/webcomponents/test_custom_element_throw_on_dynamic_markup_insertion.html new file mode 100644 index 0000000000..6c8c5e032c --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_throw_on_dynamic_markup_insertion.html @@ -0,0 +1,66 @@ + + + + + Test throw on dynamic markup insertion when creating element synchronously from parser + + + + +Bug 1378079 +
      + + + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_uncatchable_exception.html b/dom/tests/mochitest/webcomponents/test_custom_element_uncatchable_exception.html new file mode 100644 index 0000000000..96c2add0dd --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_uncatchable_exception.html @@ -0,0 +1,37 @@ + + + + + Test custom elements runtime exception + + + + +Bug 1407669 + + + diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_upgrade.html b/dom/tests/mochitest/webcomponents/test_custom_element_upgrade.html new file mode 100644 index 0000000000..5759925cfa --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_upgrade.html @@ -0,0 +1,41 @@ + + + + + Test upgrade steps for custom elements. + + + + +Bug 1299363 + + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_upgrade_chrome.html b/dom/tests/mochitest/webcomponents/test_custom_element_upgrade_chrome.html new file mode 100644 index 0000000000..5913fc8601 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_upgrade_chrome.html @@ -0,0 +1,43 @@ + + + + + Test upgrade steps for custom elements. + + + + +Bug 1299363 + + + + + + \ No newline at end of file diff --git a/dom/tests/mochitest/webcomponents/test_custom_element_when_defined.html b/dom/tests/mochitest/webcomponents/test_custom_element_when_defined.html new file mode 100644 index 0000000000..04cca31581 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_custom_element_when_defined.html @@ -0,0 +1,140 @@ + + + + + Test custom elements whenDefined function. + + + + +Bug 1275839 + + + + diff --git a/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_failure_log.html b/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_failure_log.html new file mode 100644 index 0000000000..04a7bd3ead --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_failure_log.html @@ -0,0 +1,37 @@ + + + + + Test for Logging of Declarative ShadowDOM attachment failure + + + + + +Bug 1870055 + + + diff --git a/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_reentry.html b/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_reentry.html new file mode 100644 index 0000000000..fce2037afe --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_declarative_shadowdom_reentry.html @@ -0,0 +1,25 @@ + + + + + Test for Logging of Declarative ShadowDOM attachment failure + + + + + diff --git a/dom/tests/mochitest/webcomponents/test_detached_style.html b/dom/tests/mochitest/webcomponents/test_detached_style.html new file mode 100644 index 0000000000..4fc32d6650 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_detached_style.html @@ -0,0 +1,35 @@ + + + + + Test for creating style in shadow root of host not in document. + + + + + +Bug 1062578 + + + diff --git a/dom/tests/mochitest/webcomponents/test_document_adoptnode.html b/dom/tests/mochitest/webcomponents/test_document_adoptnode.html new file mode 100644 index 0000000000..50f35a55df --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_document_adoptnode.html @@ -0,0 +1,42 @@ + + + + + Test for Bug 1177991 + + + + + + +Mozilla Bug 1177991 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/webcomponents/test_document_importnode.html b/dom/tests/mochitest/webcomponents/test_document_importnode.html new file mode 100644 index 0000000000..e56fcacf27 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_document_importnode.html @@ -0,0 +1,42 @@ + + + + + Test for Bug 1177914 + + + + + + +Mozilla Bug 1177914 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/webcomponents/test_event_composed.html b/dom/tests/mochitest/webcomponents/test_event_composed.html new file mode 100644 index 0000000000..b96cd5f9dc --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_event_composed.html @@ -0,0 +1,72 @@ + + + + Test for composed event in web components + + + + + + +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_event_retarget.html b/dom/tests/mochitest/webcomponents/test_event_retarget.html new file mode 100644 index 0000000000..05b4fa3ebe --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_event_retarget.html @@ -0,0 +1,153 @@ + + + + + Test for event retargeting in web components + + + + + +Bug 887541 + + + diff --git a/dom/tests/mochitest/webcomponents/test_event_stopping.html b/dom/tests/mochitest/webcomponents/test_event_stopping.html new file mode 100644 index 0000000000..c90988d869 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_event_stopping.html @@ -0,0 +1,174 @@ + + + + + Test for event model in web components + + + + + +Bug 887541 + + + diff --git a/dom/tests/mochitest/webcomponents/test_link_prefetch.html b/dom/tests/mochitest/webcomponents/test_link_prefetch.html new file mode 100644 index 0000000000..c376ec1981 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_link_prefetch.html @@ -0,0 +1,110 @@ + + + + + Test Prefetch (bug 580313) + + + + +Mozilla Bug 580313 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowdom_active_pseudo_class.html b/dom/tests/mochitest/webcomponents/test_shadowdom_active_pseudo_class.html new file mode 100644 index 0000000000..23abcab426 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowdom_active_pseudo_class.html @@ -0,0 +1,62 @@ + + +Test :active pseudo-class in shadow DOM + + + + + +Bug 1782142 +
      + diff --git a/dom/tests/mochitest/webcomponents/test_shadowdom_ime.html b/dom/tests/mochitest/webcomponents/test_shadowdom_ime.html new file mode 100644 index 0000000000..e023ff04a2 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowdom_ime.html @@ -0,0 +1,59 @@ + + + + + Test for Bug 1429982 + + + + + +Mozilla Bug 1553852 +

      +
      +
      +
      +
      +
      +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowroot.html b/dom/tests/mochitest/webcomponents/test_shadowroot.html new file mode 100644 index 0000000000..07bc8b3fcd --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowroot.html @@ -0,0 +1,77 @@ + + + + + Test for ShadowRoot + + + + + +Bug 806506 + + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowroot_clonenode.html b/dom/tests/mochitest/webcomponents/test_shadowroot_clonenode.html new file mode 100644 index 0000000000..e344615596 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowroot_clonenode.html @@ -0,0 +1,46 @@ + + + + + Test for Bug 1429982 + + + + + + +Mozilla Bug 1429982 +

      + +
      +
      +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowroot_inert_element.html b/dom/tests/mochitest/webcomponents/test_shadowroot_inert_element.html new file mode 100644 index 0000000000..7fd5f78122 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowroot_inert_element.html @@ -0,0 +1,30 @@ + + + + + Test for inert elements in ShadowRoot + + + + + +Bug 806506 + + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowroot_style.html b/dom/tests/mochitest/webcomponents/test_shadowroot_style.html new file mode 100644 index 0000000000..824a8decea --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowroot_style.html @@ -0,0 +1,85 @@ + + + + + Test for ShadowRoot styling + + + + + +Bug 806506 + + + + diff --git a/dom/tests/mochitest/webcomponents/test_shadowroot_style_order.html b/dom/tests/mochitest/webcomponents/test_shadowroot_style_order.html new file mode 100644 index 0000000000..05976a934a --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_shadowroot_style_order.html @@ -0,0 +1,52 @@ + + + + + Test for ShadowRoot style order + + + + + +Bug 806506 + + + diff --git a/dom/tests/mochitest/webcomponents/test_style_fallback_content.html b/dom/tests/mochitest/webcomponents/test_style_fallback_content.html new file mode 100644 index 0000000000..33aef21322 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_style_fallback_content.html @@ -0,0 +1,39 @@ + + + + + Test for styling fallback content + + + + + +Bug 806506 + + + diff --git a/dom/tests/mochitest/webcomponents/test_template.html b/dom/tests/mochitest/webcomponents/test_template.html new file mode 100644 index 0000000000..8e663b2c93 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_template.html @@ -0,0 +1,153 @@ + + + + + Test for template element + + + + + + +Bug 818976 + + + +
      + + + + + + + + +
      + + + diff --git a/dom/tests/mochitest/webcomponents/test_template_xhtml.html b/dom/tests/mochitest/webcomponents/test_template_xhtml.html new file mode 100644 index 0000000000..b14e5c365a --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_template_xhtml.html @@ -0,0 +1,46 @@ + + + + + Test for template element + + + + +Bug 1011831 + + + diff --git a/dom/tests/mochitest/webcomponents/test_upgrade_page.html b/dom/tests/mochitest/webcomponents/test_upgrade_page.html new file mode 100644 index 0000000000..d1822b715e --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_upgrade_page.html @@ -0,0 +1,11 @@ + + + +Upgrade test page + + + +

      Upgrade test page

      + + + \ No newline at end of file diff --git a/dom/tests/mochitest/webcomponents/test_xul_custom_element.xhtml b/dom/tests/mochitest/webcomponents/test_xul_custom_element.xhtml new file mode 100644 index 0000000000..0e172cb70d --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_xul_custom_element.xhtml @@ -0,0 +1,386 @@ + + + + + + XUL Custom Elements + + + + +

      + +
      
      +  
      +
      diff --git a/dom/tests/mochitest/webcomponents/test_xul_shadowdom_accesskey.xhtml b/dom/tests/mochitest/webcomponents/test_xul_shadowdom_accesskey.xhtml new file mode 100644 index 0000000000..79fb167276 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/test_xul_shadowdom_accesskey.xhtml @@ -0,0 +1,60 @@ + + + + + + + diff --git a/dom/tests/mochitest/webcomponents/upgrade_tests.js b/dom/tests/mochitest/webcomponents/upgrade_tests.js new file mode 100644 index 0000000000..85cff984f0 --- /dev/null +++ b/dom/tests/mochitest/webcomponents/upgrade_tests.js @@ -0,0 +1,128 @@ +function test_upgrade(f, msg) { + // Run upgrading test on an element created by HTML parser. + test_with_new_window(function (testWindow, testMsg) { + let elementParser = testWindow.document.querySelector("unresolved-element"); + f(testWindow, elementParser, testMsg); + }, msg + " (HTML parser)"); + + // Run upgrading test on an element created by document.createElement. + test_with_new_window(function (testWindow, testMsg) { + let element = testWindow.document.createElement("unresolved-element"); + testWindow.document.documentElement.appendChild(element); + f(testWindow, element, testMsg); + }, msg + " (document.createElement)"); +} + +// Test cases + +test_upgrade(function (testWindow, testElement, msg) { + class MyCustomElement extends testWindow.HTMLElement {} + testWindow.customElements.define("unresolved-element", MyCustomElement); + SimpleTest.is( + Object.getPrototypeOf(Cu.waiveXrays(testElement)), + MyCustomElement.prototype, + msg + ); +}, "Custom element must be upgraded if there is a matching definition"); + +test_upgrade(function (testWindow, testElement, msg) { + testElement.remove(); + class MyCustomElement extends testWindow.HTMLElement {} + testWindow.customElements.define("unresolved-element", MyCustomElement); + SimpleTest.is( + Object.getPrototypeOf(testElement), + testWindow.HTMLElement.prototype, + msg + ); +}, "Custom element must not be upgraded if it has been removed from tree"); + +test_upgrade(function (testWindow, testElement, msg) { + let exceptionToThrow = { name: "exception thrown by a custom constructor" }; + class ThrowCustomElement extends testWindow.HTMLElement { + constructor() { + super(); + if (exceptionToThrow) { + throw exceptionToThrow; + } + } + } + + let uncaughtError; + window.onerror = function (message, url, lineNumber, columnNumber, error) { + uncaughtError = error; + return true; + }; + testWindow.customElements.define("unresolved-element", ThrowCustomElement); + + SimpleTest.is(uncaughtError.name, exceptionToThrow.name, msg); +}, "Upgrading must report an exception thrown by a custom element constructor"); + +test_upgrade(function (testWindow, testElement, msg) { + class InstantiatesItselfAfterSuper extends testWindow.HTMLElement { + constructor(doNotCreateItself) { + super(); + if (!doNotCreateItself) { + new InstantiatesItselfAfterSuper(true); + } + } + } + + let uncaughtError; + window.onerror = function (message, url, lineNumber, columnNumber, error) { + uncaughtError = error; + return true; + }; + testWindow.customElements.define( + "unresolved-element", + InstantiatesItselfAfterSuper + ); + + SimpleTest.is(uncaughtError.name, "TypeError", msg); +}, "Upgrading must report an TypeError when the top of the " + + "construction stack is marked AlreadyConstructed"); + +test_upgrade(function (testWindow, testElement, msg) { + class InstantiatesItselfBeforeSuper extends testWindow.HTMLElement { + constructor(doNotCreateItself) { + if (!doNotCreateItself) { + new InstantiatesItselfBeforeSuper(true); + } + super(); + } + } + + let uncaughtError; + window.onerror = function (message, url, lineNumber, columnNumber, error) { + uncaughtError = error; + return true; + }; + testWindow.customElements.define( + "unresolved-element", + InstantiatesItselfBeforeSuper + ); + + SimpleTest.is(uncaughtError.name, "TypeError", msg); +}, "Upgrading must report an TypeError when the top of the " + + "construction stack is marked AlreadyConstructed due to a custom element " + + "constructor constructing itself before super() call"); + +test_upgrade(function (testWindow, testElement, msg) { + class MyOtherElement extends testWindow.HTMLElement { + constructor() { + super(); + if (this == testElement) { + return testWindow.document.createElement("other-element"); + } + } + } + + let uncaughtError; + window.onerror = function (message, url, lineNumber, columnNumber, error) { + uncaughtError = error; + return true; + }; + testWindow.customElements.define("unresolved-element", MyOtherElement); + + SimpleTest.is(uncaughtError.name, "TypeError", msg); +}, "Upgrading must report an TypeError when the returned element is " + + "not SameValue as the upgraded element"); diff --git a/dom/tests/mochitest/whatwg/chrome.toml b/dom/tests/mochitest/whatwg/chrome.toml new file mode 100644 index 0000000000..9ec68ac282 --- /dev/null +++ b/dom/tests/mochitest/whatwg/chrome.toml @@ -0,0 +1,3 @@ +[DEFAULT] + +["test_postMessage_chrome.html"] diff --git a/dom/tests/mochitest/whatwg/file_bug500328_1.html b/dom/tests/mochitest/whatwg/file_bug500328_1.html new file mode 100644 index 0000000000..941cb47c55 --- /dev/null +++ b/dom/tests/mochitest/whatwg/file_bug500328_1.html @@ -0,0 +1,51 @@ + + + + +test 1 + + + + + +Link Anchor1 +Self + + diff --git a/dom/tests/mochitest/whatwg/file_bug500328_2.html b/dom/tests/mochitest/whatwg/file_bug500328_2.html new file mode 100644 index 0000000000..3ce66493dd --- /dev/null +++ b/dom/tests/mochitest/whatwg/file_bug500328_2.html @@ -0,0 +1,17 @@ + + + + + + + +file_bug500328_2.html + + diff --git a/dom/tests/mochitest/whatwg/file_structuredCloneAndExposed.sjs b/dom/tests/mochitest/whatwg/file_structuredCloneAndExposed.sjs new file mode 100644 index 0000000000..e352078e2a --- /dev/null +++ b/dom/tests/mochitest/whatwg/file_structuredCloneAndExposed.sjs @@ -0,0 +1,22 @@ +"use strict"; + +function handleRequest(request, response) { + let query = new URLSearchParams(request.queryString); + + response.setHeader("Content-Type", "application/javascript"); + + let content = `function installListeners(input, target) { + input.addEventListener("message", () => { + target.postMessage(true, { targetOrigin: "*" }); + }); + input.addEventListener("messageerror", () => { + target.postMessage(false, { targetOrigin: "*" }); + }); + target.postMessage("Inited", { targetOrigin: "*" }); + } + + ${query.get("additionalScript")} + `; + + response.write(content); +} diff --git a/dom/tests/mochitest/whatwg/mochitest.toml b/dom/tests/mochitest/whatwg/mochitest.toml new file mode 100644 index 0000000000..fd20629a9c --- /dev/null +++ b/dom/tests/mochitest/whatwg/mochitest.toml @@ -0,0 +1,122 @@ +[DEFAULT] +support-files = [ + "postMessage_chrome_helper.html", + "postMessage_closed_helper.html", + "postMessage_hash.html", + "postMessage_helper.html", + "postMessage_idn_helper.html", + "postMessage_joined_helper2.html", + "postMessage_joined_helper.html", + "postMessage_onOther.html", + "postMessage_origin_helper.xhtml", + "postMessage_override_helper.html", + "postMessage_structured_clone_helper.html", + "postMessage_structured_clone_helper.js", + "postMessage_throw_helper.html", + "postMessage_transfer_helper.html", + "postMessage_userpass_helper.html", +] + +["test_MessageEvent.html"] + +["test_MessageEvent_dispatchToOther.html"] +skip-if = [ + "http3", + "http2", +] + +["test_bug477323.html"] + +["test_bug500328.html"] +skip-if = ["true"] # bug 696306 +support-files = [ + "file_bug500328_1.html", + "file_bug500328_2.html", +] + +["test_document_scripts.html"] + +["test_postMessage.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_basehref.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_closed.html"] +skip-if = [ + "os == 'android'", #bug 894914 - wrong data - got FAIL, expected message + "http3", + "http2", +] + +["test_postMessage_hash.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_idn.xhtml"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_joined.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_onOther.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_origin.xhtml"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_override.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_special.xhtml"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_structured_clone.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_throw.html"] + +["test_postMessage_transfer.html"] +skip-if = [ + "http3", + "http2", +] + +["test_postMessage_userpass.html"] +skip-if = [ + "http3", + "http2", +] + +["test_structuredCloneAndExposed.html"] +scheme = "https" +support-files = ["file_structuredCloneAndExposed.sjs"] diff --git a/dom/tests/mochitest/whatwg/postMessage_chrome_helper.html b/dom/tests/mochitest/whatwg/postMessage_chrome_helper.html new file mode 100644 index 0000000000..eea07f538c --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_chrome_helper.html @@ -0,0 +1,49 @@ + + + + postMessage chrome message receiver + + + +

      example.org

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_closed_helper.html b/dom/tests/mochitest/whatwg/postMessage_closed_helper.html new file mode 100644 index 0000000000..984ed08e71 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_closed_helper.html @@ -0,0 +1,26 @@ + + + + postMessage closed page + + + + + diff --git a/dom/tests/mochitest/whatwg/postMessage_hash.html b/dom/tests/mochitest/whatwg/postMessage_hash.html new file mode 100644 index 0000000000..a7225153be --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_hash.html @@ -0,0 +1,31 @@ + + + + Hashed kid for test_postMessage_hash.html + + + +

      Kid iframe

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_helper.html b/dom/tests/mochitest/whatwg/postMessage_helper.html new file mode 100644 index 0000000000..2d01214707 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_helper.html @@ -0,0 +1,102 @@ + + + + postMessage message receiver + + + +

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_idn_helper.html b/dom/tests/mochitest/whatwg/postMessage_idn_helper.html new file mode 100644 index 0000000000..b401fd9933 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_idn_helper.html @@ -0,0 +1,41 @@ + + + + postMessage IDN test page + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_joined_helper.html b/dom/tests/mochitest/whatwg/postMessage_joined_helper.html new file mode 100644 index 0000000000..aa40909017 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_joined_helper.html @@ -0,0 +1,85 @@ + + + + + postMessage joined domains, inner frame + + + +

      No location!

      + + + + + diff --git a/dom/tests/mochitest/whatwg/postMessage_joined_helper2.html b/dom/tests/mochitest/whatwg/postMessage_joined_helper2.html new file mode 100644 index 0000000000..0f6c063cc4 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_joined_helper2.html @@ -0,0 +1,71 @@ + + + + + postMessage joined domains, innermost frame + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_onOther.html b/dom/tests/mochitest/whatwg/postMessage_onOther.html new file mode 100644 index 0000000000..9d60d9ef24 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_onOther.html @@ -0,0 +1,109 @@ + + + + postMessage called through another frame + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_origin_helper.xhtml b/dom/tests/mochitest/whatwg/postMessage_origin_helper.xhtml new file mode 100644 index 0000000000..955b2de83f --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_origin_helper.xhtml @@ -0,0 +1,42 @@ + + + + postMessage origin-testing helper page + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_override_helper.html b/dom/tests/mochitest/whatwg/postMessage_override_helper.html new file mode 100644 index 0000000000..901e3af7bb --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_override_helper.html @@ -0,0 +1,37 @@ + + + + Overriding postMessage and dispatchEvent bindings + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html b/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html new file mode 100644 index 0000000000..2b6e9d1f46 --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html @@ -0,0 +1,106 @@ + + + + postMessage structured clone page + + + + + + diff --git a/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.js b/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.js new file mode 100644 index 0000000000..b457fd2d2f --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.js @@ -0,0 +1,62 @@ +function* getTestContent() { + yield "hello"; + yield 2 + 3; + yield 12; + yield null; + yield "complex" + "string"; + yield new Object(); + yield new Date(1306113544); + yield [1, 2, 3, 4, 5]; + let obj = new Object(); + obj.foo = 3; + obj.bar = "hi"; + obj.baz = new Date(1306113544); + obj.boo = obj; + yield obj; + + let recursiveobj = new Object(); + recursiveobj.a = recursiveobj; + recursiveobj.foo = new Object(); + recursiveobj.foo.bar = "bar"; + recursiveobj.foo.backref = recursiveobj; + recursiveobj.foo.baz = 84; + recursiveobj.foo.backref2 = recursiveobj; + recursiveobj.bar = new Object(); + recursiveobj.bar.foo = "foo"; + recursiveobj.bar.backref = recursiveobj; + recursiveobj.bar.baz = new Date(1306113544); + recursiveobj.bar.backref2 = recursiveobj; + recursiveobj.expando = recursiveobj; + yield recursiveobj; + + obj = new Object(); + obj.expando1 = 1; + obj.foo = new Object(); + obj.foo.bar = 2; + obj.bar = new Object(); + obj.bar.foo = obj.foo; + obj.expando = new Object(); + obj.expando.expando = new Object(); + obj.expando.expando.obj = obj; + obj.expando2 = 4; + obj.baz = obj.expando.expando; + obj.blah = obj.bar; + obj.foo.baz = obj.blah; + obj.foo.blah = obj.blah; + yield obj; + + let diamond = new Object(); + obj = new Object(); + obj.foo = "foo"; + obj.bar = 92; + obj.backref = diamond; + diamond.ref1 = obj; + diamond.ref2 = obj; + yield diamond; + + let doubleref = new Object(); + obj = new Object(); + doubleref.ref1 = obj; + doubleref.ref2 = obj; + yield doubleref; +} diff --git a/dom/tests/mochitest/whatwg/postMessage_throw_helper.html b/dom/tests/mochitest/whatwg/postMessage_throw_helper.html new file mode 100644 index 0000000000..b1d3ddce7d --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_throw_helper.html @@ -0,0 +1,24 @@ + + + + postMessage throwing page + + + +

      No location!

      + + diff --git a/dom/tests/mochitest/whatwg/postMessage_transfer_helper.html b/dom/tests/mochitest/whatwg/postMessage_transfer_helper.html new file mode 100644 index 0000000000..03c4c1030b --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_transfer_helper.html @@ -0,0 +1,15 @@ + + + + postMessage transferable tests helper + + + + + diff --git a/dom/tests/mochitest/whatwg/postMessage_userpass_helper.html b/dom/tests/mochitest/whatwg/postMessage_userpass_helper.html new file mode 100644 index 0000000000..762cf52f9f --- /dev/null +++ b/dom/tests/mochitest/whatwg/postMessage_userpass_helper.html @@ -0,0 +1,34 @@ + + + + Username/password page for postMessage tests + + + +

      Kid iframe

      + + + diff --git a/dom/tests/mochitest/whatwg/test_MessageEvent.html b/dom/tests/mochitest/whatwg/test_MessageEvent.html new file mode 100644 index 0000000000..41e1a7bcb4 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_MessageEvent.html @@ -0,0 +1,102 @@ + + + + + MessageEvent tests + + + + +Mozilla Bug 387706 +

      + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_MessageEvent_dispatchToOther.html b/dom/tests/mochitest/whatwg/test_MessageEvent_dispatchToOther.html new file mode 100644 index 0000000000..d5d2f4c454 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_MessageEvent_dispatchToOther.html @@ -0,0 +1,59 @@ + + + + + Dispatching MessageEvent across origins + + + + +Mozilla Bug 387706 +

      + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_bug477323.html b/dom/tests/mochitest/whatwg/test_bug477323.html new file mode 100644 index 0000000000..66bad6288c --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_bug477323.html @@ -0,0 +1,64 @@ + + + + Dynamically assigned drag and drop handlers + + + + + + + + + + + + diff --git a/dom/tests/mochitest/whatwg/test_bug500328.html b/dom/tests/mochitest/whatwg/test_bug500328.html new file mode 100644 index 0000000000..20b2c36761 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_bug500328.html @@ -0,0 +1,769 @@ + + + + + Test for Bug 500328 + + + + + +Mozilla Bug 500328 +

      +
      +
      + + + link +
      +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_document_scripts.html b/dom/tests/mochitest/whatwg/test_document_scripts.html new file mode 100644 index 0000000000..f0d8d27449 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_document_scripts.html @@ -0,0 +1,55 @@ + + + + + Test for document.scripts (Bug 685774) + + + + + +Mozilla Bug 685774 + + + + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage.html b/dom/tests/mochitest/whatwg/test_postMessage.html new file mode 100644 index 0000000000..a21abb9a00 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage.html @@ -0,0 +1,161 @@ + + + + + Basic postMessage tests + + + + +Mozilla Bug 387706 +

      + + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_basehref.html b/dom/tests/mochitest/whatwg/test_postMessage_basehref.html new file mode 100644 index 0000000000..4a0a167d9f --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_basehref.html @@ -0,0 +1,45 @@ + + + + + postMessage's interaction with a <base> tag + + + + + +Mozilla Bug 414815 +

      + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_chrome.html b/dom/tests/mochitest/whatwg/test_postMessage_chrome.html new file mode 100644 index 0000000000..ceb19fc552 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_chrome.html @@ -0,0 +1,114 @@ + + + + + postMessage chrome tests + + + + + + +Mozilla Bug 387706 +

      + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_closed.html b/dom/tests/mochitest/whatwg/test_postMessage_closed.html new file mode 100644 index 0000000000..01fc1294a3 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_closed.html @@ -0,0 +1,77 @@ + + + + postMessage's interaction with closed windows + + + + +

      Bug 417075

      +

      + + +
      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_hash.html b/dom/tests/mochitest/whatwg/test_postMessage_hash.html new file mode 100644 index 0000000000..5942a200ca --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_hash.html @@ -0,0 +1,44 @@ + + + + postMessage's interaction with hash URIs + + + + + +

      (no bug; this is a preemptive test)

      +

      + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_idn.xhtml b/dom/tests/mochitest/whatwg/test_postMessage_idn.xhtml new file mode 100644 index 0000000000..79a6ede714 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_idn.xhtml @@ -0,0 +1,66 @@ + + + + + + postMessage uri/domain values and IDN encoding + + + + +Mozilla Bug 387706 +

      + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_joined.html b/dom/tests/mochitest/whatwg/test_postMessage_joined.html new file mode 100644 index 0000000000..560fbb2911 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_joined.html @@ -0,0 +1,53 @@ + + + + + postMessage with document.domain setting to join origins + + + + +Mozilla Bug 387706 +

      + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_onOther.html b/dom/tests/mochitest/whatwg/test_postMessage_onOther.html new file mode 100644 index 0000000000..502ebca36c --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_onOther.html @@ -0,0 +1,51 @@ + + + + + postMessage called through a different same-origin page + + + + +Mozilla Bug 387706 +

      + + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_origin.xhtml b/dom/tests/mochitest/whatwg/test_postMessage_origin.xhtml new file mode 100644 index 0000000000..dd027c09ff --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_origin.xhtml @@ -0,0 +1,465 @@ + + + + + postMessage from about:blank, data URLs + + + + +Mozilla Bug 417075 +

      + + + + + + + + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_override.html b/dom/tests/mochitest/whatwg/test_postMessage_override.html new file mode 100644 index 0000000000..8414344f8d --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_override.html @@ -0,0 +1,47 @@ + + + + + postMessage override test + + + + +Mozilla Bug 387706 +

      + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_special.xhtml b/dom/tests/mochitest/whatwg/test_postMessage_special.xhtml new file mode 100644 index 0000000000..deb3930550 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_special.xhtml @@ -0,0 +1,304 @@ + + + + + postMessage from about:blank, data URLs + + + + +Mozilla Bug 387706 +

      + + +
      +\n" +
      +    "\n" +
      +    "

      " + description + "

      \n" + + ""; + + return contents; +} + +function finish() +{ + SimpleTest.finish(); +} + +var xhtmlns = "http://www.w3.org/1999/xhtml"; + +function insert(el) +{ + var content = $("content"); + content.parentNode.insertBefore(el, content); +} + +function setupBlank() +{ + var aboutBlankFrame = document.createElementNS(xhtmlns, "iframe"); + aboutBlankFrame.setAttribute("src", "about:blank"); + insert(aboutBlankFrame); + + aboutBlankWindow = aboutBlankFrame.contentWindow; + var doc = aboutBlankWindow.document; + doc.open(); + doc.write(getContents("This was about:blank #1", "about:blank-response")); + doc.close(); + + // I don't believe anything guarantees sync parsing, so we have to wait for + // the new window to poke us to actually do the test. :-\ +} + +function setupBlank2() +{ + var aboutBlank2Frame = document.createElementNS(xhtmlns, "iframe"); + aboutBlank2Frame.addEventListener("load", nextTest); + aboutBlank2Frame.setAttribute("src", "about:blank"); + + insert(aboutBlank2Frame); +} + +// Could use window.btoa here, but that's not standardized, and we want to be +// able to run these tests against browsers that don't support it. +var dataURI = "data:text/html;base64," + + b64(getContents("A data: URL", "data-response")); + +function setupData() +{ + var dataFrame = document.createElementNS(xhtmlns, "iframe"); + dataFrame.setAttribute("src", dataURI); + insert(dataFrame); + + dataWindow = dataFrame.contentWindow; + + // ...and wait again for the window to load... +} + +var count = 0; +function nextTest() +{ + switch (count++) + { + case 0: + testBlank(); + break; + + case 1: + testBlank2(); + break; + + case 2: + testData(); + break; + + default: + ok(false, "unreached"); + break; + } +} + +function testBlank() +{ + aboutBlankWindow.postMessage("from-opener", "http://mochi.test:8888"); +} + +function testBlank2() +{ + // For some reason we can't access this across browsers prior to the iframe + // loading, so set its value here. + aboutBlank2Window = window.frames[1]; + + var doc = aboutBlank2Window.document; + + doc.body.textContent = "This was about:blank #2"; + + var script = doc.createElement("script"); + script.textContent = + "window.parent.postMessage('about:blank2-response', " + + " 'http://mochi.test:8888');"; + doc.body.appendChild(script); +} + +function testData() +{ + dataWindow.postMessage("from-opener", "*"); +} + +window.addEventListener("message", messageReceiver); + +addLoadEvent(setupBlank); +]]> +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_structured_clone.html b/dom/tests/mochitest/whatwg/test_postMessage_structured_clone.html new file mode 100644 index 0000000000..9574dcacd4 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_structured_clone.html @@ -0,0 +1,70 @@ + + + + + postMessage uses structured clone + + + + + +Mozilla Bug 553125 +

      + + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_throw.html b/dom/tests/mochitest/whatwg/test_postMessage_throw.html new file mode 100644 index 0000000000..8d71ea38cf --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_throw.html @@ -0,0 +1,74 @@ + + + + + postMessage with a thrown exception + + + + +Mozilla Bug 387706 +

      + + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_transfer.html b/dom/tests/mochitest/whatwg/test_postMessage_transfer.html new file mode 100644 index 0000000000..e7d8758bd6 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_transfer.html @@ -0,0 +1,61 @@ + + + + + postMessage transferable tests + + + + +Mozilla Bug 822094 +

      + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_postMessage_userpass.html b/dom/tests/mochitest/whatwg/test_postMessage_userpass.html new file mode 100644 index 0000000000..b47266fc45 --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_postMessage_userpass.html @@ -0,0 +1,46 @@ + + + + + postMessage from a page with username/password in its URI + + + + +Mozilla Bug 417075 +

      + + + + + +
      +
      +
      + + diff --git a/dom/tests/mochitest/whatwg/test_structuredCloneAndExposed.html b/dom/tests/mochitest/whatwg/test_structuredCloneAndExposed.html new file mode 100644 index 0000000000..2bd15247af --- /dev/null +++ b/dom/tests/mochitest/whatwg/test_structuredCloneAndExposed.html @@ -0,0 +1,307 @@ + + + + + Basic structured clone tests + + + + +Mozilla Bug 1828264 +

      + + +

      + + + +
      +
      +
      + + diff --git a/dom/tests/moz.build b/dom/tests/moz.build new file mode 100644 index 0000000000..49ac92ef9a --- /dev/null +++ b/dom/tests/moz.build @@ -0,0 +1,234 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# 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/. + +with Files("browser/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("browser/*onsole*"): + BUG_COMPONENT = ("DevTools", "General") + +with Files("browser/*autofocus*"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("browser/*unload*"): + BUG_COMPONENT = ("Core", "DOM: Events") + +with Files("browser/*1238427*"): + BUG_COMPONENT = ("Core", "DOM: Geolocation") + +with Files("browser/*Geolocation*"): + BUG_COMPONENT = ("Core", "DOM: Geolocation") + +with Files("browser/*geo_*"): + BUG_COMPONENT = ("Core", "DOM: Geolocation") + +with Files("browser/browser_cancel_keydown_keypress_event.js"): + BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling") + +with Files("browser/*local*"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("browser/browser_test_focus_after_modal_state.js"): + BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling") + +with Files("mochitest/ajax/**"): + BUG_COMPONENT = ("Testing", "Mochitest") + +with Files("mochitest/beacon/**"): + BUG_COMPONENT = ("Core", "DOM: Networking") + +# big mix of components here +with Files("mochitest/bugs/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +# TODO: big mix of components here +with Files("mochitest/chrome/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/crypto/**"): + BUG_COMPONENT = ("Core", "DOM: Security") + +with Files("mochitest/dom-level0/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/dom-level1-core/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/dom-level2-core/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/dom-level2-html/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/fetch/**"): + BUG_COMPONENT = ("Core", "DOM: Networking") + +with Files("mochitest/fetch/*sw_*"): + BUG_COMPONENT = ("Core", "DOM: Service Workers") + +with Files("mochitest/gamepad/**"): + BUG_COMPONENT = ("Core", "DOM: Device Interfaces") + +# TODO: big mix of components here +with Files("mochitest/general/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/geolocation/**"): + BUG_COMPONENT = ("Core", "DOM: Geolocation") + +with Files("mochitest/localstorage/**"): + BUG_COMPONENT = ("Core", "Storage: localStorage & sessionStorage") + +with Files("mochitest/orientation/**"): + BUG_COMPONENT = ("Core", "DOM: Device Interfaces") + +with Files("mochitest/orientation/*507902*"): + BUG_COMPONENT = ("Core", "Layout: Images, Video, and HTML Frames") + +with Files("mochitest/pointerlock/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/script/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/sessionstorage/**"): + BUG_COMPONENT = ("Core", "Storage: localStorage & sessionStorage") + +with Files("mochitest/storageevent/**"): + BUG_COMPONENT = ("Core", "Storage: localStorage & sessionStorage") + +with Files("mochitest/webcomponents/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("mochitest/whatwg/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("reftest/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("reftest/*456008*"): + BUG_COMPONENT = ("Core", "XML") + +with Files("reftest/*439965*"): + BUG_COMPONENT = ("Core", "DOM: Editor") + +with Files("reftest/*427779*"): + BUG_COMPONENT = ("Core", "XML") + +with Files("reftest/*559996*"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("reftest/*591981*"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("reftest/*592366*"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("reftest/*798068*"): + BUG_COMPONENT = ("Core", "Layout") + +with Files("reftest/xml-stylesheet/**"): + BUG_COMPONENT = ("Core", "XSLT") + +with Files("unit/**"): + BUG_COMPONENT = ("Core", "DOM: Core & HTML") + +with Files("unit/*geolocation*"): + BUG_COMPONENT = ("Core", "DOM: Geolocation") + +with Files("unit/test_bug465752.js"): + BUG_COMPONENT = ("Core", "CSS Parsing and Computation") + +with Files("unit/test_PromiseDebugging.js"): + BUG_COMPONENT = ("Core", "XPConnect") + +MOCHITEST_MANIFESTS += [ + "mochitest/ajax/jquery/mochitest.toml", + "mochitest/ajax/mochikit/mochitest.toml", + "mochitest/ajax/prototype/mochitest.toml", + "mochitest/ajax/scriptaculous/mochitest.toml", + "mochitest/beacon/mochitest.toml", + "mochitest/bugs/mochitest.toml", + "mochitest/crypto/mochitest.toml", + "mochitest/dom-level0/mochitest.toml", + "mochitest/dom-level1-core/mochitest.toml", + "mochitest/dom-level2-core/mochitest.toml", + "mochitest/dom-level2-html/mochitest.toml", + "mochitest/fetch/mochitest.toml", + "mochitest/gamepad/mochitest.toml", + "mochitest/general/mochitest.toml", + "mochitest/geolocation/mochitest.toml", + "mochitest/integer-gemm/mochitest.toml", + "mochitest/keyhandling/mochitest.toml", + "mochitest/localstorage/mochitest.toml", + "mochitest/orientation/mochitest.toml", + "mochitest/pointerlock/mochitest.toml", + "mochitest/script/mochitest.toml", + "mochitest/sessionstorage/mochitest.toml", + "mochitest/storageevent/mochitest.toml", + "mochitest/webcomponents/mochitest.toml", + "mochitest/whatwg/mochitest.toml", +] + +MOCHITEST_CHROME_MANIFESTS += [ + "mochitest/beacon/chrome.toml", + "mochitest/chrome/chrome.toml", + "mochitest/fs/chrome.toml", + "mochitest/general/chrome.toml", + "mochitest/geolocation/chrome.toml", + "mochitest/keyhandling/chrome.toml", + "mochitest/localstorage/chrome.toml", + "mochitest/sessionstorage/chrome.toml", + "mochitest/webcomponents/chrome.toml", + "mochitest/whatwg/chrome.toml", +] + +XPCSHELL_TESTS_MANIFESTS += ["unit/xpcshell.toml"] +BROWSER_CHROME_MANIFESTS += [ + "browser/browser.toml", +] + +TEST_HARNESS_FILES.testing.mochitest.tests.dom.tests.mochitest.ajax.lib += [ + "mochitest/ajax/lib/AJAX_setup.js", + "mochitest/ajax/lib/test.css", +] + +TEST_HARNESS_FILES.testing.mochitest.tests.dom.tests.mochitest.ajax.mochikit.tests += [ + "mochitest/ajax/mochikit/tests/cli.js", + "mochitest/ajax/mochikit/tests/FakeJSAN.js", + "mochitest/ajax/mochikit/tests/index.html", + "mochitest/ajax/mochikit/tests/MochiKit-Async.html", + "mochitest/ajax/mochikit/tests/MochiKit-Base.html", + "mochitest/ajax/mochikit/tests/MochiKit-Color.html", + "mochitest/ajax/mochikit/tests/MochiKit-DateTime.html", + "mochitest/ajax/mochikit/tests/MochiKit-DOM.html", + "mochitest/ajax/mochikit/tests/MochiKit-DragAndDrop.html", + "mochitest/ajax/mochikit/tests/MochiKit-Format.html", + "mochitest/ajax/mochikit/tests/MochiKit-Iter.html", + "mochitest/ajax/mochikit/tests/MochiKit-JSAN.html", + "mochitest/ajax/mochikit/tests/MochiKit-Logging.html", + "mochitest/ajax/mochikit/tests/MochiKit-MochiKit.html", + "mochitest/ajax/mochikit/tests/MochiKit-Selector.html", + "mochitest/ajax/mochikit/tests/MochiKit-Signal.html", + "mochitest/ajax/mochikit/tests/MochiKit-Style.html", + "mochitest/ajax/mochikit/tests/MochiKit-Visual.html", + "mochitest/ajax/mochikit/tests/standalone.js", + "mochitest/ajax/mochikit/tests/test_Base.js", + "mochitest/ajax/mochikit/tests/test_Color.js", + "mochitest/ajax/mochikit/tests/test_DateTime.js", + "mochitest/ajax/mochikit/tests/test_DragAndDrop.js", + "mochitest/ajax/mochikit/tests/test_Format.js", + "mochitest/ajax/mochikit/tests/test_Iter.js", + "mochitest/ajax/mochikit/tests/test_Logging.js", + "mochitest/ajax/mochikit/tests/test_MochiKit-Async.json", + "mochitest/ajax/mochikit/tests/test_Signal.js", +] + +TEST_HARNESS_FILES.testing.mochitest.tests.dom.tests.mochitest.ajax.mochikit.tests.SimpleTest += [ + "mochitest/ajax/mochikit/tests/SimpleTest/SimpleTest.js", + "mochitest/ajax/mochikit/tests/SimpleTest/test.css", + "mochitest/ajax/mochikit/tests/SimpleTest/TestRunner.js", +] diff --git a/dom/tests/reftest/bug1389406-01.xsl b/dom/tests/reftest/bug1389406-01.xsl new file mode 100644 index 0000000000..856a6a711e --- /dev/null +++ b/dom/tests/reftest/bug1389406-01.xsl @@ -0,0 +1,15 @@ + + + + + + + + + + + + + diff --git a/dom/tests/reftest/bug1389406-02.xsl b/dom/tests/reftest/bug1389406-02.xsl new file mode 100644 index 0000000000..60ab6936fa --- /dev/null +++ b/dom/tests/reftest/bug1389406-02.xsl @@ -0,0 +1,15 @@ + + + + + — TEST CASE + + + + +

      +
      + +
      diff --git a/dom/tests/reftest/bug1389406-ref.xml b/dom/tests/reftest/bug1389406-ref.xml new file mode 100644 index 0000000000..8bfccb9c11 --- /dev/null +++ b/dom/tests/reftest/bug1389406-ref.xml @@ -0,0 +1,2 @@ + +

      Firefox bug — TEST CASEFirefox bug

      diff --git a/dom/tests/reftest/bug1389406.xml b/dom/tests/reftest/bug1389406.xml new file mode 100644 index 0000000000..58b00a56ac --- /dev/null +++ b/dom/tests/reftest/bug1389406.xml @@ -0,0 +1,3 @@ + + +Firefox bug diff --git a/dom/tests/reftest/bug427779-ref.xml b/dom/tests/reftest/bug427779-ref.xml new file mode 100644 index 0000000000..b3631c0d14 --- /dev/null +++ b/dom/tests/reftest/bug427779-ref.xml @@ -0,0 +1,3 @@ + +This is a test + diff --git a/dom/tests/reftest/bug427779.xml b/dom/tests/reftest/bug427779.xml new file mode 100644 index 0000000000..59e7a36ebf --- /dev/null +++ b/dom/tests/reftest/bug427779.xml @@ -0,0 +1,4 @@ + + +This is a test + diff --git a/dom/tests/reftest/bug439965-ref.html b/dom/tests/reftest/bug439965-ref.html new file mode 100644 index 0000000000..c3465c3911 --- /dev/null +++ b/dom/tests/reftest/bug439965-ref.html @@ -0,0 +1,20 @@ + + + + + +
      +
      
      +
      +
      diff --git a/dom/tests/reftest/bug439965.html b/dom/tests/reftest/bug439965.html
      new file mode 100644
      index 0000000000..da3f90ebe2
      --- /dev/null
      +++ b/dom/tests/reftest/bug439965.html
      @@ -0,0 +1,21 @@
      +
      +
      +
      +
      +
      +
      +
      
      +
      +
      diff --git a/dom/tests/reftest/bug453105-ref.html b/dom/tests/reftest/bug453105-ref.html
      new file mode 100644
      index 0000000000..cc10953858
      --- /dev/null
      +++ b/dom/tests/reftest/bug453105-ref.html
      @@ -0,0 +1,7 @@
      +
      +
      +
      + +
      + diff --git a/dom/tests/reftest/bug453105.html b/dom/tests/reftest/bug453105.html new file mode 100644 index 0000000000..0ace6d5a0d --- /dev/null +++ b/dom/tests/reftest/bug453105.html @@ -0,0 +1,9 @@ + + +
      + +
      + diff --git a/dom/tests/reftest/bug456008-ref.html b/dom/tests/reftest/bug456008-ref.html new file mode 100644 index 0000000000..e605de5314 --- /dev/null +++ b/dom/tests/reftest/bug456008-ref.html @@ -0,0 +1,10 @@ + + + +
      + + + diff --git a/dom/tests/reftest/bug456008.xhtml b/dom/tests/reftest/bug456008.xhtml new file mode 100644 index 0000000000..43027343cb --- /dev/null +++ b/dom/tests/reftest/bug456008.xhtml @@ -0,0 +1,11 @@ + + +
      + + + diff --git a/dom/tests/reftest/bug559996-iframe.html b/dom/tests/reftest/bug559996-iframe.html new file mode 100644 index 0000000000..b576d1d223 --- /dev/null +++ b/dom/tests/reftest/bug559996-iframe.html @@ -0,0 +1,7 @@ + + + +
      first
      +
      second
      + + diff --git a/dom/tests/reftest/bug559996-ref-iframe.html b/dom/tests/reftest/bug559996-ref-iframe.html new file mode 100644 index 0000000000..2b13b8b343 --- /dev/null +++ b/dom/tests/reftest/bug559996-ref-iframe.html @@ -0,0 +1,8 @@ + + + +
      first
      +
      second
      + + + diff --git a/dom/tests/reftest/bug559996-ref.html b/dom/tests/reftest/bug559996-ref.html new file mode 100644 index 0000000000..f7124e8698 --- /dev/null +++ b/dom/tests/reftest/bug559996-ref.html @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/dom/tests/reftest/bug559996.html b/dom/tests/reftest/bug559996.html new file mode 100644 index 0000000000..1ade11db22 --- /dev/null +++ b/dom/tests/reftest/bug559996.html @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/dom/tests/reftest/bug591981-1.html b/dom/tests/reftest/bug591981-1.html new file mode 100644 index 0000000000..5c48ca8123 --- /dev/null +++ b/dom/tests/reftest/bug591981-1.html @@ -0,0 +1,32 @@ + + + +Script-inserted script + + +
      + + + diff --git a/dom/tests/reftest/bug591981-2.html b/dom/tests/reftest/bug591981-2.html new file mode 100644 index 0000000000..7d05d5179a --- /dev/null +++ b/dom/tests/reftest/bug591981-2.html @@ -0,0 +1,32 @@ + + + +Script trying to execute parser-inserted non-executed scripts + + +
      + + + + + diff --git a/dom/tests/reftest/bug591981-ref.html b/dom/tests/reftest/bug591981-ref.html new file mode 100644 index 0000000000..8a19a40b9d --- /dev/null +++ b/dom/tests/reftest/bug591981-ref.html @@ -0,0 +1,9 @@ + + + +Script-inserted script + + +

      internal

      external

      + + diff --git a/dom/tests/reftest/bug591981-script.js b/dom/tests/reftest/bug591981-script.js new file mode 100644 index 0000000000..818596af3c --- /dev/null +++ b/dom/tests/reftest/bug591981-script.js @@ -0,0 +1 @@ +log("external"); diff --git a/dom/tests/reftest/bug592366-1.html b/dom/tests/reftest/bug592366-1.html new file mode 100644 index 0000000000..42e2971542 --- /dev/null +++ b/dom/tests/reftest/bug592366-1.html @@ -0,0 +1,7 @@ + + +Move node during parse + + +After iframe + diff --git a/dom/tests/reftest/bug592366-1.xhtml b/dom/tests/reftest/bug592366-1.xhtml new file mode 100644 index 0000000000..7f9f57b273 --- /dev/null +++ b/dom/tests/reftest/bug592366-1.xhtml @@ -0,0 +1,6 @@ + +Move node during parse + + +After iframe + diff --git a/dom/tests/reftest/bug592366-2.html b/dom/tests/reftest/bug592366-2.html new file mode 100644 index 0000000000..42e2971542 --- /dev/null +++ b/dom/tests/reftest/bug592366-2.html @@ -0,0 +1,7 @@ + + +Move node during parse + + +After iframe + diff --git a/dom/tests/reftest/bug592366-2.xhtml b/dom/tests/reftest/bug592366-2.xhtml new file mode 100644 index 0000000000..db08a195a0 --- /dev/null +++ b/dom/tests/reftest/bug592366-2.xhtml @@ -0,0 +1,6 @@ + +Move node during parse + + +After iframe + diff --git a/dom/tests/reftest/bug592366-ref.html b/dom/tests/reftest/bug592366-ref.html new file mode 100644 index 0000000000..7e1ee242c4 --- /dev/null +++ b/dom/tests/reftest/bug592366-ref.html @@ -0,0 +1,9 @@ + +Move node during parse + + +After iframe +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      +

      Middle of Page

      +

      End of Page

      +
      diff --git a/dom/tests/reftest/bug592366-ref.xhtml b/dom/tests/reftest/bug592366-ref.xhtml new file mode 100644 index 0000000000..a75444d694 --- /dev/null +++ b/dom/tests/reftest/bug592366-ref.xhtml @@ -0,0 +1,9 @@ + +Move node during parse + + +After iframe +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      +

      Middle of Page

      +

      End of Page

      +
      diff --git a/dom/tests/reftest/bug798068-ref.xhtml b/dom/tests/reftest/bug798068-ref.xhtml new file mode 100644 index 0000000000..eaa2772c74 --- /dev/null +++ b/dom/tests/reftest/bug798068-ref.xhtml @@ -0,0 +1,18 @@ + + + + + + + MinZoom:
      + MaxZoom: + + diff --git a/dom/tests/reftest/bug798068.xhtml b/dom/tests/reftest/bug798068.xhtml new file mode 100644 index 0000000000..7fe0aea245 --- /dev/null +++ b/dom/tests/reftest/bug798068.xhtml @@ -0,0 +1,19 @@ + + + + + + + + MinZoom:
      + MaxZoom: + + diff --git a/dom/tests/reftest/child592366-1.html b/dom/tests/reftest/child592366-1.html new file mode 100644 index 0000000000..acd123571d --- /dev/null +++ b/dom/tests/reftest/child592366-1.html @@ -0,0 +1,19 @@ + + + +Move node during parse + + +
      +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      + +

      Middle of Page

      + +

      End of Page

      +
      + + diff --git a/dom/tests/reftest/child592366-1.xhtml b/dom/tests/reftest/child592366-1.xhtml new file mode 100644 index 0000000000..0193e4cea4 --- /dev/null +++ b/dom/tests/reftest/child592366-1.xhtml @@ -0,0 +1,18 @@ + + +Move node during parse + + +
      +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      + +

      Middle of Page

      + +

      End of Page

      +
      + + diff --git a/dom/tests/reftest/child592366-2.html b/dom/tests/reftest/child592366-2.html new file mode 100644 index 0000000000..e2e6c3a651 --- /dev/null +++ b/dom/tests/reftest/child592366-2.html @@ -0,0 +1,17 @@ + + + +Move node during parse + + +
      +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      + +

      Middle of Page

      + +

      End of Page

      +
      + + diff --git a/dom/tests/reftest/child592366-2.xhtml b/dom/tests/reftest/child592366-2.xhtml new file mode 100644 index 0000000000..a64dc83ae0 --- /dev/null +++ b/dom/tests/reftest/child592366-2.xhtml @@ -0,0 +1,16 @@ + + +Move node during parse + + +
      +

      This text should not show inside the iframe. It should show inside the parent. Furthermore, there should be text saying "Middle of Page" and then "End of Page" below (also in the parent).

      + +

      Middle of Page

      + +

      End of Page

      +
      + + diff --git a/dom/tests/reftest/optiontext-ref.html b/dom/tests/reftest/optiontext-ref.html new file mode 100644 index 0000000000..6250c1fb27 --- /dev/null +++ b/dom/tests/reftest/optiontext-ref.html @@ -0,0 +1,8 @@ + + +
      + +
      + diff --git a/dom/tests/reftest/optiontext.html b/dom/tests/reftest/optiontext.html new file mode 100644 index 0000000000..5297e6caa3 --- /dev/null +++ b/dom/tests/reftest/optiontext.html @@ -0,0 +1,8 @@ + + +
      + +
      + diff --git a/dom/tests/reftest/reftest.list b/dom/tests/reftest/reftest.list new file mode 100644 index 0000000000..ee7069e2af --- /dev/null +++ b/dom/tests/reftest/reftest.list @@ -0,0 +1,14 @@ +fuzzy-if(Android,0-4,0-1) == bug453105.html bug453105-ref.html # bug 1600534 +fuzzy-if(Android,0-4,0-1) == optiontext.html optiontext-ref.html +== bug456008.xhtml bug456008-ref.html +fuzzy(0-2,0-3) == bug439965.html bug439965-ref.html +== bug427779.xml bug427779-ref.xml +fuzzy(0-1,0-5) == bug559996.html bug559996-ref.html +== bug591981-1.html bug591981-ref.html +== bug591981-2.html bug591981-ref.html +== bug592366-1.html bug592366-ref.html +== bug592366-2.html bug592366-ref.html +== bug592366-1.xhtml bug592366-ref.xhtml +== bug592366-2.xhtml bug592366-ref.xhtml +== bug798068.xhtml bug798068-ref.xhtml +== bug1389406.xml bug1389406-ref.xml diff --git a/dom/tests/reftest/script592366-2.js b/dom/tests/reftest/script592366-2.js new file mode 100644 index 0000000000..c3c8e143e3 --- /dev/null +++ b/dom/tests/reftest/script592366-2.js @@ -0,0 +1,2 @@ +document.body.insertBefore(document.createTextNode("FAIL"), document.body.firstChild); + diff --git a/dom/tests/reftest/xml-stylesheet/css_relative_href.xml b/dom/tests/reftest/xml-stylesheet/css_relative_href.xml new file mode 100644 index 0000000000..8576e56d8f --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/css_relative_href.xml @@ -0,0 +1,2 @@ + + diff --git a/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml new file mode 100644 index 0000000000..8576e56d8f --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml @@ -0,0 +1,2 @@ + + diff --git a/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml^headers^ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml^headers^ new file mode 100644 index 0000000000..581aae3439 --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external.xml^headers^ @@ -0,0 +1 @@ +Link: ;rel="stylesheet";type="text/css" diff --git a/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml new file mode 100644 index 0000000000..7859e6078c --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml @@ -0,0 +1,2 @@ + + diff --git a/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml^headers^ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml^headers^ new file mode 100644 index 0000000000..f9e96867b6 --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/css_relative_href_also_external_override.xml^headers^ @@ -0,0 +1 @@ +Link: ;rel="stylesheet";type="text/css" diff --git a/dom/tests/reftest/xml-stylesheet/embedded_dtd_id.svg b/dom/tests/reftest/xml-stylesheet/embedded_dtd_id.svg new file mode 100644 index 0000000000..dee0d44f0d --- /dev/null +++ b/dom/tests/reftest/xml-stylesheet/embedded_dtd_id.svg @@ -0,0 +1,20 @@ +]> + + + + + +