builder: mozilla-release_ubuntu64_vm-debug_test-web-platform-tests-7 slave: tst-linux64-spot-2083 starttime: 1459565890.22 results: success (0) buildid: 20160401193737 builduid: 48e677092a0f4ccf9be62b921a231a46 revision: 026361c4c591 ========= Started set props: master (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.220190) ========= master: http://buildbot-master114.bb.releng.use1.mozilla.com:8201/ ========= Finished set props: master (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.220702) ========= ========= Started set props: basedir (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.221034) ========= bash -c pwd in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['bash', '-c', 'pwd'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False /builds/slave/test program finished with exit code 0 elapsedTime=0.023644 basedir: '/builds/slave/test' ========= master_lag: 0.04 ========= ========= Finished set props: basedir (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.281226) ========= ========= Started downloading to buildprops.json (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.281563) ========= ========= Finished downloading to buildprops.json (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.318915) ========= ========= Started 'rm -rf ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.319264) ========= rm -rf properties in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['rm', '-rf', 'properties'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False program finished with exit code 0 elapsedTime=0.020635 ========= master_lag: 0.04 ========= ========= Finished 'rm -rf ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.384565) ========= ========= Started set props: script_repo_url (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.384890) ========= script_repo_url: https://hg.mozilla.org/build/mozharness ========= Finished set props: script_repo_url (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.385246) ========= ========= Started 'bash -c ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:10.385560) ========= bash -c 'wget -Oarchiver_client.py --no-check-certificate --tries=10 --waitretry=3 https://hg.mozilla.org/build/tools/raw-file/default/buildfarm/utils/archiver_client.py' in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['bash', '-c', 'wget -Oarchiver_client.py --no-check-certificate --tries=10 --waitretry=3 https://hg.mozilla.org/build/tools/raw-file/default/buildfarm/utils/archiver_client.py'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False --2016-04-01 19:58:10-- https://hg.mozilla.org/build/tools/raw-file/default/buildfarm/utils/archiver_client.py Resolving hg.mozilla.org (hg.mozilla.org)... 63.245.215.102, 63.245.215.25 Connecting to hg.mozilla.org (hg.mozilla.org)|63.245.215.102|:443... connected. HTTP request sent, awaiting response... 200 Script output follows Length: 12141 (12K) [text/x-python] Saving to: `archiver_client.py' 0K .......... . 100% 6.62M=0.002s 2016-04-01 19:58:11 (6.62 MB/s) - `archiver_client.py' saved [12141/12141] program finished with exit code 0 elapsedTime=0.595232 ========= master_lag: 0.03 ========= ========= Finished 'bash -c ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:11.015510) ========= ========= Started 'rm -rf ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:11.015800) ========= rm -rf scripts in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['rm', '-rf', 'scripts'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False program finished with exit code 0 elapsedTime=0.040633 ========= master_lag: 0.03 ========= ========= Finished 'rm -rf ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:11.091027) ========= ========= Started 'bash -c ...' (results: 0, elapsed: 2 secs) (at 2016-04-01 19:58:11.091383) ========= bash -c 'python archiver_client.py mozharness --repo releases/mozilla-release --rev 026361c4c591 --destination scripts --debug' in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['bash', '-c', u'python archiver_client.py mozharness --repo releases/mozilla-release --rev 026361c4c591 --destination scripts --debug'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False 2016-04-01 19:58:11,327 Setting DEBUG logging. 2016-04-01 19:58:11,328 attempt 1/10 2016-04-01 19:58:11,328 Getting archive location from https://api.pub.build.mozilla.org/archiver/hgmo/releases/mozilla-release/026361c4c591?&preferred_region=us-west-2&suffix=tar.gz&subdir=testing/mozharness 2016-04-01 19:58:12,997 unpacking tar archive at: mozilla-release-026361c4c591/testing/mozharness/ program finished with exit code 0 elapsedTime=2.223183 ========= master_lag: 0.04 ========= ========= Finished 'bash -c ...' (results: 0, elapsed: 2 secs) (at 2016-04-01 19:58:13.349637) ========= ========= Started set props: script_repo_revision (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:13.349965) ========= echo 026361c4c591 in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['echo', u'026361c4c591'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False 026361c4c591 program finished with exit code 0 elapsedTime=0.022395 script_repo_revision: '026361c4c591' ========= master_lag: 0.04 ========= ========= Finished set props: script_repo_revision (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:13.417330) ========= ========= Started downloading to oauth.txt (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:13.417703) ========= ========= Finished downloading to oauth.txt (results: 0, elapsed: 0 secs) (at 2016-04-01 19:58:13.451982) ========= ========= Started '/tools/buildbot/bin/python scripts/scripts/web_platform_tests.py ...' (results: 0, elapsed: 22 mins, 15 secs) (at 2016-04-01 19:58:13.452362) ========= /tools/buildbot/bin/python scripts/scripts/web_platform_tests.py --cfg web_platform_tests/prod_config.py --test-type=testharness --total-chunks 8 --this-chunk 7 --blob-upload-branch mozilla-release --download-symbols true in dir /builds/slave/test/. (timeout 1800 secs) (maxTime 7200 secs) watching logfiles {} argv: ['/tools/buildbot/bin/python', 'scripts/scripts/web_platform_tests.py', '--cfg', 'web_platform_tests/prod_config.py', '--test-type=testharness', '--total-chunks', '8', '--this-chunk', '7', '--blob-upload-branch', 'mozilla-release', '--download-symbols', 'true'] environment: CCACHE_DIR=/builds/ccache CCACHE_UMASK=002 DISPLAY=:0 HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld MOZ_HIDE_RESULTS_TABLE=1 MOZ_NODE_PATH=/usr/bin/node MOZ_NO_REMOTE=1 NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript NO_FAIL_ON_TEST_ERRORS=1 PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PROPERTIES_FILE=/builds/slave/test/buildprops.json PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False 19:58:13 INFO - MultiFileLogger online at 20160401 19:58:13 in /builds/slave/test 19:58:13 INFO - Run as scripts/scripts/web_platform_tests.py --cfg web_platform_tests/prod_config.py --test-type=testharness --total-chunks 8 --this-chunk 7 --blob-upload-branch mozilla-release --download-symbols true 19:58:13 INFO - Dumping config to /builds/slave/test/logs/localconfig.json. 19:58:13 INFO - {'append_to_log': False, 19:58:13 INFO - 'base_work_dir': '/builds/slave/test', 19:58:13 INFO - 'blob_upload_branch': 'mozilla-release', 19:58:13 INFO - 'blob_uploader_auth_file': '/builds/slave/test/oauth.txt', 19:58:13 INFO - 'buildbot_json_path': 'buildprops.json', 19:58:13 INFO - 'config_files': ('web_platform_tests/prod_config.py',), 19:58:13 INFO - 'default_blob_upload_servers': ('https://blobupload.elasticbeanstalk.com',), 19:58:13 INFO - 'download_minidump_stackwalk': True, 19:58:13 INFO - 'download_symbols': 'true', 19:58:13 INFO - 'exes': {'python': '/tools/buildbot/bin/python', 19:58:13 INFO - 'tooltool.py': '/tools/tooltool.py', 19:58:13 INFO - 'virtualenv': ('/tools/buildbot/bin/python', 19:58:13 INFO - '/tools/misc-python/virtualenv.py')}, 19:58:13 INFO - 'find_links': ('http://pypi.pvt.build.mozilla.org/pub', 19:58:13 INFO - 'http://pypi.pub.build.mozilla.org/pub'), 19:58:13 INFO - 'log_level': 'info', 19:58:13 INFO - 'log_to_console': True, 19:58:13 INFO - 'opt_config_files': (), 19:58:13 INFO - 'options': ('--prefs-root=%(test_path)s/prefs', 19:58:13 INFO - '--processes=1', 19:58:13 INFO - '--config=%(test_path)s/wptrunner.ini', 19:58:13 INFO - '--ca-cert-path=%(test_path)s/certs/cacert.pem', 19:58:13 INFO - '--host-key-path=%(test_path)s/certs/web-platform.test.key', 19:58:13 INFO - '--host-cert-path=%(test_path)s/certs/web-platform.test.pem', 19:58:13 INFO - '--certutil-binary=%(test_install_path)s/bin/certutil'), 19:58:13 INFO - 'pip_index': False, 19:58:13 INFO - 'require_test_zip': True, 19:58:13 INFO - 'test_type': ('testharness',), 19:58:13 INFO - 'this_chunk': '7', 19:58:13 INFO - 'tooltool_cache': '/builds/tooltool_cache', 19:58:13 INFO - 'total_chunks': '8', 19:58:13 INFO - 'virtualenv_path': 'venv', 19:58:13 INFO - 'volatile_config': {'actions': None, 'add_actions': None, 'no_actions': None}, 19:58:13 INFO - 'work_dir': 'build'} 19:58:13 INFO - ##### 19:58:13 INFO - ##### Running clobber step. 19:58:13 INFO - ##### 19:58:13 INFO - Running pre-action listener: _resource_record_pre_action 19:58:13 INFO - Running main action method: clobber 19:58:13 INFO - rmtree: /builds/slave/test/build 19:58:13 INFO - retry: Calling rmtree with args: ('/builds/slave/test/build',), kwargs: {}, attempt #1 19:58:15 INFO - Running post-action listener: _resource_record_post_action 19:58:15 INFO - ##### 19:58:15 INFO - ##### Running read-buildbot-config step. 19:58:15 INFO - ##### 19:58:15 INFO - Running pre-action listener: _resource_record_pre_action 19:58:15 INFO - Running main action method: read_buildbot_config 19:58:15 INFO - Using buildbot properties: 19:58:15 INFO - { 19:58:15 INFO - "properties": { 19:58:15 INFO - "buildnumber": 3, 19:58:15 INFO - "product": "firefox", 19:58:15 INFO - "script_repo_revision": "production", 19:58:15 INFO - "branch": "mozilla-release", 19:58:15 INFO - "repository": "", 19:58:15 INFO - "buildername": "Ubuntu VM 12.04 x64 mozilla-release debug test web-platform-tests-7", 19:58:15 INFO - "buildid": "20160401193737", 19:58:15 INFO - "slavename": "tst-linux64-spot-2083", 19:58:15 INFO - "pgo_build": "False", 19:58:15 INFO - "basedir": "/builds/slave/test", 19:58:15 INFO - "project": "", 19:58:15 INFO - "platform": "linux64", 19:58:15 INFO - "master": "http://buildbot-master114.bb.releng.use1.mozilla.com:8201/", 19:58:15 INFO - "slavebuilddir": "test", 19:58:15 INFO - "scheduler": "tests-mozilla-release-ubuntu64_vm-debug-unittest", 19:58:15 INFO - "repo_path": "releases/mozilla-release", 19:58:15 INFO - "moz_repo_path": "", 19:58:15 INFO - "stage_platform": "linux64", 19:58:15 INFO - "builduid": "48e677092a0f4ccf9be62b921a231a46", 19:58:15 INFO - "revision": "026361c4c591" 19:58:15 INFO - }, 19:58:15 INFO - "sourcestamp": { 19:58:15 INFO - "repository": "", 19:58:15 INFO - "hasPatch": false, 19:58:15 INFO - "project": "", 19:58:15 INFO - "branch": "mozilla-release-linux64-debug-unittest", 19:58:15 INFO - "changes": [ 19:58:15 INFO - { 19:58:15 INFO - "category": null, 19:58:15 INFO - "files": [ 19:58:15 INFO - { 19:58:15 INFO - "url": null, 19:58:15 INFO - "name": "http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2" 19:58:15 INFO - }, 19:58:15 INFO - { 19:58:15 INFO - "url": null, 19:58:15 INFO - "name": "http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip" 19:58:15 INFO - } 19:58:15 INFO - ], 19:58:15 INFO - "repository": "", 19:58:15 INFO - "rev": "026361c4c591", 19:58:15 INFO - "who": "sendchange-unittest", 19:58:15 INFO - "when": 1459565862, 19:58:15 INFO - "number": 7809792, 19:58:15 INFO - "comments": "Bug 1258562: [MSE] Abort if MediaSource has been shutdown. r=gerald, a=sledru", 19:58:15 INFO - "project": "", 19:58:15 INFO - "at": "Fri 01 Apr 2016 19:57:42", 19:58:15 INFO - "branch": "mozilla-release-linux64-debug-unittest", 19:58:15 INFO - "revlink": "", 19:58:15 INFO - "properties": [ 19:58:15 INFO - [ 19:58:15 INFO - "buildid", 19:58:15 INFO - "20160401193737", 19:58:15 INFO - "Change" 19:58:15 INFO - ], 19:58:15 INFO - [ 19:58:15 INFO - "builduid", 19:58:15 INFO - "48e677092a0f4ccf9be62b921a231a46", 19:58:15 INFO - "Change" 19:58:15 INFO - ], 19:58:15 INFO - [ 19:58:15 INFO - "pgo_build", 19:58:15 INFO - "False", 19:58:15 INFO - "Change" 19:58:15 INFO - ] 19:58:15 INFO - ], 19:58:15 INFO - "revision": "026361c4c591" 19:58:15 INFO - } 19:58:15 INFO - ], 19:58:15 INFO - "revision": "026361c4c591" 19:58:15 INFO - } 19:58:15 INFO - } 19:58:15 INFO - Found installer url http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2. 19:58:15 INFO - Found test url http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip. 19:58:15 INFO - Running post-action listener: _resource_record_post_action 19:58:15 INFO - ##### 19:58:15 INFO - ##### Running download-and-extract step. 19:58:15 INFO - ##### 19:58:15 INFO - Running pre-action listener: _resource_record_pre_action 19:58:15 INFO - Running main action method: download_and_extract 19:58:15 INFO - mkdir: /builds/slave/test/build/tests 19:58:15 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:15 INFO - trying http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/test_packages.json 19:58:15 INFO - Downloading http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/test_packages.json to /builds/slave/test/build/test_packages.json 19:58:15 INFO - retry: Calling _download_file with args: (), kwargs: {'url': 'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/test_packages.json', 'file_name': '/builds/slave/test/build/test_packages.json'}, attempt #1 19:58:15 INFO - Downloaded 1302 bytes. 19:58:15 INFO - Reading from file /builds/slave/test/build/test_packages.json 19:58:15 INFO - Using the following test package requirements: 19:58:15 INFO - {u'common': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip'], 19:58:15 INFO - u'cppunittest': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.cppunittest.tests.zip'], 19:58:15 INFO - u'jittest': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'jsshell-linux-x86_64.zip'], 19:58:15 INFO - u'mochitest': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.mochitest.tests.zip'], 19:58:15 INFO - u'mozbase': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip'], 19:58:15 INFO - u'reftest': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.reftest.tests.zip'], 19:58:15 INFO - u'talos': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.talos.tests.zip'], 19:58:15 INFO - u'web-platform': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip'], 19:58:15 INFO - u'webapprt': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip'], 19:58:15 INFO - u'xpcshell': [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 19:58:15 INFO - u'firefox-45.0.1.en-US.linux-x86_64.xpcshell.tests.zip']} 19:58:15 INFO - Downloading packages: [u'firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', u'firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip'] for test suite category: web-platform 19:58:15 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:15 INFO - trying http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip 19:58:15 INFO - Downloading http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip to /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip 19:58:15 INFO - retry: Calling _download_file with args: (), kwargs: {'url': u'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', 'file_name': u'/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip'}, attempt #1 19:58:18 INFO - Downloaded 20894960 bytes. 19:58:18 INFO - Running command: ['unzip', '-q', '-o', u'/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip', '-d', '/builds/slave/test/build/tests', 'bin/*', 'config/*', 'mozbase/*', 'marionette/*', 'tools/wptserve/*', 'web-platform/*'] 19:58:18 INFO - Copy/paste: unzip -q -o /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.common.tests.zip -d /builds/slave/test/build/tests bin/* config/* mozbase/* marionette/* tools/wptserve/* web-platform/* 19:58:18 INFO - caution: filename not matched: web-platform/* 19:58:18 INFO - Return code: 11 19:58:18 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:18 INFO - trying http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip 19:58:18 INFO - Downloading http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip to /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip 19:58:18 INFO - retry: Calling _download_file with args: (), kwargs: {'url': u'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip', 'file_name': u'/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip'}, attempt #1 19:58:23 INFO - Downloaded 31017856 bytes. 19:58:23 INFO - Running command: ['unzip', '-q', '-o', u'/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip', '-d', '/builds/slave/test/build/tests', 'bin/*', 'config/*', 'mozbase/*', 'marionette/*', 'tools/wptserve/*', 'web-platform/*'] 19:58:23 INFO - Copy/paste: unzip -q -o /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.web-platform.tests.zip -d /builds/slave/test/build/tests bin/* config/* mozbase/* marionette/* tools/wptserve/* web-platform/* 19:58:26 INFO - caution: filename not matched: bin/* 19:58:26 INFO - caution: filename not matched: config/* 19:58:26 INFO - caution: filename not matched: mozbase/* 19:58:26 INFO - caution: filename not matched: marionette/* 19:58:26 INFO - caution: filename not matched: tools/wptserve/* 19:58:26 INFO - Return code: 11 19:58:26 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:26 INFO - trying http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 19:58:26 INFO - Downloading http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 to /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 19:58:26 INFO - retry: Calling _download_file with args: (), kwargs: {'url': 'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2', 'file_name': '/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.tar.bz2'}, attempt #1 19:58:30 INFO - Downloaded 58806681 bytes. 19:58:30 INFO - Setting buildbot property build_url to http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 19:58:30 INFO - mkdir: /builds/slave/test/properties 19:58:30 INFO - Writing buildbot properties ['build_url'] to /builds/slave/test/properties/build_url 19:58:30 INFO - Writing to file /builds/slave/test/properties/build_url 19:58:30 INFO - Contents: 19:58:30 INFO - build_url:http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 19:58:31 INFO - Setting buildbot property symbols_url to http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip 19:58:31 INFO - Writing buildbot properties ['symbols_url'] to /builds/slave/test/properties/symbols_url 19:58:31 INFO - Writing to file /builds/slave/test/properties/symbols_url 19:58:31 INFO - Contents: 19:58:31 INFO - symbols_url:http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip 19:58:31 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:31 INFO - trying http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip 19:58:31 INFO - Downloading http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip to /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip 19:58:31 INFO - retry: Calling _download_file with args: (), kwargs: {'url': 'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip', 'file_name': '/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip'}, attempt #1 19:58:34 INFO - Downloaded 51506534 bytes. 19:58:34 INFO - Running command: ['unzip', '-q', '-o', '/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip', '-d', '/builds/slave/test/build/symbols'] 19:58:34 INFO - Copy/paste: unzip -q -o /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip -d /builds/slave/test/build/symbols 19:58:38 INFO - Return code: 0 19:58:38 INFO - Running post-action listener: _resource_record_post_action 19:58:38 INFO - Running post-action listener: set_extra_try_arguments 19:58:38 INFO - ##### 19:58:38 INFO - ##### Running create-virtualenv step. 19:58:38 INFO - ##### 19:58:38 INFO - Running pre-action listener: _pre_create_virtualenv 19:58:38 INFO - Running pre-action listener: _resource_record_pre_action 19:58:38 INFO - Running main action method: create_virtualenv 19:58:38 INFO - Creating virtualenv /builds/slave/test/build/venv 19:58:38 INFO - Running command: ['/tools/buildbot/bin/python', '/tools/misc-python/virtualenv.py', '--no-site-packages', '--distribute', '/builds/slave/test/build/venv'] in /builds/slave/test/build 19:58:38 INFO - Copy/paste: /tools/buildbot/bin/python /tools/misc-python/virtualenv.py --no-site-packages --distribute /builds/slave/test/build/venv 19:58:38 INFO - The --no-site-packages flag is deprecated; it is now the default behavior. 19:58:38 INFO - Using real prefix '/usr' 19:58:38 INFO - New python executable in /builds/slave/test/build/venv/bin/python 19:58:39 INFO - Installing distribute.............................................................................................................................................................................................done. 19:58:44 INFO - Installing pip.................done. 19:58:44 INFO - Return code: 0 19:58:44 INFO - Installing psutil>=0.7.1 into virtualenv /builds/slave/test/build/venv 19:58:44 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:44 INFO - http://pypi.pvt.build.mozilla.org/pub matches http://pypi.pvt.build.mozilla.org 19:58:44 INFO - URL Candidate: http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:44 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:44 INFO - http://pypi.pub.build.mozilla.org/pub matches http://pypi.pub.build.mozilla.org 19:58:44 INFO - URL Candidate: http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:44 INFO - retry: Calling run_command with args: [['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'psutil>=0.7.1']], kwargs: {'error_level': 'warning', 'error_list': [{'substr': 'not found or a compiler error:', 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2cb8030>, 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2cc6300>, 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2d4dd20>, 'level': 'debug'}, {'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}], 'cwd': '/builds/slave/test/build', 'env': {'TMOUT': '86400', 'LOGNAME': 'cltbld', 'USER': 'cltbld', 'HOME': '/home/cltbld', 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'CCACHE_UMASK': '002', 'LANG': 'en_US.UTF-8', 'TERM': 'linux', 'SHELL': '/bin/bash', 'MOZ_NODE_PATH': '/usr/bin/node', 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 'SHLVL': '1', 'NO_FAIL_ON_TEST_ERRORS': '1', 'MOZ_NO_REMOTE': '1', 'MOZ_HIDE_RESULTS_TABLE': '1', 'MAIL': '/var/mail/cltbld', '_': '/tools/buildbot/bin/python', 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 'PWD': '/builds/slave/test', 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 'CCACHE_DIR': '/builds/ccache'}}, attempt #1 19:58:44 INFO - Running command: ['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'psutil>=0.7.1'] in /builds/slave/test/build 19:58:44 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip install --timeout 120 --no-index --find-links http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pvt.build.mozilla.org/pub --find-links http://pypi.pub.build.mozilla.org/pub psutil>=0.7.1 19:58:44 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:58:44 INFO - 'CCACHE_UMASK': '002', 19:58:44 INFO - 'DISPLAY': ':0', 19:58:44 INFO - 'HOME': '/home/cltbld', 19:58:44 INFO - 'LANG': 'en_US.UTF-8', 19:58:44 INFO - 'LOGNAME': 'cltbld', 19:58:44 INFO - 'MAIL': '/var/mail/cltbld', 19:58:44 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:58:44 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:58:44 INFO - 'MOZ_NO_REMOTE': '1', 19:58:44 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:58:44 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:58:44 INFO - 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:58:44 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:58:44 INFO - 'PWD': '/builds/slave/test', 19:58:44 INFO - 'SHELL': '/bin/bash', 19:58:44 INFO - 'SHLVL': '1', 19:58:44 INFO - 'TERM': 'linux', 19:58:44 INFO - 'TMOUT': '86400', 19:58:44 INFO - 'USER': 'cltbld', 19:58:44 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:58:44 INFO - '_': '/tools/buildbot/bin/python'} 19:58:44 INFO - Ignoring indexes: https://pypi.python.org/simple/ 19:58:44 INFO - Downloading/unpacking psutil>=0.7.1 19:58:44 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:44 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:58:44 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:44 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:44 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:44 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:58:50 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/psutil/setup.py) egg_info for package psutil 19:58:50 INFO - warning: no previously-included files matching '*' found under directory 'docs/_build' 19:58:50 INFO - warning: manifest_maker: MANIFEST.in, line 18: 'recursive-include' expects ... 19:58:50 INFO - Installing collected packages: psutil 19:58:50 INFO - Running setup.py install for psutil 19:58:50 INFO - building 'psutil._psutil_linux' extension 19:58:50 INFO - gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DPSUTIL_VERSION=311 -I/usr/include/python2.7 -c psutil/_psutil_linux.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o 19:58:51 INFO - gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so 19:58:51 INFO - building 'psutil._psutil_posix' extension 19:58:51 INFO - gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o 19:58:51 INFO - gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so 19:58:51 INFO - warning: no previously-included files matching '*' found under directory 'docs/_build' 19:58:51 INFO - warning: manifest_maker: MANIFEST.in, line 18: 'recursive-include' expects ... 19:58:51 INFO - Successfully installed psutil 19:58:51 INFO - Cleaning up... 19:58:51 INFO - Return code: 0 19:58:51 INFO - Installing mozsystemmonitor==0.0.0 into virtualenv /builds/slave/test/build/venv 19:58:51 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:51 INFO - http://pypi.pvt.build.mozilla.org/pub matches http://pypi.pvt.build.mozilla.org 19:58:51 INFO - URL Candidate: http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:51 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:51 INFO - http://pypi.pub.build.mozilla.org/pub matches http://pypi.pub.build.mozilla.org 19:58:51 INFO - URL Candidate: http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:51 INFO - retry: Calling run_command with args: [['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'mozsystemmonitor==0.0.0']], kwargs: {'error_level': 'warning', 'error_list': [{'substr': 'not found or a compiler error:', 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2cb8030>, 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2cc6300>, 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2d4dd20>, 'level': 'debug'}, {'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}], 'cwd': '/builds/slave/test/build', 'env': {'TMOUT': '86400', 'LOGNAME': 'cltbld', 'USER': 'cltbld', 'HOME': '/home/cltbld', 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'CCACHE_UMASK': '002', 'LANG': 'en_US.UTF-8', 'TERM': 'linux', 'SHELL': '/bin/bash', 'MOZ_NODE_PATH': '/usr/bin/node', 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 'SHLVL': '1', 'NO_FAIL_ON_TEST_ERRORS': '1', 'MOZ_NO_REMOTE': '1', 'MOZ_HIDE_RESULTS_TABLE': '1', 'MAIL': '/var/mail/cltbld', '_': '/tools/buildbot/bin/python', 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 'PWD': '/builds/slave/test', 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 'CCACHE_DIR': '/builds/ccache'}}, attempt #1 19:58:51 INFO - Running command: ['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'mozsystemmonitor==0.0.0'] in /builds/slave/test/build 19:58:51 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip install --timeout 120 --no-index --find-links http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pvt.build.mozilla.org/pub --find-links http://pypi.pub.build.mozilla.org/pub mozsystemmonitor==0.0.0 19:58:51 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:58:51 INFO - 'CCACHE_UMASK': '002', 19:58:51 INFO - 'DISPLAY': ':0', 19:58:51 INFO - 'HOME': '/home/cltbld', 19:58:51 INFO - 'LANG': 'en_US.UTF-8', 19:58:51 INFO - 'LOGNAME': 'cltbld', 19:58:51 INFO - 'MAIL': '/var/mail/cltbld', 19:58:51 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:58:51 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:58:51 INFO - 'MOZ_NO_REMOTE': '1', 19:58:51 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:58:51 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:58:51 INFO - 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:58:51 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:58:51 INFO - 'PWD': '/builds/slave/test', 19:58:51 INFO - 'SHELL': '/bin/bash', 19:58:51 INFO - 'SHLVL': '1', 19:58:51 INFO - 'TERM': 'linux', 19:58:51 INFO - 'TMOUT': '86400', 19:58:51 INFO - 'USER': 'cltbld', 19:58:51 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:58:51 INFO - '_': '/tools/buildbot/bin/python'} 19:58:52 INFO - Ignoring indexes: https://pypi.python.org/simple/ 19:58:52 INFO - Downloading/unpacking mozsystemmonitor==0.0.0 19:58:52 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:52 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:58:52 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:52 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:52 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:52 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:58:57 INFO - Downloading mozsystemmonitor-0.0.tar.gz 19:58:57 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/mozsystemmonitor/setup.py) egg_info for package mozsystemmonitor 19:58:57 INFO - Requirement already satisfied (use --upgrade to upgrade): psutil>=0.7.1 in ./venv/lib/python2.7/site-packages (from mozsystemmonitor==0.0.0) 19:58:57 INFO - Installing collected packages: mozsystemmonitor 19:58:57 INFO - Running setup.py install for mozsystemmonitor 19:58:57 INFO - Successfully installed mozsystemmonitor 19:58:57 INFO - Cleaning up... 19:58:57 INFO - Return code: 0 19:58:57 INFO - Installing blobuploader==1.2.4 into virtualenv /builds/slave/test/build/venv 19:58:57 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:57 INFO - http://pypi.pvt.build.mozilla.org/pub matches http://pypi.pvt.build.mozilla.org 19:58:57 INFO - URL Candidate: http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:57 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:58:57 INFO - http://pypi.pub.build.mozilla.org/pub matches http://pypi.pub.build.mozilla.org 19:58:57 INFO - URL Candidate: http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:58:57 INFO - retry: Calling run_command with args: [['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'blobuploader==1.2.4']], kwargs: {'error_level': 'warning', 'error_list': [{'substr': 'not found or a compiler error:', 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2cb8030>, 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2cc6300>, 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2d4dd20>, 'level': 'debug'}, {'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}], 'cwd': '/builds/slave/test/build', 'env': {'TMOUT': '86400', 'LOGNAME': 'cltbld', 'USER': 'cltbld', 'HOME': '/home/cltbld', 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'CCACHE_UMASK': '002', 'LANG': 'en_US.UTF-8', 'TERM': 'linux', 'SHELL': '/bin/bash', 'MOZ_NODE_PATH': '/usr/bin/node', 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 'SHLVL': '1', 'NO_FAIL_ON_TEST_ERRORS': '1', 'MOZ_NO_REMOTE': '1', 'MOZ_HIDE_RESULTS_TABLE': '1', 'MAIL': '/var/mail/cltbld', '_': '/tools/buildbot/bin/python', 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 'PWD': '/builds/slave/test', 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 'CCACHE_DIR': '/builds/ccache'}}, attempt #1 19:58:57 INFO - Running command: ['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub', 'blobuploader==1.2.4'] in /builds/slave/test/build 19:58:57 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip install --timeout 120 --no-index --find-links http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pvt.build.mozilla.org/pub --find-links http://pypi.pub.build.mozilla.org/pub blobuploader==1.2.4 19:58:57 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:58:57 INFO - 'CCACHE_UMASK': '002', 19:58:57 INFO - 'DISPLAY': ':0', 19:58:57 INFO - 'HOME': '/home/cltbld', 19:58:57 INFO - 'LANG': 'en_US.UTF-8', 19:58:57 INFO - 'LOGNAME': 'cltbld', 19:58:57 INFO - 'MAIL': '/var/mail/cltbld', 19:58:57 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:58:57 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:58:57 INFO - 'MOZ_NO_REMOTE': '1', 19:58:57 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:58:57 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:58:57 INFO - 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:58:57 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:58:57 INFO - 'PWD': '/builds/slave/test', 19:58:57 INFO - 'SHELL': '/bin/bash', 19:58:57 INFO - 'SHLVL': '1', 19:58:57 INFO - 'TERM': 'linux', 19:58:57 INFO - 'TMOUT': '86400', 19:58:57 INFO - 'USER': 'cltbld', 19:58:57 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:58:57 INFO - '_': '/tools/buildbot/bin/python'} 19:58:57 INFO - Ignoring indexes: https://pypi.python.org/simple/ 19:58:57 INFO - Downloading/unpacking blobuploader==1.2.4 19:58:57 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:57 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:58:57 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:57 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:58:58 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:58:58 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:02 INFO - Downloading blobuploader-1.2.4.tar.gz 19:59:02 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/blobuploader/setup.py) egg_info for package blobuploader 19:59:03 INFO - Downloading/unpacking requests==1.2.3. (from blobuploader==1.2.4) 19:59:03 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:03 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:03 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:03 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:03 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:03 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:04 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/requests/setup.py) egg_info for package requests 19:59:04 INFO - Downloading/unpacking docopt==0.6.1 (from blobuploader==1.2.4) 19:59:04 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:04 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:04 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:04 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:04 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:04 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:05 INFO - Downloading docopt-0.6.1.tar.gz 19:59:05 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/docopt/setup.py) egg_info for package docopt 19:59:05 INFO - Installing collected packages: blobuploader, requests, docopt 19:59:05 INFO - Running setup.py install for blobuploader 19:59:05 INFO - changing mode of build/scripts-2.7/blobberc.py from 664 to 775 19:59:05 INFO - changing mode of /builds/slave/test/build/venv/bin/blobberc.py to 775 19:59:05 INFO - Running setup.py install for requests 19:59:06 INFO - Running setup.py install for docopt 19:59:06 INFO - Successfully installed blobuploader requests docopt 19:59:06 INFO - Cleaning up... 19:59:06 INFO - Return code: 0 19:59:06 INFO - Installing None into virtualenv /builds/slave/test/build/venv 19:59:06 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:59:06 INFO - http://pypi.pvt.build.mozilla.org/pub matches http://pypi.pvt.build.mozilla.org 19:59:06 INFO - URL Candidate: http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:59:06 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:59:06 INFO - http://pypi.pub.build.mozilla.org/pub matches http://pypi.pub.build.mozilla.org 19:59:06 INFO - URL Candidate: http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:59:06 INFO - retry: Calling run_command with args: [['/builds/slave/test/build/venv/bin/pip', 'install', '--no-deps', '--timeout', '120', '-r', '/builds/slave/test/build/tests/config/marionette_requirements.txt', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub']], kwargs: {'error_level': 'warning', 'error_list': [{'substr': 'not found or a compiler error:', 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2cb8030>, 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2cc6300>, 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2d4dd20>, 'level': 'debug'}, {'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}], 'cwd': '/builds/slave/test/build/tests/config', 'env': {'TMOUT': '86400', 'LOGNAME': 'cltbld', 'USER': 'cltbld', 'HOME': '/home/cltbld', 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'CCACHE_UMASK': '002', 'LANG': 'en_US.UTF-8', 'TERM': 'linux', 'SHELL': '/bin/bash', 'MOZ_NODE_PATH': '/usr/bin/node', 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 'SHLVL': '1', 'NO_FAIL_ON_TEST_ERRORS': '1', 'MOZ_NO_REMOTE': '1', 'MOZ_HIDE_RESULTS_TABLE': '1', 'MAIL': '/var/mail/cltbld', '_': '/tools/buildbot/bin/python', 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 'PWD': '/builds/slave/test', 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 'CCACHE_DIR': '/builds/ccache'}}, attempt #1 19:59:06 INFO - Running command: ['/builds/slave/test/build/venv/bin/pip', 'install', '--no-deps', '--timeout', '120', '-r', '/builds/slave/test/build/tests/config/marionette_requirements.txt', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub'] in /builds/slave/test/build/tests/config 19:59:06 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip install --no-deps --timeout 120 -r /builds/slave/test/build/tests/config/marionette_requirements.txt --no-index --find-links http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pvt.build.mozilla.org/pub --find-links http://pypi.pub.build.mozilla.org/pub 19:59:06 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:59:06 INFO - 'CCACHE_UMASK': '002', 19:59:06 INFO - 'DISPLAY': ':0', 19:59:06 INFO - 'HOME': '/home/cltbld', 19:59:06 INFO - 'LANG': 'en_US.UTF-8', 19:59:06 INFO - 'LOGNAME': 'cltbld', 19:59:06 INFO - 'MAIL': '/var/mail/cltbld', 19:59:06 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:59:06 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:59:06 INFO - 'MOZ_NO_REMOTE': '1', 19:59:06 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:59:06 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:59:06 INFO - 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:59:06 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:59:06 INFO - 'PWD': '/builds/slave/test', 19:59:06 INFO - 'SHELL': '/bin/bash', 19:59:06 INFO - 'SHLVL': '1', 19:59:06 INFO - 'TERM': 'linux', 19:59:06 INFO - 'TMOUT': '86400', 19:59:06 INFO - 'USER': 'cltbld', 19:59:06 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:59:06 INFO - '_': '/tools/buildbot/bin/python'} 19:59:06 INFO - Ignoring indexes: https://pypi.python.org/simple/ 19:59:06 INFO - Unpacking /builds/slave/test/build/tests/mozbase/manifestparser 19:59:07 INFO - Running setup.py (path:/tmp/pip-Cx14LM-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/manifestparser 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozcrash 19:59:07 INFO - Running setup.py (path:/tmp/pip-6fuDEg-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozcrash 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozdebug 19:59:07 INFO - Running setup.py (path:/tmp/pip-2Ih174-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozdebug 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozdevice 19:59:07 INFO - Running setup.py (path:/tmp/pip-ni3Ao4-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozdevice 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozfile 19:59:07 INFO - Running setup.py (path:/tmp/pip-Y0o80Q-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozfile 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozhttpd 19:59:07 INFO - Running setup.py (path:/tmp/pip-QzoQlY-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozhttpd 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozinfo 19:59:07 INFO - Running setup.py (path:/tmp/pip-KC0gdk-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozinfo 19:59:07 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozinstall 19:59:07 INFO - Running setup.py (path:/tmp/pip-paIp8j-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozinstall 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozleak 19:59:08 INFO - Running setup.py (path:/tmp/pip-3nHbGW-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozleak 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozlog 19:59:08 INFO - Running setup.py (path:/tmp/pip-w5XNPc-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozlog 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/moznetwork 19:59:08 INFO - Running setup.py (path:/tmp/pip-g7MHfx-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/moznetwork 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozprocess 19:59:08 INFO - Running setup.py (path:/tmp/pip-50C3TZ-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozprocess 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozprofile 19:59:08 INFO - Running setup.py (path:/tmp/pip-lHEVsy-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozprofile 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozrunner 19:59:08 INFO - Running setup.py (path:/tmp/pip-C5AwOs-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozrunner 19:59:08 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozscreenshot 19:59:08 INFO - Running setup.py (path:/tmp/pip-lIAbfL-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozscreenshot 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/mozbase/moztest 19:59:09 INFO - Running setup.py (path:/tmp/pip-QWTSvO-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/moztest 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozversion 19:59:09 INFO - Running setup.py (path:/tmp/pip-wJxxTd-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozversion 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/tools/wptserve 19:59:09 INFO - Running setup.py (path:/tmp/pip-2oRqiQ-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/tools/wptserve 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/marionette/transport 19:59:09 INFO - Running setup.py (path:/tmp/pip-cGopbO-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/transport 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/marionette/driver 19:59:09 INFO - Running setup.py (path:/tmp/pip-ZLfdRg-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/driver 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/marionette/marionette/runner/mixins/browsermob-proxy-py 19:59:09 INFO - Running setup.py (path:/tmp/pip-urk4nE-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/marionette/runner/mixins/browsermob-proxy-py 19:59:09 INFO - Unpacking /builds/slave/test/build/tests/marionette 19:59:10 INFO - Running setup.py (path:/tmp/pip-mdSTQy-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette 19:59:10 INFO - warning: no files found matching '*.js' under directory 'marionette/touch' 19:59:10 INFO - Installing collected packages: manifestparser, mozcrash, mozdebug, mozdevice, mozfile, mozhttpd, mozinfo, mozInstall, mozleak, mozlog, moznetwork, mozprocess, mozprofile, mozrunner, mozscreenshot, moztest, mozversion, wptserve, marionette-transport, marionette-driver, browsermob-proxy, marionette-client 19:59:10 INFO - Running setup.py install for manifestparser 19:59:10 INFO - Installing manifestparser script to /builds/slave/test/build/venv/bin 19:59:10 INFO - Running setup.py install for mozcrash 19:59:10 INFO - Running setup.py install for mozdebug 19:59:10 INFO - Running setup.py install for mozdevice 19:59:11 INFO - Installing sutini script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Installing dm script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Running setup.py install for mozfile 19:59:11 INFO - Running setup.py install for mozhttpd 19:59:11 INFO - Installing mozhttpd script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Running setup.py install for mozinfo 19:59:11 INFO - Installing mozinfo script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Running setup.py install for mozInstall 19:59:11 INFO - Installing moz_remove_from_system script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Installing mozuninstall script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Installing mozinstall script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Installing moz_add_to_system script to /builds/slave/test/build/venv/bin 19:59:11 INFO - Running setup.py install for mozleak 19:59:11 INFO - Running setup.py install for mozlog 19:59:12 INFO - Installing structlog script to /builds/slave/test/build/venv/bin 19:59:12 INFO - Running setup.py install for moznetwork 19:59:12 INFO - Installing moznetwork script to /builds/slave/test/build/venv/bin 19:59:12 INFO - Running setup.py install for mozprocess 19:59:12 INFO - Running setup.py install for mozprofile 19:59:12 INFO - Installing mozprofile script to /builds/slave/test/build/venv/bin 19:59:12 INFO - Installing diff-profiles script to /builds/slave/test/build/venv/bin 19:59:12 INFO - Installing view-profile script to /builds/slave/test/build/venv/bin 19:59:12 INFO - Running setup.py install for mozrunner 19:59:13 INFO - Installing mozrunner script to /builds/slave/test/build/venv/bin 19:59:13 INFO - Running setup.py install for mozscreenshot 19:59:13 INFO - Running setup.py install for moztest 19:59:13 INFO - Running setup.py install for mozversion 19:59:13 INFO - Installing mozversion script to /builds/slave/test/build/venv/bin 19:59:13 INFO - Running setup.py install for wptserve 19:59:13 INFO - Running setup.py install for marionette-transport 19:59:14 INFO - Running setup.py install for marionette-driver 19:59:14 INFO - Running setup.py install for browsermob-proxy 19:59:14 INFO - Running setup.py install for marionette-client 19:59:14 INFO - warning: no files found matching '*.js' under directory 'marionette/touch' 19:59:15 INFO - Installing marionette script to /builds/slave/test/build/venv/bin 19:59:15 INFO - Successfully installed manifestparser mozcrash mozdebug mozdevice mozfile mozhttpd mozinfo mozInstall mozleak mozlog moznetwork mozprocess mozprofile mozrunner mozscreenshot moztest mozversion wptserve marionette-transport marionette-driver browsermob-proxy marionette-client 19:59:15 INFO - Cleaning up... 19:59:15 INFO - Return code: 0 19:59:15 INFO - Installing None into virtualenv /builds/slave/test/build/venv 19:59:15 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:59:15 INFO - http://pypi.pvt.build.mozilla.org/pub matches http://pypi.pvt.build.mozilla.org 19:59:15 INFO - URL Candidate: http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:59:15 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:59:15 INFO - http://pypi.pub.build.mozilla.org/pub matches http://pypi.pub.build.mozilla.org 19:59:15 INFO - URL Candidate: http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub 19:59:15 INFO - retry: Calling run_command with args: [['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '-r', '/builds/slave/test/build/tests/config/marionette_requirements.txt', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub']], kwargs: {'error_level': 'warning', 'error_list': [{'substr': 'not found or a compiler error:', 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2cb8030>, 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2cc6300>, 'level': 'warning'}, {'regex': <_sre.SRE_Pattern object at 0x2d4dd20>, 'level': 'debug'}, {'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}], 'cwd': '/builds/slave/test/build/tests/config', 'env': {'TMOUT': '86400', 'LOGNAME': 'cltbld', 'USER': 'cltbld', 'HOME': '/home/cltbld', 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 'DISPLAY': ':0', 'CCACHE_UMASK': '002', 'LANG': 'en_US.UTF-8', 'TERM': 'linux', 'SHELL': '/bin/bash', 'MOZ_NODE_PATH': '/usr/bin/node', 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 'SHLVL': '1', 'NO_FAIL_ON_TEST_ERRORS': '1', 'MOZ_NO_REMOTE': '1', 'MOZ_HIDE_RESULTS_TABLE': '1', 'MAIL': '/var/mail/cltbld', '_': '/tools/buildbot/bin/python', 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 'PWD': '/builds/slave/test', 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 'CCACHE_DIR': '/builds/ccache'}}, attempt #1 19:59:15 INFO - Running command: ['/builds/slave/test/build/venv/bin/pip', 'install', '--timeout', '120', '-r', '/builds/slave/test/build/tests/config/marionette_requirements.txt', '--no-index', '--find-links', 'http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub', '--find-links', 'http://pypi.pvt.build.mozilla.org/pub', '--find-links', 'http://pypi.pub.build.mozilla.org/pub'] in /builds/slave/test/build/tests/config 19:59:15 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip install --timeout 120 -r /builds/slave/test/build/tests/config/marionette_requirements.txt --no-index --find-links http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub --find-links http://pypi.pvt.build.mozilla.org/pub --find-links http://pypi.pub.build.mozilla.org/pub 19:59:15 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:59:15 INFO - 'CCACHE_UMASK': '002', 19:59:15 INFO - 'DISPLAY': ':0', 19:59:15 INFO - 'HOME': '/home/cltbld', 19:59:15 INFO - 'LANG': 'en_US.UTF-8', 19:59:15 INFO - 'LOGNAME': 'cltbld', 19:59:15 INFO - 'MAIL': '/var/mail/cltbld', 19:59:15 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:59:15 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:59:15 INFO - 'MOZ_NO_REMOTE': '1', 19:59:15 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:59:15 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:59:15 INFO - 'PATH': '/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:59:15 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:59:15 INFO - 'PWD': '/builds/slave/test', 19:59:15 INFO - 'SHELL': '/bin/bash', 19:59:15 INFO - 'SHLVL': '1', 19:59:15 INFO - 'TERM': 'linux', 19:59:15 INFO - 'TMOUT': '86400', 19:59:15 INFO - 'USER': 'cltbld', 19:59:15 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:59:15 INFO - '_': '/tools/buildbot/bin/python'} 19:59:15 INFO - Ignoring indexes: https://pypi.python.org/simple/ 19:59:15 INFO - Unpacking /builds/slave/test/build/tests/mozbase/manifestparser 19:59:15 INFO - Running setup.py (path:/tmp/pip-2qsARu-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/manifestparser 19:59:15 INFO - Requirement already satisfied (use --upgrade to upgrade): manifestparser==1.1 from file:///builds/slave/test/build/tests/mozbase/manifestparser in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 1)) 19:59:15 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozcrash 19:59:15 INFO - Running setup.py (path:/tmp/pip-YZLI9h-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozcrash 19:59:15 INFO - Requirement already satisfied (use --upgrade to upgrade): mozcrash==0.16 from file:///builds/slave/test/build/tests/mozbase/mozcrash in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 2)) 19:59:15 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozdebug 19:59:15 INFO - Running setup.py (path:/tmp/pip-F7fe4E-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozdebug 19:59:15 INFO - Requirement already satisfied (use --upgrade to upgrade): mozdebug==0.1 from file:///builds/slave/test/build/tests/mozbase/mozdebug in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 3)) 19:59:15 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozdevice 19:59:15 INFO - Running setup.py (path:/tmp/pip-YYeEra-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozdevice 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozdevice==0.47 from file:///builds/slave/test/build/tests/mozbase/mozdevice in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 4)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozfile 19:59:16 INFO - Running setup.py (path:/tmp/pip-_NMNtw-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozfile 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozfile==1.2 from file:///builds/slave/test/build/tests/mozbase/mozfile in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 5)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozhttpd 19:59:16 INFO - Running setup.py (path:/tmp/pip-esOBlu-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozhttpd 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozhttpd==0.7 from file:///builds/slave/test/build/tests/mozbase/mozhttpd in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 6)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozinfo 19:59:16 INFO - Running setup.py (path:/tmp/pip-G7C47U-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozinfo 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozinfo==0.9 from file:///builds/slave/test/build/tests/mozbase/mozinfo in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 7)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozinstall 19:59:16 INFO - Running setup.py (path:/tmp/pip-w1TBmN-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozinstall 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozInstall==1.12 from file:///builds/slave/test/build/tests/mozbase/mozinstall in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 8)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozleak 19:59:16 INFO - Running setup.py (path:/tmp/pip-ZuRAHN-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozleak 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozleak==0.1 from file:///builds/slave/test/build/tests/mozbase/mozleak in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 9)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozlog 19:59:16 INFO - Running setup.py (path:/tmp/pip-FqHxoj-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozlog 19:59:16 INFO - Requirement already satisfied (use --upgrade to upgrade): mozlog==3.1 from file:///builds/slave/test/build/tests/mozbase/mozlog in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 10)) 19:59:16 INFO - Unpacking /builds/slave/test/build/tests/mozbase/moznetwork 19:59:16 INFO - Running setup.py (path:/tmp/pip-LW_8QN-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/moznetwork 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): moznetwork==0.27 from file:///builds/slave/test/build/tests/mozbase/moznetwork in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 11)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozprocess 19:59:17 INFO - Running setup.py (path:/tmp/pip-hZr7Fu-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozprocess 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): mozprocess==0.22 from file:///builds/slave/test/build/tests/mozbase/mozprocess in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 12)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozprofile 19:59:17 INFO - Running setup.py (path:/tmp/pip-7KPggW-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozprofile 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): mozprofile==0.27 from file:///builds/slave/test/build/tests/mozbase/mozprofile in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 13)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozrunner 19:59:17 INFO - Running setup.py (path:/tmp/pip-j21LYA-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozrunner 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): mozrunner==6.11 from file:///builds/slave/test/build/tests/mozbase/mozrunner in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 14)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozscreenshot 19:59:17 INFO - Running setup.py (path:/tmp/pip-MIj7YO-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozscreenshot 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): mozscreenshot==0.1 from file:///builds/slave/test/build/tests/mozbase/mozscreenshot in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 15)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/moztest 19:59:17 INFO - Running setup.py (path:/tmp/pip-b8DJ5R-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/moztest 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): moztest==0.7 from file:///builds/slave/test/build/tests/mozbase/moztest in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 16)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/mozbase/mozversion 19:59:17 INFO - Running setup.py (path:/tmp/pip-co557a-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/mozbase/mozversion 19:59:17 INFO - Requirement already satisfied (use --upgrade to upgrade): mozversion==1.4 from file:///builds/slave/test/build/tests/mozbase/mozversion in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 17)) 19:59:17 INFO - Unpacking /builds/slave/test/build/tests/tools/wptserve 19:59:17 INFO - Running setup.py (path:/tmp/pip-jYI9l9-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/tools/wptserve 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): wptserve==1.3.0 from file:///builds/slave/test/build/tests/tools/wptserve in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 2)) 19:59:18 INFO - Unpacking /builds/slave/test/build/tests/marionette/transport 19:59:18 INFO - Running setup.py (path:/tmp/pip-pOqFKw-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/transport 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): marionette-transport==1.0.0 from file:///builds/slave/test/build/tests/marionette/transport in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 3)) 19:59:18 INFO - Unpacking /builds/slave/test/build/tests/marionette/driver 19:59:18 INFO - Running setup.py (path:/tmp/pip-H2eVza-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/driver 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): marionette-driver==1.1.1 from file:///builds/slave/test/build/tests/marionette/driver in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 4)) 19:59:18 INFO - Unpacking /builds/slave/test/build/tests/marionette/marionette/runner/mixins/browsermob-proxy-py 19:59:18 INFO - Running setup.py (path:/tmp/pip-no63gH-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette/marionette/runner/mixins/browsermob-proxy-py 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): browsermob-proxy==0.6.0 from file:///builds/slave/test/build/tests/marionette/marionette/runner/mixins/browsermob-proxy-py in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 5)) 19:59:18 INFO - Unpacking /builds/slave/test/build/tests/marionette 19:59:18 INFO - Running setup.py (path:/tmp/pip-oyIi8a-build/setup.py) egg_info for package from file:///builds/slave/test/build/tests/marionette 19:59:18 INFO - warning: no files found matching '*.js' under directory 'marionette/touch' 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): marionette-client==2.0.0 from file:///builds/slave/test/build/tests/marionette in /builds/slave/test/build/venv/lib/python2.7/site-packages (from -r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 6)) 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): mozfile>=1.0 in /builds/slave/test/build/venv/lib/python2.7/site-packages (from mozcrash==0.16->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 2)) 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): mozlog>=3.0 in /builds/slave/test/build/venv/lib/python2.7/site-packages (from mozcrash==0.16->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 2)) 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): mozinfo in /builds/slave/test/build/venv/lib/python2.7/site-packages (from mozdebug==0.1->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 3)) 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): moznetwork>=0.24 in /builds/slave/test/build/venv/lib/python2.7/site-packages (from mozdevice==0.47->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 4)) 19:59:18 INFO - Requirement already satisfied (use --upgrade to upgrade): mozprocess>=0.19 in /builds/slave/test/build/venv/lib/python2.7/site-packages (from mozdevice==0.47->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 4)) 19:59:18 INFO - Downloading/unpacking blessings>=1.3 (from mozlog==3.1->-r /builds/slave/test/build/tests/config/mozbase_requirements.txt (line 10)) 19:59:18 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:18 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:18 INFO - http://pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:18 INFO - http://pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org.proxxy1.srv.releng.use1.mozilla.com has it available 19:59:18 INFO - http://pypi.pvt.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pvt.build.mozilla.org has it available 19:59:18 INFO - http://pypi.pub.build.mozilla.org/pub uses an insecure transport scheme (http). Consider using https if pypi.pub.build.mozilla.org has it available 19:59:23 INFO - Downloading blessings-1.6.tar.gz 19:59:24 INFO - Running setup.py (path:/builds/slave/test/build/venv/build/blessings/setup.py) egg_info for package blessings 19:59:24 INFO - Requirement already satisfied (use --upgrade to upgrade): requests>=1.1.0 in /builds/slave/test/build/venv/lib/python2.7/site-packages (from browsermob-proxy==0.6.0->-r /builds/slave/test/build/tests/config/marionette_requirements.txt (line 5)) 19:59:24 INFO - Installing collected packages: blessings 19:59:24 INFO - Running setup.py install for blessings 19:59:24 INFO - Successfully installed blessings 19:59:24 INFO - Cleaning up... 19:59:24 INFO - Return code: 0 19:59:24 INFO - Done creating virtualenv /builds/slave/test/build/venv. 19:59:24 INFO - Getting output from command: ['/builds/slave/test/build/venv/bin/pip', 'freeze'] 19:59:24 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip freeze 19:59:25 INFO - Reading from file tmpfile_stdout 19:59:25 INFO - Current package versions: 19:59:25 INFO - argparse == 1.2.1 19:59:25 INFO - blessings == 1.6 19:59:25 INFO - blobuploader == 1.2.4 19:59:25 INFO - browsermob-proxy == 0.6.0 19:59:25 INFO - docopt == 0.6.1 19:59:25 INFO - manifestparser == 1.1 19:59:25 INFO - marionette-client == 2.0.0 19:59:25 INFO - marionette-driver == 1.1.1 19:59:25 INFO - marionette-transport == 1.0.0 19:59:25 INFO - mozInstall == 1.12 19:59:25 INFO - mozcrash == 0.16 19:59:25 INFO - mozdebug == 0.1 19:59:25 INFO - mozdevice == 0.47 19:59:25 INFO - mozfile == 1.2 19:59:25 INFO - mozhttpd == 0.7 19:59:25 INFO - mozinfo == 0.9 19:59:25 INFO - mozleak == 0.1 19:59:25 INFO - mozlog == 3.1 19:59:25 INFO - moznetwork == 0.27 19:59:25 INFO - mozprocess == 0.22 19:59:25 INFO - mozprofile == 0.27 19:59:25 INFO - mozrunner == 6.11 19:59:25 INFO - mozscreenshot == 0.1 19:59:25 INFO - mozsystemmonitor == 0.0 19:59:25 INFO - moztest == 0.7 19:59:25 INFO - mozversion == 1.4 19:59:25 INFO - psutil == 3.1.1 19:59:25 INFO - requests == 1.2.3 19:59:25 INFO - wptserve == 1.3.0 19:59:25 INFO - wsgiref == 0.1.2 19:59:25 INFO - Running post-action listener: _resource_record_post_action 19:59:25 INFO - Running post-action listener: _start_resource_monitoring 19:59:25 INFO - Starting resource monitoring. 19:59:25 INFO - ##### 19:59:25 INFO - ##### Running pull step. 19:59:25 INFO - ##### 19:59:25 INFO - Running pre-action listener: _resource_record_pre_action 19:59:25 INFO - Running main action method: pull 19:59:25 INFO - Pull has nothing to do! 19:59:25 INFO - Running post-action listener: _resource_record_post_action 19:59:25 INFO - ##### 19:59:25 INFO - ##### Running install step. 19:59:25 INFO - ##### 19:59:25 INFO - Running pre-action listener: _resource_record_pre_action 19:59:25 INFO - Running main action method: install 19:59:25 INFO - Getting output from command: ['/builds/slave/test/build/venv/bin/pip', 'freeze'] 19:59:25 INFO - Copy/paste: /builds/slave/test/build/venv/bin/pip freeze 19:59:25 INFO - Reading from file tmpfile_stdout 19:59:25 INFO - Detecting whether we're running mozinstall >=1.0... 19:59:25 INFO - Getting output from command: ['/builds/slave/test/build/venv/bin/mozinstall', '-h'] 19:59:25 INFO - Copy/paste: /builds/slave/test/build/venv/bin/mozinstall -h 19:59:25 INFO - Reading from file tmpfile_stdout 19:59:25 INFO - Output received: 19:59:25 INFO - Usage: mozinstall [options] installer 19:59:25 INFO - Options: 19:59:25 INFO - -h, --help show this help message and exit 19:59:25 INFO - -d DEST, --destination=DEST 19:59:25 INFO - Directory to install application into. [default: 19:59:25 INFO - "/builds/slave/test"] 19:59:25 INFO - --app=APP Application being installed. [default: firefox] 19:59:25 INFO - mkdir: /builds/slave/test/build/application 19:59:25 INFO - Getting output from command: ['/builds/slave/test/build/venv/bin/mozinstall', '/builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.tar.bz2', '--destination', '/builds/slave/test/build/application'] 19:59:25 INFO - Copy/paste: /builds/slave/test/build/venv/bin/mozinstall /builds/slave/test/build/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 --destination /builds/slave/test/build/application 19:59:48 INFO - Reading from file tmpfile_stdout 19:59:48 INFO - Output received: 19:59:48 INFO - /builds/slave/test/build/application/firefox/firefox 19:59:48 INFO - Running post-action listener: _resource_record_post_action 19:59:48 INFO - ##### 19:59:48 INFO - ##### Running run-tests step. 19:59:48 INFO - ##### 19:59:48 INFO - Running pre-action listener: _resource_record_pre_action 19:59:48 INFO - Running main action method: run_tests 19:59:48 INFO - mkdir: /builds/slave/test/build/blobber_upload_dir 19:59:48 INFO - minidump filename unknown. determining based upon platform and arch 19:59:48 INFO - minidump tooltool manifest unknown. determining based upon platform and arch 19:59:48 INFO - grabbing minidump binary from tooltool 19:59:48 INFO - proxxy config: {'regions': ['.use1.', '.usw2.', '.scl3'], 'instances': ['proxxy1.srv.releng.use1.mozilla.com', 'proxxy1.srv.releng.usw2.mozilla.com', 'proxxy1.srv.releng.scl3.mozilla.com'], 'urls': [('http://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp.mozilla.org', 'ftp.mozilla.org'), ('https://ftp-ssl.mozilla.org', 'ftp.mozilla.org'), ('http://pvtbuilds.pvt.build.mozilla.org', 'pvtbuilds.mozilla.org'), ('http://pypi.pvt.build.mozilla.org', 'pypi.pvt.build.mozilla.org'), ('http://pypi.pub.build.mozilla.org', 'pypi.pub.build.mozilla.org'), ('https://queue.taskcluster.net', 'queue.taskcluster.net')]} 19:59:48 INFO - retry: Calling run_command with args: (['/tools/tooltool.py', '--url', 'https://api.pub.build.mozilla.org/tooltool/', '--authentication-file', '/builds/relengapi.tok', 'fetch', '-m', '/builds/slave/test/build/tests/config/tooltool-manifests/linux64/releng.manifest', '-o', '-c', '/builds/tooltool_cache'],), kwargs: {'error_list': [{'substr': 'command not found', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d4f500>, 'level': 'warning'}, {'substr': 'Traceback (most recent call last)', 'level': 'error'}, {'substr': 'SyntaxError: ', 'level': 'error'}, {'substr': 'TypeError: ', 'level': 'error'}, {'substr': 'NameError: ', 'level': 'error'}, {'substr': 'ZeroDivisionError: ', 'level': 'error'}, {'regex': <_sre.SRE_Pattern object at 0x2d50400>, 'level': 'critical'}, {'regex': <_sre.SRE_Pattern object at 0x2d4c780>, 'level': 'critical'}, {'substr': 'ERROR - ', 'level': 'error'}], 'cwd': '/builds/slave/test/build', 'privileged': False}, attempt #1 19:59:48 INFO - Running command: ['/tools/tooltool.py', '--url', 'https://api.pub.build.mozilla.org/tooltool/', '--authentication-file', '/builds/relengapi.tok', 'fetch', '-m', '/builds/slave/test/build/tests/config/tooltool-manifests/linux64/releng.manifest', '-o', '-c', '/builds/tooltool_cache'] in /builds/slave/test/build 19:59:48 INFO - Copy/paste: /tools/tooltool.py --url https://api.pub.build.mozilla.org/tooltool/ --authentication-file /builds/relengapi.tok fetch -m /builds/slave/test/build/tests/config/tooltool-manifests/linux64/releng.manifest -o -c /builds/tooltool_cache 19:59:48 INFO - INFO - File linux64-minidump_stackwalk retrieved from local cache /builds/tooltool_cache 19:59:48 INFO - Return code: 0 19:59:48 INFO - Chmoding /builds/slave/test/build/linux64-minidump_stackwalk to 0755 19:59:48 INFO - ENV: MINIDUMP_SAVE_PATH is now /builds/slave/test/build/blobber_upload_dir 19:59:48 INFO - Running command: ['/builds/slave/test/build/venv/bin/python', '-u', '/builds/slave/test/build/tests/web-platform/runtests.py', '--log-raw=-', '--log-raw=/builds/slave/test/build/blobber_upload_dir/wpt_raw.log', '--log-errorsummary=/builds/slave/test/build/blobber_upload_dir/wpt_errorsummary.log', '--binary=/builds/slave/test/build/application/firefox/firefox', '--symbols-path=http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip', '--stackwalk-binary=/builds/slave/test/build/linux64-minidump_stackwalk', '--test-type=testharness', '--total-chunks=8', '--this-chunk=7', '--prefs-root=/builds/slave/test/build/tests/web-platform/prefs', '--processes=1', '--config=/builds/slave/test/build/tests/web-platform/wptrunner.ini', '--ca-cert-path=/builds/slave/test/build/tests/web-platform/certs/cacert.pem', '--host-key-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.key', '--host-cert-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.pem', '--certutil-binary=/builds/slave/test/build/tests/bin/certutil'] in /builds/slave/test/build 19:59:48 INFO - Copy/paste: /builds/slave/test/build/venv/bin/python -u /builds/slave/test/build/tests/web-platform/runtests.py --log-raw=- --log-raw=/builds/slave/test/build/blobber_upload_dir/wpt_raw.log --log-errorsummary=/builds/slave/test/build/blobber_upload_dir/wpt_errorsummary.log --binary=/builds/slave/test/build/application/firefox/firefox --symbols-path=http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip --stackwalk-binary=/builds/slave/test/build/linux64-minidump_stackwalk --test-type=testharness --total-chunks=8 --this-chunk=7 --prefs-root=/builds/slave/test/build/tests/web-platform/prefs --processes=1 --config=/builds/slave/test/build/tests/web-platform/wptrunner.ini --ca-cert-path=/builds/slave/test/build/tests/web-platform/certs/cacert.pem --host-key-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.key --host-cert-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.pem --certutil-binary=/builds/slave/test/build/tests/bin/certutil 19:59:48 INFO - Using env: {'CCACHE_DIR': '/builds/ccache', 19:59:48 INFO - 'CCACHE_UMASK': '002', 19:59:48 INFO - 'DISPLAY': ':0', 19:59:48 INFO - 'HOME': '/home/cltbld', 19:59:48 INFO - 'LANG': 'en_US.UTF-8', 19:59:48 INFO - 'LOGNAME': 'cltbld', 19:59:48 INFO - 'MAIL': '/var/mail/cltbld', 19:59:48 INFO - 'MINIDUMP_SAVE_PATH': '/builds/slave/test/build/blobber_upload_dir', 19:59:48 INFO - 'MOZ_HIDE_RESULTS_TABLE': '1', 19:59:48 INFO - 'MOZ_NODE_PATH': '/usr/bin/node', 19:59:48 INFO - 'MOZ_NO_REMOTE': '1', 19:59:48 INFO - 'NODE_PATH': '/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript', 19:59:48 INFO - 'NO_FAIL_ON_TEST_ERRORS': '1', 19:59:48 INFO - 'PATH': '/builds/slave/test/build/venv/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games', 19:59:48 INFO - 'PROPERTIES_FILE': '/builds/slave/test/buildprops.json', 19:59:48 INFO - 'PWD': '/builds/slave/test', 19:59:48 INFO - 'SHELL': '/bin/bash', 19:59:48 INFO - 'SHLVL': '1', 19:59:48 INFO - 'TERM': 'linux', 19:59:48 INFO - 'TMOUT': '86400', 19:59:48 INFO - 'USER': 'cltbld', 19:59:48 INFO - 'XDG_SESSION_COOKIE': '9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602', 19:59:48 INFO - '_': '/tools/buildbot/bin/python'} 19:59:48 INFO - Calling ['/builds/slave/test/build/venv/bin/python', '-u', '/builds/slave/test/build/tests/web-platform/runtests.py', '--log-raw=-', '--log-raw=/builds/slave/test/build/blobber_upload_dir/wpt_raw.log', '--log-errorsummary=/builds/slave/test/build/blobber_upload_dir/wpt_errorsummary.log', '--binary=/builds/slave/test/build/application/firefox/firefox', '--symbols-path=http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip', '--stackwalk-binary=/builds/slave/test/build/linux64-minidump_stackwalk', '--test-type=testharness', '--total-chunks=8', '--this-chunk=7', '--prefs-root=/builds/slave/test/build/tests/web-platform/prefs', '--processes=1', '--config=/builds/slave/test/build/tests/web-platform/wptrunner.ini', '--ca-cert-path=/builds/slave/test/build/tests/web-platform/certs/cacert.pem', '--host-key-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.key', '--host-cert-path=/builds/slave/test/build/tests/web-platform/certs/web-platform.test.pem', '--certutil-binary=/builds/slave/test/build/tests/bin/certutil'] with output_timeout 1000 19:59:49 INFO - STDERR: /builds/slave/test/build/venv/local/lib/python2.7/site-packages/mozrunner/utils.py:20: UserWarning: Module wptserve was already imported from /builds/slave/test/build/tests/web-platform/tests/tools/wptserve/wptserve/__init__.py, but /builds/slave/test/build/venv/lib/python2.7/site-packages is being added to sys.path 19:59:49 INFO - import pkg_resources 19:59:55 INFO - Using 1 client processes 19:59:55 INFO - wptserve Starting http server on 127.0.0.1:8000 19:59:55 INFO - wptserve Starting http server on 127.0.0.1:8001 19:59:55 INFO - wptserve Starting http server on 127.0.0.1:8443 19:59:57 INFO - SUITE-START | Running 827 tests 19:59:57 INFO - Running testharness tests 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 6ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-only/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html | took 8ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/http-csp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html | took 8ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html | took 8ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 8ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 1ms 19:59:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:57 INFO - TEST-SKIP | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:57 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html | took 1ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html | took 0ms 19:59:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html 19:59:58 INFO - TEST-SKIP | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html | took 0ms 19:59:58 INFO - Setting up ssl 19:59:58 INFO - PROCESS | certutil | 19:59:58 INFO - PROCESS | certutil | 19:59:58 INFO - PROCESS | certutil | 19:59:58 INFO - Certificate Nickname Trust Attributes 19:59:58 INFO - SSL,S/MIME,JAR/XPI 19:59:58 INFO - 19:59:58 INFO - web-platform-tests CT,, 19:59:58 INFO - 19:59:58 INFO - Starting runner 19:59:58 INFO - PROCESS | 8892 | Xlib: extension "RANDR" missing on display ":0". 20:00:00 INFO - PROCESS | 8892 | 1459566000606 Marionette INFO Marionette enabled via build flag and pref 20:00:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8d5249000 == 1 [pid = 8892] [id = 1] 20:00:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 1 (0x7fd8d5665400) [pid = 8892] [serial = 1] [outer = (nil)] 20:00:00 INFO - PROCESS | 8892 | [8892] WARNING: Hardware Vsync support not yet implemented. Falling back to software timers: file /builds/slave/m-rel-l64-d-000000000000000000/build/gfx/thebes/gfxPlatform.cpp, line 2114 20:00:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 2 (0x7fd8d381f800) [pid = 8892] [serial = 2] [outer = 0x7fd8d5665400] 20:00:01 INFO - PROCESS | 8892 | 1459566001234 Marionette INFO Listening on port 2828 20:00:01 INFO - PROCESS | 8892 | 1459566001846 Marionette INFO Marionette enabled via command-line flag 20:00:01 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8cf809800 == 2 [pid = 8892] [id = 2] 20:00:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 3 (0x7fd8d7493000) [pid = 8892] [serial = 3] [outer = (nil)] 20:00:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 4 (0x7fd8d7493c00) [pid = 8892] [serial = 4] [outer = 0x7fd8d7493000] 20:00:01 INFO - PROCESS | 8892 | LoadPlugin() /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so returned 7fd8cf884880 20:00:02 INFO - PROCESS | 8892 | LoadPlugin() /usr/lib/mozilla/plugins/libtotem-cone-plugin.so returned 7fd8cf8d9e20 20:00:02 INFO - PROCESS | 8892 | LoadPlugin() /usr/lib/mozilla/plugins/libtotem-mully-plugin.so returned 7fd8ca90bf40 20:00:02 INFO - PROCESS | 8892 | LoadPlugin() /usr/lib/mozilla/plugins/libtotem-gmp-plugin.so returned 7fd8ca912280 20:00:02 INFO - PROCESS | 8892 | LoadPlugin() /usr/lib/mozilla/plugins/libtotem-narrowspace-plugin.so returned 7fd8ca9125b0 20:00:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 5 (0x7fd8d7e65000) [pid = 8892] [serial = 5] [outer = 0x7fd8d5665400] 20:00:02 INFO - PROCESS | 8892 | [8892] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80520012: file /builds/slave/m-rel-l64-d-000000000000000000/build/js/xpconnect/loader/mozJSComponentLoader.cpp, line 841 20:00:02 INFO - PROCESS | 8892 | 1459566002180 Marionette INFO Accepted connection conn0 from 127.0.0.1:55204 20:00:02 INFO - PROCESS | 8892 | [8892] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80520012: file /builds/slave/m-rel-l64-d-000000000000000000/build/js/xpconnect/loader/mozJSComponentLoader.cpp, line 841 20:00:02 INFO - PROCESS | 8892 | 1459566002368 Marionette INFO Accepted connection conn1 from 127.0.0.1:55205 20:00:02 INFO - PROCESS | 8892 | 1459566002372 Marionette INFO Closed connection conn0 20:00:02 INFO - PROCESS | 8892 | [8892] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80520012: file /builds/slave/m-rel-l64-d-000000000000000000/build/js/xpconnect/loader/mozJSComponentLoader.cpp, line 841 20:00:02 INFO - PROCESS | 8892 | 1459566002428 Marionette INFO Accepted connection conn2 from 127.0.0.1:55206 20:00:02 INFO - PROCESS | 8892 | 1459566002454 Marionette INFO Closed connection conn2 20:00:02 INFO - PROCESS | 8892 | 1459566002461 Marionette DEBUG conn1 -> Command {id: 1, name: "newSession", parameters: {"sessionId":null,"capabilities":null}} 20:00:03 INFO - PROCESS | 8892 | [8892] WARNING: Failed to retarget HTML data delivery to the parser thread.: file /builds/slave/m-rel-l64-d-000000000000000000/build/parser/html/nsHtml5StreamParser.cpp, line 967 20:00:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c5ccf800 == 3 [pid = 8892] [id = 3] 20:00:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 6 (0x7fd8c5c4ac00) [pid = 8892] [serial = 6] [outer = (nil)] 20:00:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c5cd4000 == 4 [pid = 8892] [id = 4] 20:00:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 7 (0x7fd8c5c4b400) [pid = 8892] [serial = 7] [outer = (nil)] 20:00:04 INFO - PROCESS | 8892 | [8892] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/base/nsFrameLoader.cpp, line 272 20:00:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c4de8000 == 5 [pid = 8892] [id = 5] 20:00:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 8 (0x7fd8c4d7c800) [pid = 8892] [serial = 8] [outer = (nil)] 20:00:04 INFO - PROCESS | 8892 | [8892] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/base/nsFrameLoader.cpp, line 272 20:00:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 9 (0x7fd8c401b400) [pid = 8892] [serial = 9] [outer = 0x7fd8c4d7c800] 20:00:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 10 (0x7fd8c3d9dc00) [pid = 8892] [serial = 10] [outer = 0x7fd8c5c4ac00] 20:00:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 11 (0x7fd8c3e1bc00) [pid = 8892] [serial = 11] [outer = 0x7fd8c5c4b400] 20:00:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 12 (0x7fd8c3b17800) [pid = 8892] [serial = 12] [outer = 0x7fd8c4d7c800] 20:00:06 INFO - PROCESS | 8892 | 1459566006317 Marionette INFO loaded listener.js 20:00:06 INFO - PROCESS | 8892 | 1459566006349 Marionette INFO loaded listener.js 20:00:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 13 (0x7fd8c2e0dc00) [pid = 8892] [serial = 13] [outer = 0x7fd8c4d7c800] 20:00:06 INFO - PROCESS | 8892 | 1459566006726 Marionette DEBUG conn1 <- Response {id: 1, error: null, body: {"sessionId":"77912feb-878a-4fbc-bbc1-6f40d2fa86a9","capabilities":{"browserName":"Firefox","browserVersion":"45.0.1","platformName":"Linux","platformVersion":"3.2.0-76-generic","specificationLevel":"1","raisesAccessibilityExceptions":false,"rotatable":false,"acceptSslCerts":false,"takesElementScreenshot":true,"takesScreenshot":true,"proxy":{},"platform":"LINUX","XULappId":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}","appBuildId":"20160401193737","device":"desktop","version":"45.0.1"}}} 20:00:06 INFO - PROCESS | 8892 | 1459566006908 Marionette DEBUG conn1 -> Command {id: 2, name: "getContext", parameters: null} 20:00:06 INFO - PROCESS | 8892 | 1459566006917 Marionette DEBUG conn1 <- Response {id: 2, error: null, body: {"value":"content"}} 20:00:07 INFO - PROCESS | 8892 | 1459566007253 Marionette DEBUG conn1 -> Command {id: 3, name: "setContext", parameters: {"value":"chrome"}} 20:00:07 INFO - PROCESS | 8892 | 1459566007255 Marionette DEBUG conn1 <- Response {id: 3, error: null, body: {}} 20:00:07 INFO - PROCESS | 8892 | 1459566007346 Marionette DEBUG conn1 -> Command {id: 4, name: "executeScript", parameters: {"scriptTimeout":null,"newSandbox":true,"args":[],"filename":"executormarionette.py","script":"\n Components.utils.import(\"resource://gre/modules/Log.jsm\");\n Log.repository.getLogger(\"Marionette\").level = Log.Level.Info;\n ","sandbox":"default","line":115}} 20:00:07 INFO - PROCESS | 8892 | [8892] WARNING: Could not get disk status from nsIDiskSpaceWatcher: file /builds/slave/m-rel-l64-d-000000000000000000/build/uriloader/prefetch/nsOfflineCacheUpdateService.cpp, line 319 20:00:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 14 (0x7fd8bf04a800) [pid = 8892] [serial = 14] [outer = 0x7fd8c4d7c800] 20:00:07 INFO - PROCESS | 8892 | [8892] WARNING: RasterImage::Init failed: file /builds/slave/m-rel-l64-d-000000000000000000/build/image/ImageFactory.cpp, line 109 20:00:07 INFO - TEST-START | /referrer-policy/origin-only/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:00:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c7687000 == 6 [pid = 8892] [id = 6] 20:00:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 15 (0x7fd8bf0ba000) [pid = 8892] [serial = 15] [outer = (nil)] 20:00:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 16 (0x7fd8c0e94800) [pid = 8892] [serial = 16] [outer = 0x7fd8bf0ba000] 20:00:07 INFO - PROCESS | 8892 | 1459566007966 Marionette INFO loaded listener.js 20:00:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 17 (0x7fd8c94f5c00) [pid = 8892] [serial = 17] [outer = 0x7fd8bf0ba000] 20:00:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8be597800 == 7 [pid = 8892] [id = 7] 20:00:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 18 (0x7fd8bf079400) [pid = 8892] [serial = 18] [outer = (nil)] 20:00:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 19 (0x7fd8bf07d800) [pid = 8892] [serial = 19] [outer = 0x7fd8bf079400] 20:00:08 INFO - PROCESS | 8892 | 1459566008439 Marionette INFO loaded listener.js 20:00:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 20 (0x7fd8bf087400) [pid = 8892] [serial = 20] [outer = 0x7fd8bf079400] 20:00:08 INFO - PROCESS | 8892 | [8892] WARNING: GetDefaultCharsetForLocale: need to add multi locale support: file /builds/slave/m-rel-l64-d-000000000000000000/build/intl/locale/unix/nsUNIXCharset.cpp, line 101 20:00:09 INFO - TEST-FAIL | /referrer-policy/origin-only/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is origin when a 20:00:09 INFO - document served over http requires an http 20:00:09 INFO - sub-resource via fetch-request using the http-csp 20:00:09 INFO - delivery method with keep-origin-redirect and when 20:00:09 INFO - the target request is cross-origin. - assert_equals: Reported Referrer URL is 'origin'. expected "http://web-platform.test:8000/" but got "http://web-platform.test:8000" 20:00:09 INFO - ReferrerPolicyTestCase/t.start/] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 267 (0x7fd8bd56d800) [pid = 8892] [serial = 1201] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-upgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 266 (0x7fd8bd4df800) [pid = 8892] [serial = 1195] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-upgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 265 (0x7fd8b8d87c00) [pid = 8892] [serial = 1177] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 264 (0x7fd8ba268800) [pid = 8892] [serial = 1183] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-downgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 263 (0x7fd8c1ef9400) [pid = 8892] [serial = 1291] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 262 (0x7fd8a82d9400) [pid = 8892] [serial = 1186] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-downgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 261 (0x7fd8b169a400) [pid = 8892] [serial = 1013] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/xhr-request/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 260 (0x7fd8aa560800) [pid = 8892] [serial = 941] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-downgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 259 (0x7fd8b169bc00) [pid = 8892] [serial = 1162] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-downgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 258 (0x7fd8ae281c00) [pid = 8892] [serial = 986] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/fetch-request/cross-origin.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 257 (0x7fd8b78cb000) [pid = 8892] [serial = 1106] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/fetch-request/same-origin-downgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 256 (0x7fd8a53be400) [pid = 8892] [serial = 980] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/fetch-request/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 255 (0x7fd8a47c4400) [pid = 8892] [serial = 1324] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 254 (0x7fd8a47c3800) [pid = 8892] [serial = 953] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 253 (0x7fd8b169e000) [pid = 8892] [serial = 1297] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 252 (0x7fd8b18b9400) [pid = 8892] [serial = 1019] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/xhr-request/cross-origin.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 251 (0x7fd8aa55c400) [pid = 8892] [serial = 908] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-downgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 250 (0x7fd8a9ab8400) [pid = 8892] [serial = 1246] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 249 (0x7fd8a4f8a000) [pid = 8892] [serial = 1243] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 248 (0x7fd8b1b27c00) [pid = 8892] [serial = 1022] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/fetch-request/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 247 (0x7fd8a82ddc00) [pid = 8892] [serial = 1055] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/xhr-request/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 246 (0x7fd8b8d84400) [pid = 8892] [serial = 1171] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 245 (0x7fd8a53c4000) [pid = 8892] [serial = 1327] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 244 (0x7fd8a9e16c00) [pid = 8892] [serial = 923] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-upgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 243 (0x7fd8a75a6c00) [pid = 8892] [serial = 1061] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/xhr-request/cross-origin.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 242 (0x7fd8b16d7400) [pid = 8892] [serial = 1165] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-downgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 241 (0x7fd8b5d48c00) [pid = 8892] [serial = 1168] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-downgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 240 (0x7fd8a82e2000) [pid = 8892] [serial = 1279] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 239 (0x7fd8ad733c00) [pid = 8892] [serial = 1064] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/fetch-request/same-origin-insecure.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 238 (0x7fd8c3d5fc00) [pid = 8892] [serial = 1310] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 237 (0x7fd8b337d400) [pid = 8892] [serial = 1252] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 236 (0x7fd8c3b1d800) [pid = 8892] [serial = 1305] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566498742] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 235 (0x7fd8aa561400) [pid = 8892] [serial = 913] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-downgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 234 (0x7fd8bc7d8c00) [pid = 8892] [serial = 1265] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 233 (0x7fd8b78d1000) [pid = 8892] [serial = 1109] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/fetch-request/same-origin-downgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 232 (0x7fd8c3804400) [pid = 8892] [serial = 1300] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 231 (0x7fd8a47c8400) [pid = 8892] [serial = 1333] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 230 (0x7fd8b78ecc00) [pid = 8892] [serial = 1112] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/fetch-request/same-origin-downgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 229 (0x7fd8a6e25c00) [pid = 8892] [serial = 1058] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-https/xhr-request/cross-origin.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 228 (0x7fd8a4f8cc00) [pid = 8892] [serial = 1078] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/iframe-tag/same-origin-insecure.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 227 (0x7fd8b16dc800) [pid = 8892] [serial = 1091] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/script-tag/same-origin-insecure.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 226 (0x7fd8a698ec00) [pid = 8892] [serial = 1157] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/iframe-tag/same-origin-upgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 225 (0x7fd8aa7f2400) [pid = 8892] [serial = 1282] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 224 (0x7fd8b64e4800) [pid = 8892] [serial = 1255] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 223 (0x7fd8bc366000) [pid = 8892] [serial = 1258] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 222 (0x7fd8af949000) [pid = 8892] [serial = 994] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/iframe-tag/cross-origin.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 221 (0x7fd8a82e7000) [pid = 8892] [serial = 1288] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 220 (0x7fd8a6b91c00) [pid = 8892] [serial = 1207] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 219 (0x7fd8af8edc00) [pid = 8892] [serial = 950] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-upgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 218 (0x7fd8b78e8c00) [pid = 8892] [serial = 1174] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-upgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 217 (0x7fd8b1b26800) [pid = 8892] [serial = 1016] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/xhr-request/cross-origin.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 216 (0x7fd8b78eb400) [pid = 8892] [serial = 1260] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 215 (0x7fd8a4f84800) [pid = 8892] [serial = 903] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-downgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 214 (0x7fd8af953400) [pid = 8892] [serial = 1147] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/iframe-tag/same-origin-upgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 213 (0x7fd8b66d5400) [pid = 8892] [serial = 1094] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/script-tag/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 212 (0x7fd8aa4da000) [pid = 8892] [serial = 1210] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 211 (0x7fd8b14ea000) [pid = 8892] [serial = 1010] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/script-tag/cross-origin.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 210 (0x7fd8c2b9dc00) [pid = 8892] [serial = 1294] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 209 (0x7fd8b2d14400) [pid = 8892] [serial = 1312] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 208 (0x7fd8a6e1fc00) [pid = 8892] [serial = 1083] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/iframe-tag/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 207 (0x7fd8bcfce000) [pid = 8892] [serial = 1270] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 206 (0x7fd8a4f86800) [pid = 8892] [serial = 1315] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 205 (0x7fd8a9e19c00) [pid = 8892] [serial = 947] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 204 (0x7fd8b14e7000) [pid = 8892] [serial = 1073] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/iframe-tag/same-origin-insecure.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 203 (0x7fd8aa4d6c00) [pid = 8892] [serial = 944] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-downgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8adfd5400) [pid = 8892] [serial = 1330] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8bf028800) [pid = 8892] [serial = 1285] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8bcfd4000) [pid = 8892] [serial = 1192] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8c1420800) [pid = 8892] [serial = 1276] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8afb74000) [pid = 8892] [serial = 1070] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/fetch-request/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8a53bbc00) [pid = 8892] [serial = 897] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/fetch-request/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8ae2c2400) [pid = 8892] [serial = 989] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/iframe-tag/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8afb72c00) [pid = 8892] [serial = 1088] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/script-tag/same-origin-insecure.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8b1b24400) [pid = 8892] [serial = 1307] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8ba989000) [pid = 8892] [serial = 1189] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-downgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8b078c800) [pid = 8892] [serial = 1007] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/script-tag/cross-origin.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8b16e2c00) [pid = 8892] [serial = 1302] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8bd2d8400) [pid = 8892] [serial = 1263] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566482837] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8bd4e3000) [pid = 8892] [serial = 1198] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/xhr-request/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8bd574800) [pid = 8892] [serial = 1204] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8a53c2800) [pid = 8892] [serial = 1152] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/iframe-tag/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8b66d9000) [pid = 8892] [serial = 1097] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/xhr-request/same-origin-insecure.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8a53c0800) [pid = 8892] [serial = 983] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/fetch-request/cross-origin.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8a6b8b400) [pid = 8892] [serial = 1180] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-https/script-tag/same-origin-upgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8a53c7000) [pid = 8892] [serial = 900] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/fetch-request/same-origin-upgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8a6e1ec00) [pid = 8892] [serial = 1321] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8c0edc400) [pid = 8892] [serial = 1268] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8b6d28400) [pid = 8892] [serial = 1103] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/xhr-request/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8ad730000) [pid = 8892] [serial = 1249] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8ae27bc00) [pid = 8892] [serial = 1004] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/script-tag/cross-origin.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b6cd3000) [pid = 8892] [serial = 1100] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/xhr-request/same-origin-insecure.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8aa7f3800) [pid = 8892] [serial = 918] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-insecure.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8aa7f5400) [pid = 8892] [serial = 928] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-upgrade.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8c0ed8000) [pid = 8892] [serial = 1273] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8a53b9c00) [pid = 8892] [serial = 1318] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8af955400) [pid = 8892] [serial = 1067] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/same-origin/http-http/fetch-request/same-origin-insecure.no-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8b078c400) [pid = 8892] [serial = 999] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-referrer/cross-origin/http-http/iframe-tag/cross-origin.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8a8ea4400) [pid = 8892] [serial = 938] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/script-tag/same-origin-downgrade.keep-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8a8ea0400) [pid = 8892] [serial = 933] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/origin-when-cross-origin/meta-csp/same-origin/http-https/iframe-tag/same-origin-upgrade.swap-origin-redirect.http.html] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8bc36f800) [pid = 8892] [serial = 1261] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8bd56cc00) [pid = 8892] [serial = 1264] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566482837] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8bf0ba400) [pid = 8892] [serial = 1266] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8c0eda800) [pid = 8892] [serial = 1269] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8c0edf800) [pid = 8892] [serial = 1271] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8c1426000) [pid = 8892] [serial = 1274] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8c14b4400) [pid = 8892] [serial = 1277] [outer = (nil)] [url = about:blank] 20:09:16 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8c14b3400) [pid = 8892] [serial = 1280] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8bf07d000) [pid = 8892] [serial = 1283] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8c1efa400) [pid = 8892] [serial = 1286] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8c2ba9000) [pid = 8892] [serial = 1289] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8c2ba3c00) [pid = 8892] [serial = 1292] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8c3325c00) [pid = 8892] [serial = 1295] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8c350e800) [pid = 8892] [serial = 1298] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8c350c800) [pid = 8892] [serial = 1301] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8c3680400) [pid = 8892] [serial = 1303] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8c38d3400) [pid = 8892] [serial = 1306] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566498742] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8c3b1f400) [pid = 8892] [serial = 1308] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8c3d5b800) [pid = 8892] [serial = 1311] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8c3d60000) [pid = 8892] [serial = 1313] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8a6b92400) [pid = 8892] [serial = 1316] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8a6b8a800) [pid = 8892] [serial = 1319] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8a854f800) [pid = 8892] [serial = 1322] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8aa4dac00) [pid = 8892] [serial = 1325] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8ad735800) [pid = 8892] [serial = 1328] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8adfd7800) [pid = 8892] [serial = 1331] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8aa4dc800) [pid = 8892] [serial = 1334] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8adb28000) [pid = 8892] [serial = 1247] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8af8b1800) [pid = 8892] [serial = 1250] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8b66d5800) [pid = 8892] [serial = 1253] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8b8e29400) [pid = 8892] [serial = 1256] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8ba26f400) [pid = 8892] [serial = 1259] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8c0e92c00) [pid = 8892] [serial = 1212] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8c1c99400) [pid = 8892] [serial = 1281] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8c1ca7800) [pid = 8892] [serial = 1284] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8c2ba6400) [pid = 8892] [serial = 1287] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8a9e15c00) [pid = 8892] [serial = 1323] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8aa959c00) [pid = 8892] [serial = 1326] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8adb30400) [pid = 8892] [serial = 1329] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8bf0b8000) [pid = 8892] [serial = 1203] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8b8c28800) [pid = 8892] [serial = 1245] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8c0e9c000) [pid = 8892] [serial = 1206] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8bcfce800) [pid = 8892] [serial = 1209] [outer = (nil)] [url = about:blank] 20:09:16 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78d1000 == 12 [pid = 8892] [id = 509] 20:09:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8a47cfc00) [pid = 8892] [serial = 1428] [outer = (nil)] 20:09:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a53c7000) [pid = 8892] [serial = 1429] [outer = 0x7fd8a47cfc00] 20:09:16 INFO - PROCESS | 8892 | 1459566556885 Marionette INFO loaded listener.js 20:09:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a9ab2c00) [pid = 8892] [serial = 1430] [outer = 0x7fd8a47cfc00] 20:09:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a80df000 == 13 [pid = 8892] [id = 510] 20:09:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a9ab4000) [pid = 8892] [serial = 1431] [outer = (nil)] 20:09:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8a6e1ec00) [pid = 8892] [serial = 1432] [outer = 0x7fd8a9ab4000] 20:09:17 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:17 INFO - document served over http requires an https 20:09:17 INFO - sub-resource via iframe-tag using the meta-csp 20:09:17 INFO - delivery method with no-redirect and when 20:09:17 INFO - the target request is cross-origin. 20:09:17 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1101ms 20:09:17 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:09:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85b7000 == 14 [pid = 8892] [id = 511] 20:09:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8a53be400) [pid = 8892] [serial = 1433] [outer = (nil)] 20:09:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8a9aaf400) [pid = 8892] [serial = 1434] [outer = 0x7fd8a53be400] 20:09:18 INFO - PROCESS | 8892 | 1459566558021 Marionette INFO loaded listener.js 20:09:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8aa4d2000) [pid = 8892] [serial = 1435] [outer = 0x7fd8a53be400] 20:09:18 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d8c800 == 15 [pid = 8892] [id = 512] 20:09:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8a4f8bc00) [pid = 8892] [serial = 1436] [outer = (nil)] 20:09:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8a47c6000) [pid = 8892] [serial = 1437] [outer = 0x7fd8a4f8bc00] 20:09:19 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:19 INFO - document served over http requires an https 20:09:19 INFO - sub-resource via iframe-tag using the meta-csp 20:09:19 INFO - delivery method with swap-origin-redirect and when 20:09:19 INFO - the target request is cross-origin. 20:09:19 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1423ms 20:09:19 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:09:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5529800 == 16 [pid = 8892] [id = 513] 20:09:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8a53c2800) [pid = 8892] [serial = 1438] [outer = (nil)] 20:09:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8a698d000) [pid = 8892] [serial = 1439] [outer = 0x7fd8a53c2800] 20:09:19 INFO - PROCESS | 8892 | 1459566559611 Marionette INFO loaded listener.js 20:09:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8a780a400) [pid = 8892] [serial = 1440] [outer = 0x7fd8a53c2800] 20:09:20 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:20 INFO - document served over http requires an https 20:09:20 INFO - sub-resource via script-tag using the meta-csp 20:09:20 INFO - delivery method with keep-origin-redirect and when 20:09:20 INFO - the target request is cross-origin. 20:09:20 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1381ms 20:09:20 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html 20:09:20 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa506800 == 17 [pid = 8892] [id = 514] 20:09:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8a53c5c00) [pid = 8892] [serial = 1441] [outer = (nil)] 20:09:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8a9ab7400) [pid = 8892] [serial = 1442] [outer = 0x7fd8a53c5c00] 20:09:20 INFO - PROCESS | 8892 | 1459566560934 Marionette INFO loaded listener.js 20:09:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8aa4db400) [pid = 8892] [serial = 1443] [outer = 0x7fd8a53c5c00] 20:09:21 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:21 INFO - document served over http requires an https 20:09:21 INFO - sub-resource via script-tag using the meta-csp 20:09:21 INFO - delivery method with no-redirect and when 20:09:21 INFO - the target request is cross-origin. 20:09:21 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | took 1226ms 20:09:21 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:09:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa59b000 == 18 [pid = 8892] [id = 515] 20:09:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8aa56a800) [pid = 8892] [serial = 1444] [outer = (nil)] 20:09:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8aa7d6c00) [pid = 8892] [serial = 1445] [outer = 0x7fd8aa56a800] 20:09:22 INFO - PROCESS | 8892 | 1459566562204 Marionette INFO loaded listener.js 20:09:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8aa7e2c00) [pid = 8892] [serial = 1446] [outer = 0x7fd8aa56a800] 20:09:23 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:23 INFO - document served over http requires an https 20:09:23 INFO - sub-resource via script-tag using the meta-csp 20:09:23 INFO - delivery method with swap-origin-redirect and when 20:09:23 INFO - the target request is cross-origin. 20:09:23 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1290ms 20:09:23 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:09:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5cb000 == 19 [pid = 8892] [id = 516] 20:09:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8a4f81400) [pid = 8892] [serial = 1447] [outer = (nil)] 20:09:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8aa7ec000) [pid = 8892] [serial = 1448] [outer = 0x7fd8a4f81400] 20:09:23 INFO - PROCESS | 8892 | 1459566563492 Marionette INFO loaded listener.js 20:09:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8aa95c400) [pid = 8892] [serial = 1449] [outer = 0x7fd8a4f81400] 20:09:24 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:24 INFO - document served over http requires an https 20:09:24 INFO - sub-resource via xhr-request using the meta-csp 20:09:24 INFO - delivery method with keep-origin-redirect and when 20:09:24 INFO - the target request is cross-origin. 20:09:24 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1279ms 20:09:24 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html 20:09:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab94000 == 20 [pid = 8892] [id = 517] 20:09:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8aa7e3400) [pid = 8892] [serial = 1450] [outer = (nil)] 20:09:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8aa961400) [pid = 8892] [serial = 1451] [outer = 0x7fd8aa7e3400] 20:09:24 INFO - PROCESS | 8892 | 1459566564759 Marionette INFO loaded listener.js 20:09:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8ad73ac00) [pid = 8892] [serial = 1452] [outer = 0x7fd8aa7e3400] 20:09:25 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:25 INFO - document served over http requires an https 20:09:25 INFO - sub-resource via xhr-request using the meta-csp 20:09:25 INFO - delivery method with no-redirect and when 20:09:25 INFO - the target request is cross-origin. 20:09:25 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1182ms 20:09:25 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:09:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbdf000 == 21 [pid = 8892] [id = 518] 20:09:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8ad764400) [pid = 8892] [serial = 1453] [outer = (nil)] 20:09:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8adb25000) [pid = 8892] [serial = 1454] [outer = 0x7fd8ad764400] 20:09:26 INFO - PROCESS | 8892 | 1459566566030 Marionette INFO loaded listener.js 20:09:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8adb30c00) [pid = 8892] [serial = 1455] [outer = 0x7fd8ad764400] 20:09:26 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:26 INFO - document served over http requires an https 20:09:26 INFO - sub-resource via xhr-request using the meta-csp 20:09:26 INFO - delivery method with swap-origin-redirect and when 20:09:26 INFO - the target request is cross-origin. 20:09:26 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1284ms 20:09:26 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:09:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addd7000 == 22 [pid = 8892] [id = 519] 20:09:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8ad764800) [pid = 8892] [serial = 1456] [outer = (nil)] 20:09:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8adc9c000) [pid = 8892] [serial = 1457] [outer = 0x7fd8ad764800] 20:09:27 INFO - PROCESS | 8892 | 1459566567295 Marionette INFO loaded listener.js 20:09:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8adfd5c00) [pid = 8892] [serial = 1458] [outer = 0x7fd8ad764800] 20:09:28 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:28 INFO - document served over http requires an http 20:09:28 INFO - sub-resource via fetch-request using the meta-csp 20:09:28 INFO - delivery method with keep-origin-redirect and when 20:09:28 INFO - the target request is same-origin. 20:09:28 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1228ms 20:09:28 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html 20:09:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adf83000 == 23 [pid = 8892] [id = 520] 20:09:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8adb31000) [pid = 8892] [serial = 1459] [outer = (nil)] 20:09:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8adfdb800) [pid = 8892] [serial = 1460] [outer = 0x7fd8adb31000] 20:09:28 INFO - PROCESS | 8892 | 1459566568526 Marionette INFO loaded listener.js 20:09:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8adfe0400) [pid = 8892] [serial = 1461] [outer = 0x7fd8adb31000] 20:09:29 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:29 INFO - document served over http requires an http 20:09:29 INFO - sub-resource via fetch-request using the meta-csp 20:09:29 INFO - delivery method with no-redirect and when 20:09:29 INFO - the target request is same-origin. 20:09:29 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1277ms 20:09:29 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:09:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3d3000 == 24 [pid = 8892] [id = 521] 20:09:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8adfd5800) [pid = 8892] [serial = 1462] [outer = (nil)] 20:09:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8ae061400) [pid = 8892] [serial = 1463] [outer = 0x7fd8adfd5800] 20:09:29 INFO - PROCESS | 8892 | 1459566569826 Marionette INFO loaded listener.js 20:09:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8ae281c00) [pid = 8892] [serial = 1464] [outer = 0x7fd8adfd5800] 20:09:30 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:30 INFO - document served over http requires an http 20:09:30 INFO - sub-resource via fetch-request using the meta-csp 20:09:30 INFO - delivery method with swap-origin-redirect and when 20:09:30 INFO - the target request is same-origin. 20:09:30 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1228ms 20:09:30 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:09:30 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6c4800 == 25 [pid = 8892] [id = 522] 20:09:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8ae05d800) [pid = 8892] [serial = 1465] [outer = (nil)] 20:09:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8ae2c6c00) [pid = 8892] [serial = 1466] [outer = 0x7fd8ae05d800] 20:09:31 INFO - PROCESS | 8892 | 1459566571056 Marionette INFO loaded listener.js 20:09:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8af355400) [pid = 8892] [serial = 1467] [outer = 0x7fd8ae05d800] 20:09:31 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6e0000 == 26 [pid = 8892] [id = 523] 20:09:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8af35f800) [pid = 8892] [serial = 1468] [outer = (nil)] 20:09:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8af359c00) [pid = 8892] [serial = 1469] [outer = 0x7fd8af35f800] 20:09:31 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:31 INFO - document served over http requires an http 20:09:31 INFO - sub-resource via iframe-tag using the meta-csp 20:09:31 INFO - delivery method with keep-origin-redirect and when 20:09:31 INFO - the target request is same-origin. 20:09:31 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1325ms 20:09:31 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:09:32 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affae000 == 27 [pid = 8892] [id = 524] 20:09:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8ae2c2400) [pid = 8892] [serial = 1470] [outer = (nil)] 20:09:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8af35bc00) [pid = 8892] [serial = 1471] [outer = 0x7fd8ae2c2400] 20:09:32 INFO - PROCESS | 8892 | 1459566572423 Marionette INFO loaded listener.js 20:09:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8af94ec00) [pid = 8892] [serial = 1472] [outer = 0x7fd8ae2c2400] 20:09:33 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b016f800 == 28 [pid = 8892] [id = 525] 20:09:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8afb7a400) [pid = 8892] [serial = 1473] [outer = (nil)] 20:09:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8af948800) [pid = 8892] [serial = 1474] [outer = 0x7fd8afb7a400] 20:09:33 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:33 INFO - document served over http requires an http 20:09:33 INFO - sub-resource via iframe-tag using the meta-csp 20:09:33 INFO - delivery method with no-redirect and when 20:09:33 INFO - the target request is same-origin. 20:09:33 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1378ms 20:09:33 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:09:33 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0213800 == 29 [pid = 8892] [id = 526] 20:09:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8ae2c9400) [pid = 8892] [serial = 1475] [outer = (nil)] 20:09:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8afb72c00) [pid = 8892] [serial = 1476] [outer = 0x7fd8ae2c9400] 20:09:33 INFO - PROCESS | 8892 | 1459566573776 Marionette INFO loaded listener.js 20:09:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8afdc2800) [pid = 8892] [serial = 1477] [outer = 0x7fd8ae2c9400] 20:09:34 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b046a800 == 30 [pid = 8892] [id = 527] 20:09:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8afdc5c00) [pid = 8892] [serial = 1478] [outer = (nil)] 20:09:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8afb70c00) [pid = 8892] [serial = 1479] [outer = 0x7fd8afdc5c00] 20:09:34 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:34 INFO - document served over http requires an http 20:09:34 INFO - sub-resource via iframe-tag using the meta-csp 20:09:34 INFO - delivery method with swap-origin-redirect and when 20:09:34 INFO - the target request is same-origin. 20:09:34 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1332ms 20:09:34 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:09:35 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b09db000 == 31 [pid = 8892] [id = 528] 20:09:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8aa56b800) [pid = 8892] [serial = 1480] [outer = (nil)] 20:09:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8afdc3800) [pid = 8892] [serial = 1481] [outer = 0x7fd8aa56b800] 20:09:35 INFO - PROCESS | 8892 | 1459566575141 Marionette INFO loaded listener.js 20:09:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8b07c4c00) [pid = 8892] [serial = 1482] [outer = 0x7fd8aa56b800] 20:09:35 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:35 INFO - document served over http requires an http 20:09:35 INFO - sub-resource via script-tag using the meta-csp 20:09:35 INFO - delivery method with keep-origin-redirect and when 20:09:35 INFO - the target request is same-origin. 20:09:35 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1279ms 20:09:35 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html 20:09:36 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13c6000 == 32 [pid = 8892] [id = 529] 20:09:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8ae2ce400) [pid = 8892] [serial = 1483] [outer = (nil)] 20:09:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b07ca800) [pid = 8892] [serial = 1484] [outer = 0x7fd8ae2ce400] 20:09:36 INFO - PROCESS | 8892 | 1459566576434 Marionette INFO loaded listener.js 20:09:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8b14e3400) [pid = 8892] [serial = 1485] [outer = 0x7fd8ae2ce400] 20:09:37 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:37 INFO - document served over http requires an http 20:09:37 INFO - sub-resource via script-tag using the meta-csp 20:09:37 INFO - delivery method with no-redirect and when 20:09:37 INFO - the target request is same-origin. 20:09:37 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | took 1274ms 20:09:37 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:09:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2781000 == 33 [pid = 8892] [id = 530] 20:09:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8afb7c400) [pid = 8892] [serial = 1486] [outer = (nil)] 20:09:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8b14e6800) [pid = 8892] [serial = 1487] [outer = 0x7fd8afb7c400] 20:09:37 INFO - PROCESS | 8892 | 1459566577746 Marionette INFO loaded listener.js 20:09:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8b169d000) [pid = 8892] [serial = 1488] [outer = 0x7fd8afb7c400] 20:09:38 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:38 INFO - document served over http requires an http 20:09:38 INFO - sub-resource via script-tag using the meta-csp 20:09:38 INFO - delivery method with swap-origin-redirect and when 20:09:38 INFO - the target request is same-origin. 20:09:38 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1287ms 20:09:38 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:09:38 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e21000 == 34 [pid = 8892] [id = 531] 20:09:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8b0b91800) [pid = 8892] [serial = 1489] [outer = (nil)] 20:09:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8b16d6800) [pid = 8892] [serial = 1490] [outer = 0x7fd8b0b91800] 20:09:39 INFO - PROCESS | 8892 | 1459566579042 Marionette INFO loaded listener.js 20:09:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8b18b5800) [pid = 8892] [serial = 1491] [outer = 0x7fd8b0b91800] 20:09:39 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:39 INFO - document served over http requires an http 20:09:39 INFO - sub-resource via xhr-request using the meta-csp 20:09:39 INFO - delivery method with keep-origin-redirect and when 20:09:39 INFO - the target request is same-origin. 20:09:39 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1280ms 20:09:39 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html 20:09:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b5de1000 == 35 [pid = 8892] [id = 532] 20:09:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8b14e7000) [pid = 8892] [serial = 1492] [outer = (nil)] 20:09:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8b1b28800) [pid = 8892] [serial = 1493] [outer = 0x7fd8b14e7000] 20:09:40 INFO - PROCESS | 8892 | 1459566580281 Marionette INFO loaded listener.js 20:09:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8b28e3c00) [pid = 8892] [serial = 1494] [outer = 0x7fd8b14e7000] 20:09:41 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:41 INFO - document served over http requires an http 20:09:41 INFO - sub-resource via xhr-request using the meta-csp 20:09:41 INFO - delivery method with no-redirect and when 20:09:41 INFO - the target request is same-origin. 20:09:41 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1178ms 20:09:41 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:09:41 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b642f800 == 36 [pid = 8892] [id = 533] 20:09:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8b16e2c00) [pid = 8892] [serial = 1495] [outer = (nil)] 20:09:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8b2d17c00) [pid = 8892] [serial = 1496] [outer = 0x7fd8b16e2c00] 20:09:41 INFO - PROCESS | 8892 | 1459566581525 Marionette INFO loaded listener.js 20:09:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8b2ec6000) [pid = 8892] [serial = 1497] [outer = 0x7fd8b16e2c00] 20:09:42 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:42 INFO - document served over http requires an http 20:09:42 INFO - sub-resource via xhr-request using the meta-csp 20:09:42 INFO - delivery method with swap-origin-redirect and when 20:09:42 INFO - the target request is same-origin. 20:09:42 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1291ms 20:09:42 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:09:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b68ee000 == 37 [pid = 8892] [id = 534] 20:09:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8b28dbc00) [pid = 8892] [serial = 1498] [outer = (nil)] 20:09:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8b2ec9800) [pid = 8892] [serial = 1499] [outer = 0x7fd8b28dbc00] 20:09:42 INFO - PROCESS | 8892 | 1459566582802 Marionette INFO loaded listener.js 20:09:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8b3386400) [pid = 8892] [serial = 1500] [outer = 0x7fd8b28dbc00] 20:09:43 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:43 INFO - document served over http requires an https 20:09:43 INFO - sub-resource via fetch-request using the meta-csp 20:09:43 INFO - delivery method with keep-origin-redirect and when 20:09:43 INFO - the target request is same-origin. 20:09:43 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1285ms 20:09:43 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html 20:09:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6d40800 == 38 [pid = 8892] [id = 535] 20:09:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8adca3c00) [pid = 8892] [serial = 1501] [outer = (nil)] 20:09:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8b2ecfc00) [pid = 8892] [serial = 1502] [outer = 0x7fd8adca3c00] 20:09:44 INFO - PROCESS | 8892 | 1459566584101 Marionette INFO loaded listener.js 20:09:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8b5d4b800) [pid = 8892] [serial = 1503] [outer = 0x7fd8adca3c00] 20:09:44 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:44 INFO - document served over http requires an https 20:09:44 INFO - sub-resource via fetch-request using the meta-csp 20:09:44 INFO - delivery method with no-redirect and when 20:09:44 INFO - the target request is same-origin. 20:09:44 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1232ms 20:09:44 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:09:45 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b8ce2800 == 39 [pid = 8892] [id = 536] 20:09:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 203 (0x7fd8b2ec6400) [pid = 8892] [serial = 1504] [outer = (nil)] 20:09:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 204 (0x7fd8b5d4f400) [pid = 8892] [serial = 1505] [outer = 0x7fd8b2ec6400] 20:09:45 INFO - PROCESS | 8892 | 1459566585345 Marionette INFO loaded listener.js 20:09:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 205 (0x7fd8b66d2400) [pid = 8892] [serial = 1506] [outer = 0x7fd8b2ec6400] 20:09:46 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:46 INFO - document served over http requires an https 20:09:46 INFO - sub-resource via fetch-request using the meta-csp 20:09:46 INFO - delivery method with swap-origin-redirect and when 20:09:46 INFO - the target request is same-origin. 20:09:46 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1327ms 20:09:46 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:09:46 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba370800 == 40 [pid = 8892] [id = 537] 20:09:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 206 (0x7fd8b38ca000) [pid = 8892] [serial = 1507] [outer = (nil)] 20:09:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 207 (0x7fd8b64e9000) [pid = 8892] [serial = 1508] [outer = 0x7fd8b38ca000] 20:09:46 INFO - PROCESS | 8892 | 1459566586692 Marionette INFO loaded listener.js 20:09:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 208 (0x7fd8b6cd0400) [pid = 8892] [serial = 1509] [outer = 0x7fd8b38ca000] 20:09:47 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba67a000 == 41 [pid = 8892] [id = 538] 20:09:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 209 (0x7fd8b6cd4000) [pid = 8892] [serial = 1510] [outer = (nil)] 20:09:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 210 (0x7fd8b64e9c00) [pid = 8892] [serial = 1511] [outer = 0x7fd8b6cd4000] 20:09:47 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:47 INFO - document served over http requires an https 20:09:47 INFO - sub-resource via iframe-tag using the meta-csp 20:09:47 INFO - delivery method with keep-origin-redirect and when 20:09:47 INFO - the target request is same-origin. 20:09:47 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1333ms 20:09:47 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:09:47 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba680800 == 42 [pid = 8892] [id = 539] 20:09:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 211 (0x7fd8b5d50000) [pid = 8892] [serial = 1512] [outer = (nil)] 20:09:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 212 (0x7fd8b6cd1400) [pid = 8892] [serial = 1513] [outer = 0x7fd8b5d50000] 20:09:48 INFO - PROCESS | 8892 | 1459566588048 Marionette INFO loaded listener.js 20:09:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 213 (0x7fd8b78c4000) [pid = 8892] [serial = 1514] [outer = 0x7fd8b5d50000] 20:09:48 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bc316800 == 43 [pid = 8892] [id = 540] 20:09:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 214 (0x7fd8b78c7400) [pid = 8892] [serial = 1515] [outer = (nil)] 20:09:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 215 (0x7fd8b78d1c00) [pid = 8892] [serial = 1516] [outer = 0x7fd8b78c7400] 20:09:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78bf800 == 42 [pid = 8892] [id = 508] 20:09:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a80df000 == 41 [pid = 8892] [id = 510] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d8c800 == 40 [pid = 8892] [id = 512] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6e0000 == 39 [pid = 8892] [id = 523] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b016f800 == 38 [pid = 8892] [id = 525] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b046a800 == 37 [pid = 8892] [id = 527] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b13c6000 == 36 [pid = 8892] [id = 529] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2781000 == 35 [pid = 8892] [id = 530] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e21000 == 34 [pid = 8892] [id = 531] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b5de1000 == 33 [pid = 8892] [id = 532] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b642f800 == 32 [pid = 8892] [id = 533] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b68ee000 == 31 [pid = 8892] [id = 534] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6d40800 == 30 [pid = 8892] [id = 535] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b8ce2800 == 29 [pid = 8892] [id = 536] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba370800 == 28 [pid = 8892] [id = 537] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba67a000 == 27 [pid = 8892] [id = 538] 20:09:51 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c5e59000 == 26 [pid = 8892] [id = 504] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 214 (0x7fd8ae27fc00) [pid = 8892] [serial = 1332] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 213 (0x7fd8b8f9d000) [pid = 8892] [serial = 1257] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 212 (0x7fd8b8d82000) [pid = 8892] [serial = 1254] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 211 (0x7fd8b1696c00) [pid = 8892] [serial = 1251] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 210 (0x7fd8ae27f800) [pid = 8892] [serial = 1248] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 209 (0x7fd8a854b800) [pid = 8892] [serial = 1320] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 208 (0x7fd8a9e21000) [pid = 8892] [serial = 1317] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 207 (0x7fd8c3d58c00) [pid = 8892] [serial = 1314] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 206 (0x7fd8c3d5d000) [pid = 8892] [serial = 1309] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 205 (0x7fd8c3b17c00) [pid = 8892] [serial = 1304] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 204 (0x7fd8c367e000) [pid = 8892] [serial = 1299] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 203 (0x7fd8c33ebc00) [pid = 8892] [serial = 1296] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8c32a2000) [pid = 8892] [serial = 1293] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8c2ba8400) [pid = 8892] [serial = 1290] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8c1672c00) [pid = 8892] [serial = 1278] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8c14b1400) [pid = 8892] [serial = 1275] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8c1424c00) [pid = 8892] [serial = 1272] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8c0ed9400) [pid = 8892] [serial = 1267] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8bcab1400) [pid = 8892] [serial = 1262] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8adca0800) [pid = 8892] [serial = 1335] [outer = (nil)] [url = about:blank] 20:09:51 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8bcfc8000) [pid = 8892] [serial = 32] [outer = (nil)] [url = data:application/vnd.mozilla.xul+xml;charset=utf-8,] 20:09:52 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:52 INFO - document served over http requires an https 20:09:52 INFO - sub-resource via iframe-tag using the meta-csp 20:09:52 INFO - delivery method with no-redirect and when 20:09:52 INFO - the target request is same-origin. 20:09:52 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 4686ms 20:09:52 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:09:52 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a519a000 == 27 [pid = 8892] [id = 541] 20:09:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8a53c7400) [pid = 8892] [serial = 1517] [outer = (nil)] 20:09:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8a6987000) [pid = 8892] [serial = 1518] [outer = 0x7fd8a53c7400] 20:09:52 INFO - PROCESS | 8892 | 1459566592562 Marionette INFO loaded listener.js 20:09:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8a6b8a000) [pid = 8892] [serial = 1519] [outer = 0x7fd8a53c7400] 20:09:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a551e800 == 28 [pid = 8892] [id = 542] 20:09:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8a698f400) [pid = 8892] [serial = 1520] [outer = (nil)] 20:09:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8a6e17800) [pid = 8892] [serial = 1521] [outer = 0x7fd8a698f400] 20:09:53 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:53 INFO - document served over http requires an https 20:09:53 INFO - sub-resource via iframe-tag using the meta-csp 20:09:53 INFO - delivery method with swap-origin-redirect and when 20:09:53 INFO - the target request is same-origin. 20:09:53 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1079ms 20:09:53 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:09:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ad7000 == 29 [pid = 8892] [id = 543] 20:09:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8a6985c00) [pid = 8892] [serial = 1522] [outer = (nil)] 20:09:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8a6b8f800) [pid = 8892] [serial = 1523] [outer = 0x7fd8a6985c00] 20:09:53 INFO - PROCESS | 8892 | 1459566593785 Marionette INFO loaded listener.js 20:09:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8a75aac00) [pid = 8892] [serial = 1524] [outer = 0x7fd8a6985c00] 20:09:54 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:54 INFO - document served over http requires an https 20:09:54 INFO - sub-resource via script-tag using the meta-csp 20:09:54 INFO - delivery method with keep-origin-redirect and when 20:09:54 INFO - the target request is same-origin. 20:09:54 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1229ms 20:09:54 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html 20:09:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a701a800 == 30 [pid = 8892] [id = 544] 20:09:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 203 (0x7fd8a4f87c00) [pid = 8892] [serial = 1525] [outer = (nil)] 20:09:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 204 (0x7fd8a780f400) [pid = 8892] [serial = 1526] [outer = 0x7fd8a4f87c00] 20:09:55 INFO - PROCESS | 8892 | 1459566595030 Marionette INFO loaded listener.js 20:09:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 205 (0x7fd8a82e4400) [pid = 8892] [serial = 1527] [outer = 0x7fd8a4f87c00] 20:09:55 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:55 INFO - document served over http requires an https 20:09:55 INFO - sub-resource via script-tag using the meta-csp 20:09:55 INFO - delivery method with no-redirect and when 20:09:55 INFO - the target request is same-origin. 20:09:55 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | took 1134ms 20:09:55 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 204 (0x7fd8a47c4800) [pid = 8892] [serial = 1336] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 203 (0x7fd8a75a2000) [pid = 8892] [serial = 1339] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8a9ab8000) [pid = 8892] [serial = 1344] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8a9e1a800) [pid = 8892] [serial = 1349] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8af951800) [pid = 8892] [serial = 1363] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8a47cfc00) [pid = 8892] [serial = 1428] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8b8e23000) [pid = 8892] [serial = 1399] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8a9aab800) [pid = 8892] [serial = 1426] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8a53c8800) [pid = 8892] [serial = 1417] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8b8c25c00) [pid = 8892] [serial = 1389] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566534167] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8af952400) [pid = 8892] [serial = 1360] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8ad765800) [pid = 8892] [serial = 1347] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566518060] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8a47c2800) [pid = 8892] [serial = 1420] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8ba266c00) [pid = 8892] [serial = 1402] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8b78c9400) [pid = 8892] [serial = 1396] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8a82e4c00) [pid = 8892] [serial = 1423] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8ae2cec00) [pid = 8892] [serial = 1352] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8a9aab000) [pid = 8892] [serial = 1342] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8a53be400) [pid = 8892] [serial = 1433] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8a4f8bc00) [pid = 8892] [serial = 1436] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8bd2dcc00) [pid = 8892] [serial = 1414] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8b6d29400) [pid = 8892] [serial = 1384] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8aa569400) [pid = 8892] [serial = 1354] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8a9ab4000) [pid = 8892] [serial = 1431] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566557505] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8b8e28c00) [pid = 8892] [serial = 1394] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8af8e7800) [pid = 8892] [serial = 1357] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8afdc3400) [pid = 8892] [serial = 1366] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b14e3800) [pid = 8892] [serial = 1369] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/http-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8b1b23400) [pid = 8892] [serial = 1372] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8b337dc00) [pid = 8892] [serial = 1375] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8b38cfc00) [pid = 8892] [serial = 1378] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8b64f1000) [pid = 8892] [serial = 1381] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8b66d3c00) [pid = 8892] [serial = 1386] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8b66d7800) [pid = 8892] [serial = 1391] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8ba26b800) [pid = 8892] [serial = 1405] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8bc365800) [pid = 8892] [serial = 1408] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8bcab3c00) [pid = 8892] [serial = 1411] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8a47c6000) [pid = 8892] [serial = 1437] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8a9aaf400) [pid = 8892] [serial = 1434] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8b1691800) [pid = 8892] [serial = 1367] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b18adc00) [pid = 8892] [serial = 1370] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8b1b32400) [pid = 8892] [serial = 1373] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8b38d0000) [pid = 8892] [serial = 1376] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8b66d4400) [pid = 8892] [serial = 1379] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8b6cd7400) [pid = 8892] [serial = 1382] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8b6cd2400) [pid = 8892] [serial = 1385] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8b6d1cc00) [pid = 8892] [serial = 1387] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8b78eb800) [pid = 8892] [serial = 1390] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566534167] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8b8c26400) [pid = 8892] [serial = 1392] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8b8d85000) [pid = 8892] [serial = 1395] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8b8e25400) [pid = 8892] [serial = 1397] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8ba26f000) [pid = 8892] [serial = 1400] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8ba991c00) [pid = 8892] [serial = 1403] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8bc7d0c00) [pid = 8892] [serial = 1406] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8bcade000) [pid = 8892] [serial = 1409] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8bcfcc800) [pid = 8892] [serial = 1412] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8bd4e7c00) [pid = 8892] [serial = 1415] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8a6984800) [pid = 8892] [serial = 1418] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8a6e1a400) [pid = 8892] [serial = 1421] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8a8548400) [pid = 8892] [serial = 1424] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8a53c7800) [pid = 8892] [serial = 1427] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8a53c7000) [pid = 8892] [serial = 1429] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8a6e1ec00) [pid = 8892] [serial = 1432] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566557505] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8a47c7000) [pid = 8892] [serial = 1337] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8a7810c00) [pid = 8892] [serial = 1340] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8a8eac400) [pid = 8892] [serial = 1343] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8aa4cfc00) [pid = 8892] [serial = 1345] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8adb31c00) [pid = 8892] [serial = 1348] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566518060] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8adfd2800) [pid = 8892] [serial = 1350] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8ae2c4c00) [pid = 8892] [serial = 1353] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8ae282000) [pid = 8892] [serial = 1355] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8af94c800) [pid = 8892] [serial = 1358] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8afdc9800) [pid = 8892] [serial = 1361] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8b0b88c00) [pid = 8892] [serial = 1364] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8b16e0c00) [pid = 8892] [serial = 1368] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8b1b2a000) [pid = 8892] [serial = 1371] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8bcab1000) [pid = 8892] [serial = 1407] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8bcae7800) [pid = 8892] [serial = 1410] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8bd4db800) [pid = 8892] [serial = 1413] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8b0b95800) [pid = 8892] [serial = 1365] [outer = (nil)] [url = about:blank] 20:09:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b80000 == 31 [pid = 8892] [id = 545] 20:09:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8a47c2800) [pid = 8892] [serial = 1528] [outer = (nil)] 20:09:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8a47c7000) [pid = 8892] [serial = 1529] [outer = 0x7fd8a47c2800] 20:09:57 INFO - PROCESS | 8892 | 1459566597488 Marionette INFO loaded listener.js 20:09:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a7806400) [pid = 8892] [serial = 1530] [outer = 0x7fd8a47c2800] 20:09:58 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:58 INFO - document served over http requires an https 20:09:58 INFO - sub-resource via script-tag using the meta-csp 20:09:58 INFO - delivery method with swap-origin-redirect and when 20:09:58 INFO - the target request is same-origin. 20:09:58 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 2327ms 20:09:58 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:09:58 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85b8800 == 32 [pid = 8892] [id = 546] 20:09:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a47c5400) [pid = 8892] [serial = 1531] [outer = (nil)] 20:09:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a759fc00) [pid = 8892] [serial = 1532] [outer = 0x7fd8a47c5400] 20:09:58 INFO - PROCESS | 8892 | 1459566598479 Marionette INFO loaded listener.js 20:09:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8a9aac400) [pid = 8892] [serial = 1533] [outer = 0x7fd8a47c5400] 20:09:59 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:09:59 INFO - document served over http requires an https 20:09:59 INFO - sub-resource via xhr-request using the meta-csp 20:09:59 INFO - delivery method with keep-origin-redirect and when 20:09:59 INFO - the target request is same-origin. 20:09:59 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 978ms 20:09:59 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html 20:09:59 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a471b000 == 33 [pid = 8892] [id = 547] 20:09:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8a47c9c00) [pid = 8892] [serial = 1534] [outer = (nil)] 20:09:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8a4f83400) [pid = 8892] [serial = 1535] [outer = 0x7fd8a47c9c00] 20:09:59 INFO - PROCESS | 8892 | 1459566599634 Marionette INFO loaded listener.js 20:09:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8a53c4c00) [pid = 8892] [serial = 1536] [outer = 0x7fd8a47c9c00] 20:10:00 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:00 INFO - document served over http requires an https 20:10:00 INFO - sub-resource via xhr-request using the meta-csp 20:10:00 INFO - delivery method with no-redirect and when 20:10:00 INFO - the target request is same-origin. 20:10:00 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1274ms 20:10:00 INFO - TEST-START | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:10:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78d2000 == 34 [pid = 8892] [id = 548] 20:10:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8a53bac00) [pid = 8892] [serial = 1537] [outer = (nil)] 20:10:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8a75a0c00) [pid = 8892] [serial = 1538] [outer = 0x7fd8a53bac00] 20:10:00 INFO - PROCESS | 8892 | 1459566600851 Marionette INFO loaded listener.js 20:10:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8a82dc000) [pid = 8892] [serial = 1539] [outer = 0x7fd8a53bac00] 20:10:01 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:01 INFO - document served over http requires an https 20:10:01 INFO - sub-resource via xhr-request using the meta-csp 20:10:01 INFO - delivery method with swap-origin-redirect and when 20:10:01 INFO - the target request is same-origin. 20:10:01 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1358ms 20:10:01 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:10:02 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d61800 == 35 [pid = 8892] [id = 549] 20:10:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8a6b90800) [pid = 8892] [serial = 1540] [outer = (nil)] 20:10:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8a9aaf800) [pid = 8892] [serial = 1541] [outer = 0x7fd8a6b90800] 20:10:02 INFO - PROCESS | 8892 | 1459566602206 Marionette INFO loaded listener.js 20:10:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8a9e20c00) [pid = 8892] [serial = 1542] [outer = 0x7fd8a6b90800] 20:10:03 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:03 INFO - document served over http requires an http 20:10:03 INFO - sub-resource via fetch-request using the meta-referrer 20:10:03 INFO - delivery method with keep-origin-redirect and when 20:10:03 INFO - the target request is cross-origin. 20:10:03 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1338ms 20:10:03 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html 20:10:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7019000 == 36 [pid = 8892] [id = 550] 20:10:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8a9aacc00) [pid = 8892] [serial = 1543] [outer = (nil)] 20:10:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8aa4da800) [pid = 8892] [serial = 1544] [outer = 0x7fd8a9aacc00] 20:10:03 INFO - PROCESS | 8892 | 1459566603569 Marionette INFO loaded listener.js 20:10:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8aa4da400) [pid = 8892] [serial = 1545] [outer = 0x7fd8a9aacc00] 20:10:04 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:04 INFO - document served over http requires an http 20:10:04 INFO - sub-resource via fetch-request using the meta-referrer 20:10:04 INFO - delivery method with no-redirect and when 20:10:04 INFO - the target request is cross-origin. 20:10:04 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1239ms 20:10:04 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:10:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5c5800 == 37 [pid = 8892] [id = 551] 20:10:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8aa4d1c00) [pid = 8892] [serial = 1546] [outer = (nil)] 20:10:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8aa56b000) [pid = 8892] [serial = 1547] [outer = 0x7fd8aa4d1c00] 20:10:04 INFO - PROCESS | 8892 | 1459566604819 Marionette INFO loaded listener.js 20:10:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8aa7dc400) [pid = 8892] [serial = 1548] [outer = 0x7fd8aa4d1c00] 20:10:05 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:05 INFO - document served over http requires an http 20:10:05 INFO - sub-resource via fetch-request using the meta-referrer 20:10:05 INFO - delivery method with swap-origin-redirect and when 20:10:05 INFO - the target request is cross-origin. 20:10:05 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1178ms 20:10:05 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:10:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85b8000 == 38 [pid = 8892] [id = 552] 20:10:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8aa7ea000) [pid = 8892] [serial = 1549] [outer = (nil)] 20:10:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8aa7eb400) [pid = 8892] [serial = 1550] [outer = 0x7fd8aa7ea000] 20:10:06 INFO - PROCESS | 8892 | 1459566606033 Marionette INFO loaded listener.js 20:10:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8aa957800) [pid = 8892] [serial = 1551] [outer = 0x7fd8aa7ea000] 20:10:06 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ad8e4000 == 39 [pid = 8892] [id = 553] 20:10:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8ad730000) [pid = 8892] [serial = 1552] [outer = (nil)] 20:10:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8aa7ea800) [pid = 8892] [serial = 1553] [outer = 0x7fd8ad730000] 20:10:07 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:07 INFO - document served over http requires an http 20:10:07 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:07 INFO - delivery method with keep-origin-redirect and when 20:10:07 INFO - the target request is cross-origin. 20:10:07 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1410ms 20:10:07 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:10:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbd7800 == 40 [pid = 8892] [id = 554] 20:10:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8a4f8ec00) [pid = 8892] [serial = 1554] [outer = (nil)] 20:10:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8aa95f400) [pid = 8892] [serial = 1555] [outer = 0x7fd8a4f8ec00] 20:10:07 INFO - PROCESS | 8892 | 1459566607437 Marionette INFO loaded listener.js 20:10:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8ad739400) [pid = 8892] [serial = 1556] [outer = 0x7fd8a4f8ec00] 20:10:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addc3800 == 41 [pid = 8892] [id = 555] 20:10:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8ad756c00) [pid = 8892] [serial = 1557] [outer = (nil)] 20:10:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8ad73a000) [pid = 8892] [serial = 1558] [outer = 0x7fd8ad756c00] 20:10:08 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:08 INFO - document served over http requires an http 20:10:08 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:08 INFO - delivery method with no-redirect and when 20:10:08 INFO - the target request is cross-origin. 20:10:08 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1326ms 20:10:08 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:10:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adde2800 == 42 [pid = 8892] [id = 556] 20:10:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8aa7ea400) [pid = 8892] [serial = 1559] [outer = (nil)] 20:10:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8ad759400) [pid = 8892] [serial = 1560] [outer = 0x7fd8aa7ea400] 20:10:08 INFO - PROCESS | 8892 | 1459566608785 Marionette INFO loaded listener.js 20:10:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8ad763800) [pid = 8892] [serial = 1561] [outer = 0x7fd8aa7ea400] 20:10:09 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adeb6800 == 43 [pid = 8892] [id = 557] 20:10:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8adb23800) [pid = 8892] [serial = 1562] [outer = (nil)] 20:10:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8ad75ec00) [pid = 8892] [serial = 1563] [outer = 0x7fd8adb23800] 20:10:09 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:09 INFO - document served over http requires an http 20:10:09 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:09 INFO - delivery method with swap-origin-redirect and when 20:10:09 INFO - the target request is cross-origin. 20:10:09 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1381ms 20:10:09 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:10:10 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adf92800 == 44 [pid = 8892] [id = 558] 20:10:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8ad734c00) [pid = 8892] [serial = 1564] [outer = (nil)] 20:10:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8adb24c00) [pid = 8892] [serial = 1565] [outer = 0x7fd8ad734c00] 20:10:10 INFO - PROCESS | 8892 | 1459566610185 Marionette INFO loaded listener.js 20:10:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8adc9b400) [pid = 8892] [serial = 1566] [outer = 0x7fd8ad734c00] 20:10:12 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:12 INFO - document served over http requires an http 20:10:12 INFO - sub-resource via script-tag using the meta-referrer 20:10:12 INFO - delivery method with keep-origin-redirect and when 20:10:12 INFO - the target request is cross-origin. 20:10:12 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 2530ms 20:10:12 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html 20:10:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3da800 == 45 [pid = 8892] [id = 559] 20:10:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8adca6800) [pid = 8892] [serial = 1567] [outer = (nil)] 20:10:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8adca8400) [pid = 8892] [serial = 1568] [outer = 0x7fd8adca6800] 20:10:12 INFO - PROCESS | 8892 | 1459566612698 Marionette INFO loaded listener.js 20:10:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8ae052c00) [pid = 8892] [serial = 1569] [outer = 0x7fd8adca6800] 20:10:13 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:13 INFO - document served over http requires an http 20:10:13 INFO - sub-resource via script-tag using the meta-referrer 20:10:13 INFO - delivery method with no-redirect and when 20:10:13 INFO - the target request is cross-origin. 20:10:13 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html | took 1223ms 20:10:13 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:10:13 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d82800 == 46 [pid = 8892] [id = 560] 20:10:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8a47c3c00) [pid = 8892] [serial = 1570] [outer = (nil)] 20:10:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8a47d1400) [pid = 8892] [serial = 1571] [outer = 0x7fd8a47c3c00] 20:10:13 INFO - PROCESS | 8892 | 1459566613927 Marionette INFO loaded listener.js 20:10:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8ae055000) [pid = 8892] [serial = 1572] [outer = 0x7fd8a47c3c00] 20:10:14 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:14 INFO - document served over http requires an http 20:10:14 INFO - sub-resource via script-tag using the meta-referrer 20:10:14 INFO - delivery method with swap-origin-redirect and when 20:10:14 INFO - the target request is cross-origin. 20:10:14 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1289ms 20:10:14 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:10:15 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addc4800 == 47 [pid = 8892] [id = 561] 20:10:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8a47c5c00) [pid = 8892] [serial = 1573] [outer = (nil)] 20:10:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8ae059800) [pid = 8892] [serial = 1574] [outer = 0x7fd8a47c5c00] 20:10:15 INFO - PROCESS | 8892 | 1459566615231 Marionette INFO loaded listener.js 20:10:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8ae281800) [pid = 8892] [serial = 1575] [outer = 0x7fd8a47c5c00] 20:10:16 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:16 INFO - document served over http requires an http 20:10:16 INFO - sub-resource via xhr-request using the meta-referrer 20:10:16 INFO - delivery method with keep-origin-redirect and when 20:10:16 INFO - the target request is cross-origin. 20:10:16 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1630ms 20:10:16 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html 20:10:16 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5513000 == 48 [pid = 8892] [id = 562] 20:10:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8a47c7400) [pid = 8892] [serial = 1576] [outer = (nil)] 20:10:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8a53be800) [pid = 8892] [serial = 1577] [outer = 0x7fd8a47c7400] 20:10:17 INFO - PROCESS | 8892 | 1459566617049 Marionette INFO loaded listener.js 20:10:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8a6b92000) [pid = 8892] [serial = 1578] [outer = 0x7fd8a47c7400] 20:10:17 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:17 INFO - document served over http requires an http 20:10:17 INFO - sub-resource via xhr-request using the meta-referrer 20:10:17 INFO - delivery method with no-redirect and when 20:10:17 INFO - the target request is cross-origin. 20:10:17 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1326ms 20:10:17 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:10:18 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85c0800 == 49 [pid = 8892] [id = 563] 20:10:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8a47c6000) [pid = 8892] [serial = 1579] [outer = (nil)] 20:10:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8a6984c00) [pid = 8892] [serial = 1580] [outer = 0x7fd8a47c6000] 20:10:18 INFO - PROCESS | 8892 | 1459566618238 Marionette INFO loaded listener.js 20:10:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8a8ea4000) [pid = 8892] [serial = 1581] [outer = 0x7fd8a47c6000] 20:10:19 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a551e800 == 48 [pid = 8892] [id = 542] 20:10:19 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bc316800 == 47 [pid = 8892] [id = 540] 20:10:19 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:19 INFO - document served over http requires an http 20:10:19 INFO - sub-resource via xhr-request using the meta-referrer 20:10:19 INFO - delivery method with swap-origin-redirect and when 20:10:19 INFO - the target request is cross-origin. 20:10:19 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1384ms 20:10:19 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8a8eae800) [pid = 8892] [serial = 1425] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b0b89000) [pid = 8892] [serial = 1362] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8afdc0000) [pid = 8892] [serial = 1359] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8af8e7000) [pid = 8892] [serial = 1356] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8ae2c5c00) [pid = 8892] [serial = 1351] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8aa958800) [pid = 8892] [serial = 1346] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8a8556400) [pid = 8892] [serial = 1341] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8a53be000) [pid = 8892] [serial = 1338] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8a698e000) [pid = 8892] [serial = 1419] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8aa4d2000) [pid = 8892] [serial = 1435] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8bd5c2400) [pid = 8892] [serial = 1416] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8bc36cc00) [pid = 8892] [serial = 1404] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8ba98b800) [pid = 8892] [serial = 1401] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8ba266400) [pid = 8892] [serial = 1398] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b8e20800) [pid = 8892] [serial = 1393] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8b78ef800) [pid = 8892] [serial = 1388] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8b6cdac00) [pid = 8892] [serial = 1383] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8b6cd0c00) [pid = 8892] [serial = 1380] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8b64eec00) [pid = 8892] [serial = 1377] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8b2d21000) [pid = 8892] [serial = 1374] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8a75a8400) [pid = 8892] [serial = 1422] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8a9ab2c00) [pid = 8892] [serial = 1430] [outer = (nil)] [url = about:blank] 20:10:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a551a000 == 48 [pid = 8892] [id = 564] 20:10:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8a4f86c00) [pid = 8892] [serial = 1582] [outer = (nil)] 20:10:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8a8556400) [pid = 8892] [serial = 1583] [outer = 0x7fd8a4f86c00] 20:10:19 INFO - PROCESS | 8892 | 1459566619627 Marionette INFO loaded listener.js 20:10:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8aa4ce800) [pid = 8892] [serial = 1584] [outer = 0x7fd8a4f86c00] 20:10:20 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:20 INFO - document served over http requires an https 20:10:20 INFO - sub-resource via fetch-request using the meta-referrer 20:10:20 INFO - delivery method with keep-origin-redirect and when 20:10:20 INFO - the target request is cross-origin. 20:10:20 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1133ms 20:10:20 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html 20:10:20 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b7b000 == 49 [pid = 8892] [id = 565] 20:10:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8aa4cf000) [pid = 8892] [serial = 1585] [outer = (nil)] 20:10:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8aa7db000) [pid = 8892] [serial = 1586] [outer = 0x7fd8aa4cf000] 20:10:20 INFO - PROCESS | 8892 | 1459566620593 Marionette INFO loaded listener.js 20:10:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8ad737800) [pid = 8892] [serial = 1587] [outer = 0x7fd8aa4cf000] 20:10:21 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:21 INFO - document served over http requires an https 20:10:21 INFO - sub-resource via fetch-request using the meta-referrer 20:10:21 INFO - delivery method with no-redirect and when 20:10:21 INFO - the target request is cross-origin. 20:10:21 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | took 988ms 20:10:21 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:10:21 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa518800 == 50 [pid = 8892] [id = 566] 20:10:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8aa7ecc00) [pid = 8892] [serial = 1588] [outer = (nil)] 20:10:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8ad764000) [pid = 8892] [serial = 1589] [outer = 0x7fd8aa7ecc00] 20:10:21 INFO - PROCESS | 8892 | 1459566621578 Marionette INFO loaded listener.js 20:10:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8ae05e000) [pid = 8892] [serial = 1590] [outer = 0x7fd8aa7ecc00] 20:10:22 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:22 INFO - document served over http requires an https 20:10:22 INFO - sub-resource via fetch-request using the meta-referrer 20:10:22 INFO - delivery method with swap-origin-redirect and when 20:10:22 INFO - the target request is cross-origin. 20:10:22 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1024ms 20:10:22 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:10:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab98000 == 51 [pid = 8892] [id = 567] 20:10:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8ae05e800) [pid = 8892] [serial = 1591] [outer = (nil)] 20:10:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8ae27fc00) [pid = 8892] [serial = 1592] [outer = 0x7fd8ae05e800] 20:10:22 INFO - PROCESS | 8892 | 1459566622686 Marionette INFO loaded listener.js 20:10:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8ae2cec00) [pid = 8892] [serial = 1593] [outer = 0x7fd8ae05e800] 20:10:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbed000 == 52 [pid = 8892] [id = 568] 20:10:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8af357c00) [pid = 8892] [serial = 1594] [outer = (nil)] 20:10:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8ae2c3400) [pid = 8892] [serial = 1595] [outer = 0x7fd8af357c00] 20:10:23 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:23 INFO - document served over http requires an https 20:10:23 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:23 INFO - delivery method with keep-origin-redirect and when 20:10:23 INFO - the target request is cross-origin. 20:10:23 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1122ms 20:10:23 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:10:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adead800 == 53 [pid = 8892] [id = 569] 20:10:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8ae278c00) [pid = 8892] [serial = 1596] [outer = (nil)] 20:10:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8af358c00) [pid = 8892] [serial = 1597] [outer = 0x7fd8ae278c00] 20:10:23 INFO - PROCESS | 8892 | 1459566623808 Marionette INFO loaded listener.js 20:10:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8af8a8c00) [pid = 8892] [serial = 1598] [outer = 0x7fd8ae278c00] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8ae05d800) [pid = 8892] [serial = 1465] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8ae2c2400) [pid = 8892] [serial = 1470] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8ae2c9400) [pid = 8892] [serial = 1475] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8ad764800) [pid = 8892] [serial = 1456] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8adb31000) [pid = 8892] [serial = 1459] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8adfd5800) [pid = 8892] [serial = 1462] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8a4f81400) [pid = 8892] [serial = 1447] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8aa7e3400) [pid = 8892] [serial = 1450] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8ad764400) [pid = 8892] [serial = 1453] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8a9ab7400) [pid = 8892] [serial = 1442] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8aa7d6c00) [pid = 8892] [serial = 1445] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8a4f87c00) [pid = 8892] [serial = 1525] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8afb7c400) [pid = 8892] [serial = 1486] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8a6985c00) [pid = 8892] [serial = 1522] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8afdc5c00) [pid = 8892] [serial = 1478] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8af35f800) [pid = 8892] [serial = 1468] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8a698f400) [pid = 8892] [serial = 1520] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8a53c2800) [pid = 8892] [serial = 1438] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8a53c5c00) [pid = 8892] [serial = 1441] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8a53c7400) [pid = 8892] [serial = 1517] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8a47c2800) [pid = 8892] [serial = 1528] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8afb7a400) [pid = 8892] [serial = 1473] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566573077] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8b6cd4000) [pid = 8892] [serial = 1510] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8aa56b800) [pid = 8892] [serial = 1480] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8ae2ce400) [pid = 8892] [serial = 1483] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8aa56a800) [pid = 8892] [serial = 1444] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8b38ca000) [pid = 8892] [serial = 1507] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8b16e2c00) [pid = 8892] [serial = 1495] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8b28dbc00) [pid = 8892] [serial = 1498] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8adca3c00) [pid = 8892] [serial = 1501] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8b78c7400) [pid = 8892] [serial = 1515] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566588631] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8b2ec6400) [pid = 8892] [serial = 1504] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8b0b91800) [pid = 8892] [serial = 1489] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8b14e7000) [pid = 8892] [serial = 1492] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8b64e9c00) [pid = 8892] [serial = 1511] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8b64e9000) [pid = 8892] [serial = 1508] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8b2d17c00) [pid = 8892] [serial = 1496] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8b2ec9800) [pid = 8892] [serial = 1499] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8a6e17800) [pid = 8892] [serial = 1521] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8a6987000) [pid = 8892] [serial = 1518] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8b2ecfc00) [pid = 8892] [serial = 1502] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8a780f400) [pid = 8892] [serial = 1526] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8b78d1c00) [pid = 8892] [serial = 1516] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566588631] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8b6cd1400) [pid = 8892] [serial = 1513] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8b5d4f400) [pid = 8892] [serial = 1505] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8b16d6800) [pid = 8892] [serial = 1490] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8a6b8f800) [pid = 8892] [serial = 1523] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8b1b28800) [pid = 8892] [serial = 1493] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8a47c7000) [pid = 8892] [serial = 1529] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 124 (0x7fd8afdc3800) [pid = 8892] [serial = 1481] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 123 (0x7fd8b07ca800) [pid = 8892] [serial = 1484] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 122 (0x7fd8b14e6800) [pid = 8892] [serial = 1487] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 121 (0x7fd8af359c00) [pid = 8892] [serial = 1469] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 120 (0x7fd8ae2c6c00) [pid = 8892] [serial = 1466] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 119 (0x7fd8af948800) [pid = 8892] [serial = 1474] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566573077] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 118 (0x7fd8af35bc00) [pid = 8892] [serial = 1471] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 117 (0x7fd8afb70c00) [pid = 8892] [serial = 1479] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 116 (0x7fd8afb72c00) [pid = 8892] [serial = 1476] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 115 (0x7fd8adc9c000) [pid = 8892] [serial = 1457] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 114 (0x7fd8adfdb800) [pid = 8892] [serial = 1460] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 113 (0x7fd8ae061400) [pid = 8892] [serial = 1463] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 112 (0x7fd8aa7ec000) [pid = 8892] [serial = 1448] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 111 (0x7fd8a759fc00) [pid = 8892] [serial = 1532] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 110 (0x7fd8aa961400) [pid = 8892] [serial = 1451] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 109 (0x7fd8adb25000) [pid = 8892] [serial = 1454] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 108 (0x7fd8a698d000) [pid = 8892] [serial = 1439] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 107 (0x7fd8b2ec6000) [pid = 8892] [serial = 1497] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 106 (0x7fd8b18b5800) [pid = 8892] [serial = 1491] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 105 (0x7fd8b28e3c00) [pid = 8892] [serial = 1494] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 104 (0x7fd8aa95c400) [pid = 8892] [serial = 1449] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 103 (0x7fd8ad73ac00) [pid = 8892] [serial = 1452] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | --DOMWINDOW == 102 (0x7fd8adb30c00) [pid = 8892] [serial = 1455] [outer = (nil)] [url = about:blank] 20:10:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addc5800 == 54 [pid = 8892] [id = 570] 20:10:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 103 (0x7fd8a8549800) [pid = 8892] [serial = 1599] [outer = (nil)] 20:10:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 104 (0x7fd8a9ab5400) [pid = 8892] [serial = 1600] [outer = 0x7fd8a8549800] 20:10:24 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:24 INFO - document served over http requires an https 20:10:24 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:24 INFO - delivery method with no-redirect and when 20:10:24 INFO - the target request is cross-origin. 20:10:24 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1176ms 20:10:24 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:10:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addd0800 == 55 [pid = 8892] [id = 571] 20:10:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 105 (0x7fd8aa567c00) [pid = 8892] [serial = 1601] [outer = (nil)] 20:10:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 106 (0x7fd8ad75cc00) [pid = 8892] [serial = 1602] [outer = 0x7fd8aa567c00] 20:10:24 INFO - PROCESS | 8892 | 1459566624947 Marionette INFO loaded listener.js 20:10:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 107 (0x7fd8af35c800) [pid = 8892] [serial = 1603] [outer = 0x7fd8aa567c00] 20:10:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6cf800 == 56 [pid = 8892] [id = 572] 20:10:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 108 (0x7fd8adc9c400) [pid = 8892] [serial = 1604] [outer = (nil)] 20:10:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 109 (0x7fd8af358000) [pid = 8892] [serial = 1605] [outer = 0x7fd8adc9c400] 20:10:25 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:25 INFO - document served over http requires an https 20:10:25 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:25 INFO - delivery method with swap-origin-redirect and when 20:10:25 INFO - the target request is cross-origin. 20:10:25 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1024ms 20:10:25 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:10:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6d5800 == 57 [pid = 8892] [id = 573] 20:10:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 110 (0x7fd8a47c2c00) [pid = 8892] [serial = 1606] [outer = (nil)] 20:10:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 111 (0x7fd8aa95c400) [pid = 8892] [serial = 1607] [outer = 0x7fd8a47c2c00] 20:10:26 INFO - PROCESS | 8892 | 1459566626018 Marionette INFO loaded listener.js 20:10:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 112 (0x7fd8af8e3400) [pid = 8892] [serial = 1608] [outer = 0x7fd8a47c2c00] 20:10:26 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:26 INFO - document served over http requires an https 20:10:26 INFO - sub-resource via script-tag using the meta-referrer 20:10:26 INFO - delivery method with keep-origin-redirect and when 20:10:26 INFO - the target request is cross-origin. 20:10:26 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1224ms 20:10:26 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html 20:10:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78bf800 == 58 [pid = 8892] [id = 574] 20:10:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 113 (0x7fd8a6986000) [pid = 8892] [serial = 1609] [outer = (nil)] 20:10:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 114 (0x7fd8a6b8ec00) [pid = 8892] [serial = 1610] [outer = 0x7fd8a6986000] 20:10:27 INFO - PROCESS | 8892 | 1459566627401 Marionette INFO loaded listener.js 20:10:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 115 (0x7fd8a8eadc00) [pid = 8892] [serial = 1611] [outer = 0x7fd8a6986000] 20:10:28 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:28 INFO - document served over http requires an https 20:10:28 INFO - sub-resource via script-tag using the meta-referrer 20:10:28 INFO - delivery method with no-redirect and when 20:10:28 INFO - the target request is cross-origin. 20:10:28 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html | took 1229ms 20:10:28 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:10:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbd8800 == 59 [pid = 8892] [id = 575] 20:10:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 116 (0x7fd8a6b87c00) [pid = 8892] [serial = 1612] [outer = (nil)] 20:10:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 117 (0x7fd8aa56a000) [pid = 8892] [serial = 1613] [outer = 0x7fd8a6b87c00] 20:10:28 INFO - PROCESS | 8892 | 1459566628608 Marionette INFO loaded listener.js 20:10:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 118 (0x7fd8adb27400) [pid = 8892] [serial = 1614] [outer = 0x7fd8a6b87c00] 20:10:29 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:29 INFO - document served over http requires an https 20:10:29 INFO - sub-resource via script-tag using the meta-referrer 20:10:29 INFO - delivery method with swap-origin-redirect and when 20:10:29 INFO - the target request is cross-origin. 20:10:29 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1277ms 20:10:29 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:10:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affb0800 == 60 [pid = 8892] [id = 576] 20:10:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 119 (0x7fd8adfdd000) [pid = 8892] [serial = 1615] [outer = (nil)] 20:10:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 120 (0x7fd8ae2cb000) [pid = 8892] [serial = 1616] [outer = 0x7fd8adfdd000] 20:10:29 INFO - PROCESS | 8892 | 1459566629909 Marionette INFO loaded listener.js 20:10:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 121 (0x7fd8af8b2c00) [pid = 8892] [serial = 1617] [outer = 0x7fd8adfdd000] 20:10:30 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:30 INFO - document served over http requires an https 20:10:30 INFO - sub-resource via xhr-request using the meta-referrer 20:10:30 INFO - delivery method with keep-origin-redirect and when 20:10:30 INFO - the target request is cross-origin. 20:10:30 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1232ms 20:10:30 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html 20:10:31 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affcb800 == 61 [pid = 8892] [id = 577] 20:10:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 122 (0x7fd8ae273c00) [pid = 8892] [serial = 1618] [outer = (nil)] 20:10:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 123 (0x7fd8af8e9000) [pid = 8892] [serial = 1619] [outer = 0x7fd8ae273c00] 20:10:31 INFO - PROCESS | 8892 | 1459566631241 Marionette INFO loaded listener.js 20:10:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 124 (0x7fd8af946c00) [pid = 8892] [serial = 1620] [outer = 0x7fd8ae273c00] 20:10:32 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:32 INFO - document served over http requires an https 20:10:32 INFO - sub-resource via xhr-request using the meta-referrer 20:10:32 INFO - delivery method with no-redirect and when 20:10:32 INFO - the target request is cross-origin. 20:10:32 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1268ms 20:10:32 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:10:32 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0204000 == 62 [pid = 8892] [id = 578] 20:10:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 125 (0x7fd8af8b5800) [pid = 8892] [serial = 1621] [outer = (nil)] 20:10:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8af949000) [pid = 8892] [serial = 1622] [outer = 0x7fd8af8b5800] 20:10:32 INFO - PROCESS | 8892 | 1459566632434 Marionette INFO loaded listener.js 20:10:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8afb71400) [pid = 8892] [serial = 1623] [outer = 0x7fd8af8b5800] 20:10:33 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:33 INFO - document served over http requires an https 20:10:33 INFO - sub-resource via xhr-request using the meta-referrer 20:10:33 INFO - delivery method with swap-origin-redirect and when 20:10:33 INFO - the target request is cross-origin. 20:10:33 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1230ms 20:10:33 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:10:33 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0454800 == 63 [pid = 8892] [id = 579] 20:10:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8afb7c400) [pid = 8892] [serial = 1624] [outer = (nil)] 20:10:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8afb7ec00) [pid = 8892] [serial = 1625] [outer = 0x7fd8afb7c400] 20:10:33 INFO - PROCESS | 8892 | 1459566633673 Marionette INFO loaded listener.js 20:10:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8afdc9000) [pid = 8892] [serial = 1626] [outer = 0x7fd8afb7c400] 20:10:34 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:34 INFO - document served over http requires an http 20:10:34 INFO - sub-resource via fetch-request using the meta-referrer 20:10:34 INFO - delivery method with keep-origin-redirect and when 20:10:34 INFO - the target request is same-origin. 20:10:34 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1249ms 20:10:34 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html 20:10:34 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b09d2800 == 64 [pid = 8892] [id = 580] 20:10:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8afb7cc00) [pid = 8892] [serial = 1627] [outer = (nil)] 20:10:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8b0784000) [pid = 8892] [serial = 1628] [outer = 0x7fd8afb7cc00] 20:10:34 INFO - PROCESS | 8892 | 1459566634913 Marionette INFO loaded listener.js 20:10:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8b078f000) [pid = 8892] [serial = 1629] [outer = 0x7fd8afb7cc00] 20:10:35 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:35 INFO - document served over http requires an http 20:10:35 INFO - sub-resource via fetch-request using the meta-referrer 20:10:35 INFO - delivery method with no-redirect and when 20:10:35 INFO - the target request is same-origin. 20:10:35 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1122ms 20:10:35 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:10:35 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0ead800 == 65 [pid = 8892] [id = 581] 20:10:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8afb7d400) [pid = 8892] [serial = 1630] [outer = (nil)] 20:10:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8b0792400) [pid = 8892] [serial = 1631] [outer = 0x7fd8afb7d400] 20:10:36 INFO - PROCESS | 8892 | 1459566636057 Marionette INFO loaded listener.js 20:10:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8b07ce800) [pid = 8892] [serial = 1632] [outer = 0x7fd8afb7d400] 20:10:36 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:36 INFO - document served over http requires an http 20:10:36 INFO - sub-resource via fetch-request using the meta-referrer 20:10:36 INFO - delivery method with swap-origin-redirect and when 20:10:36 INFO - the target request is same-origin. 20:10:36 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1224ms 20:10:36 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:10:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0eca800 == 66 [pid = 8892] [id = 582] 20:10:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8b07cf800) [pid = 8892] [serial = 1633] [outer = (nil)] 20:10:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8b0b89000) [pid = 8892] [serial = 1634] [outer = 0x7fd8b07cf800] 20:10:37 INFO - PROCESS | 8892 | 1459566637291 Marionette INFO loaded listener.js 20:10:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8b0b94c00) [pid = 8892] [serial = 1635] [outer = 0x7fd8b07cf800] 20:10:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13cf800 == 67 [pid = 8892] [id = 583] 20:10:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8b14e0400) [pid = 8892] [serial = 1636] [outer = (nil)] 20:10:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8b0b8d000) [pid = 8892] [serial = 1637] [outer = 0x7fd8b14e0400] 20:10:38 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:38 INFO - document served over http requires an http 20:10:38 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:38 INFO - delivery method with keep-origin-redirect and when 20:10:38 INFO - the target request is same-origin. 20:10:38 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1332ms 20:10:38 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:10:38 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13e0000 == 68 [pid = 8892] [id = 584] 20:10:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8adb27c00) [pid = 8892] [serial = 1638] [outer = (nil)] 20:10:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8b0b96400) [pid = 8892] [serial = 1639] [outer = 0x7fd8adb27c00] 20:10:38 INFO - PROCESS | 8892 | 1459566638650 Marionette INFO loaded listener.js 20:10:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8b14ef400) [pid = 8892] [serial = 1640] [outer = 0x7fd8adb27c00] 20:10:39 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b277c800 == 69 [pid = 8892] [id = 585] 20:10:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8b169ec00) [pid = 8892] [serial = 1641] [outer = (nil)] 20:10:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8b14edc00) [pid = 8892] [serial = 1642] [outer = 0x7fd8b169ec00] 20:10:39 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:39 INFO - document served over http requires an http 20:10:39 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:39 INFO - delivery method with no-redirect and when 20:10:39 INFO - the target request is same-origin. 20:10:39 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1273ms 20:10:39 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:10:39 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2acd800 == 70 [pid = 8892] [id = 586] 20:10:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8a53c2c00) [pid = 8892] [serial = 1643] [outer = (nil)] 20:10:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8b16d4800) [pid = 8892] [serial = 1644] [outer = 0x7fd8a53c2c00] 20:10:39 INFO - PROCESS | 8892 | 1459566639989 Marionette INFO loaded listener.js 20:10:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8b18b6800) [pid = 8892] [serial = 1645] [outer = 0x7fd8a53c2c00] 20:10:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e1a000 == 71 [pid = 8892] [id = 587] 20:10:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8b1b25c00) [pid = 8892] [serial = 1646] [outer = (nil)] 20:10:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8b18b7400) [pid = 8892] [serial = 1647] [outer = 0x7fd8b1b25c00] 20:10:40 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:40 INFO - document served over http requires an http 20:10:40 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:40 INFO - delivery method with swap-origin-redirect and when 20:10:40 INFO - the target request is same-origin. 20:10:40 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1375ms 20:10:40 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:10:41 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e2d800 == 72 [pid = 8892] [id = 588] 20:10:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8b07d0800) [pid = 8892] [serial = 1648] [outer = (nil)] 20:10:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8b1b27c00) [pid = 8892] [serial = 1649] [outer = 0x7fd8b07d0800] 20:10:41 INFO - PROCESS | 8892 | 1459566641345 Marionette INFO loaded listener.js 20:10:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8b1b31c00) [pid = 8892] [serial = 1650] [outer = 0x7fd8b07d0800] 20:10:42 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:42 INFO - document served over http requires an http 20:10:42 INFO - sub-resource via script-tag using the meta-referrer 20:10:42 INFO - delivery method with keep-origin-redirect and when 20:10:42 INFO - the target request is same-origin. 20:10:42 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1234ms 20:10:42 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html 20:10:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b336b000 == 73 [pid = 8892] [id = 589] 20:10:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8b14e1c00) [pid = 8892] [serial = 1651] [outer = (nil)] 20:10:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8b28db800) [pid = 8892] [serial = 1652] [outer = 0x7fd8b14e1c00] 20:10:42 INFO - PROCESS | 8892 | 1459566642542 Marionette INFO loaded listener.js 20:10:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8b2d12800) [pid = 8892] [serial = 1653] [outer = 0x7fd8b14e1c00] 20:10:44 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:44 INFO - document served over http requires an http 20:10:44 INFO - sub-resource via script-tag using the meta-referrer 20:10:44 INFO - delivery method with no-redirect and when 20:10:44 INFO - the target request is same-origin. 20:10:44 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html | took 2283ms 20:10:44 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:10:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab90000 == 74 [pid = 8892] [id = 590] 20:10:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8a8556800) [pid = 8892] [serial = 1654] [outer = (nil)] 20:10:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8ad75d000) [pid = 8892] [serial = 1655] [outer = 0x7fd8a8556800] 20:10:44 INFO - PROCESS | 8892 | 1459566644877 Marionette INFO loaded listener.js 20:10:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8b1b2e400) [pid = 8892] [serial = 1656] [outer = 0x7fd8a8556800] 20:10:46 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:46 INFO - document served over http requires an http 20:10:46 INFO - sub-resource via script-tag using the meta-referrer 20:10:46 INFO - delivery method with swap-origin-redirect and when 20:10:46 INFO - the target request is same-origin. 20:10:46 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1683ms 20:10:46 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:10:46 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d59800 == 75 [pid = 8892] [id = 591] 20:10:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8a6e26400) [pid = 8892] [serial = 1657] [outer = (nil)] 20:10:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8a75aa000) [pid = 8892] [serial = 1658] [outer = 0x7fd8a6e26400] 20:10:46 INFO - PROCESS | 8892 | 1459566646645 Marionette INFO loaded listener.js 20:10:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8a8eaf800) [pid = 8892] [serial = 1659] [outer = 0x7fd8a6e26400] 20:10:47 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:47 INFO - document served over http requires an http 20:10:47 INFO - sub-resource via xhr-request using the meta-referrer 20:10:47 INFO - delivery method with keep-origin-redirect and when 20:10:47 INFO - the target request is same-origin. 20:10:47 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1333ms 20:10:47 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html 20:10:47 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ac6800 == 76 [pid = 8892] [id = 592] 20:10:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8a75a7000) [pid = 8892] [serial = 1660] [outer = (nil)] 20:10:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8a780f400) [pid = 8892] [serial = 1661] [outer = 0x7fd8a75a7000] 20:10:47 INFO - PROCESS | 8892 | 1459566647904 Marionette INFO loaded listener.js 20:10:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8a9e1e800) [pid = 8892] [serial = 1662] [outer = 0x7fd8a75a7000] 20:10:48 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:48 INFO - document served over http requires an http 20:10:48 INFO - sub-resource via xhr-request using the meta-referrer 20:10:48 INFO - delivery method with no-redirect and when 20:10:48 INFO - the target request is same-origin. 20:10:48 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1225ms 20:10:48 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ace000 == 75 [pid = 8892] [id = 506] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa59b000 == 74 [pid = 8892] [id = 515] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a700e800 == 73 [pid = 8892] [id = 507] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78d1000 == 72 [pid = 8892] [id = 509] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6c4800 == 71 [pid = 8892] [id = 522] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa506800 == 70 [pid = 8892] [id = 514] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a519e000 == 69 [pid = 8892] [id = 505] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5cb000 == 68 [pid = 8892] [id = 516] 20:10:48 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addd7000 == 67 [pid = 8892] [id = 519] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6cf800 == 66 [pid = 8892] [id = 572] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addc5800 == 65 [pid = 8892] [id = 570] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbed000 == 64 [pid = 8892] [id = 568] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adeb6800 == 63 [pid = 8892] [id = 557] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addc3800 == 62 [pid = 8892] [id = 555] 20:10:49 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ad8e4000 == 61 [pid = 8892] [id = 553] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8aa7e2c00) [pid = 8892] [serial = 1446] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8aa4db400) [pid = 8892] [serial = 1443] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8a82e4400) [pid = 8892] [serial = 1527] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8a780a400) [pid = 8892] [serial = 1440] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8a6b8a000) [pid = 8892] [serial = 1519] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8ae281c00) [pid = 8892] [serial = 1464] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8adfe0400) [pid = 8892] [serial = 1461] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8adfd5c00) [pid = 8892] [serial = 1458] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8af94ec00) [pid = 8892] [serial = 1472] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8af355400) [pid = 8892] [serial = 1467] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8b14e3400) [pid = 8892] [serial = 1485] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8b07c4c00) [pid = 8892] [serial = 1482] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8afdc2800) [pid = 8892] [serial = 1477] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8b169d000) [pid = 8892] [serial = 1488] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8b5d4b800) [pid = 8892] [serial = 1503] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8b3386400) [pid = 8892] [serial = 1500] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8b6cd0400) [pid = 8892] [serial = 1509] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8b66d2400) [pid = 8892] [serial = 1506] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8a7806400) [pid = 8892] [serial = 1530] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8a75aac00) [pid = 8892] [serial = 1524] [outer = (nil)] [url = about:blank] 20:10:49 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d7a000 == 62 [pid = 8892] [id = 593] 20:10:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8a6b8f800) [pid = 8892] [serial = 1663] [outer = (nil)] 20:10:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8a7806400) [pid = 8892] [serial = 1664] [outer = 0x7fd8a6b8f800] 20:10:49 INFO - PROCESS | 8892 | 1459566649411 Marionette INFO loaded listener.js 20:10:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8aa7eac00) [pid = 8892] [serial = 1665] [outer = 0x7fd8a6b8f800] 20:10:50 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:50 INFO - document served over http requires an http 20:10:50 INFO - sub-resource via xhr-request using the meta-referrer 20:10:50 INFO - delivery method with swap-origin-redirect and when 20:10:50 INFO - the target request is same-origin. 20:10:50 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1334ms 20:10:50 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:10:50 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78c0000 == 63 [pid = 8892] [id = 594] 20:10:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8a6b93000) [pid = 8892] [serial = 1666] [outer = (nil)] 20:10:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8aa955800) [pid = 8892] [serial = 1667] [outer = 0x7fd8a6b93000] 20:10:50 INFO - PROCESS | 8892 | 1459566650418 Marionette INFO loaded listener.js 20:10:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8ad761c00) [pid = 8892] [serial = 1668] [outer = 0x7fd8a6b93000] 20:10:51 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:51 INFO - document served over http requires an https 20:10:51 INFO - sub-resource via fetch-request using the meta-referrer 20:10:51 INFO - delivery method with keep-origin-redirect and when 20:10:51 INFO - the target request is same-origin. 20:10:51 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 976ms 20:10:51 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html 20:10:51 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa506800 == 64 [pid = 8892] [id = 595] 20:10:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8a8ea3000) [pid = 8892] [serial = 1669] [outer = (nil)] 20:10:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8ad75a000) [pid = 8892] [serial = 1670] [outer = 0x7fd8a8ea3000] 20:10:51 INFO - PROCESS | 8892 | 1459566651428 Marionette INFO loaded listener.js 20:10:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8adca9800) [pid = 8892] [serial = 1671] [outer = 0x7fd8a8ea3000] 20:10:52 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:52 INFO - document served over http requires an https 20:10:52 INFO - sub-resource via fetch-request using the meta-referrer 20:10:52 INFO - delivery method with no-redirect and when 20:10:52 INFO - the target request is same-origin. 20:10:52 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1072ms 20:10:52 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:10:52 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5a6000 == 65 [pid = 8892] [id = 596] 20:10:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8ae057c00) [pid = 8892] [serial = 1672] [outer = (nil)] 20:10:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8ae281400) [pid = 8892] [serial = 1673] [outer = 0x7fd8ae057c00] 20:10:52 INFO - PROCESS | 8892 | 1459566652460 Marionette INFO loaded listener.js 20:10:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8af355400) [pid = 8892] [serial = 1674] [outer = 0x7fd8ae057c00] 20:10:53 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:53 INFO - document served over http requires an https 20:10:53 INFO - sub-resource via fetch-request using the meta-referrer 20:10:53 INFO - delivery method with swap-origin-redirect and when 20:10:53 INFO - the target request is same-origin. 20:10:53 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1041ms 20:10:53 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:10:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aaba4000 == 66 [pid = 8892] [id = 597] 20:10:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8ae27bc00) [pid = 8892] [serial = 1675] [outer = (nil)] 20:10:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8af35d800) [pid = 8892] [serial = 1676] [outer = 0x7fd8ae27bc00] 20:10:53 INFO - PROCESS | 8892 | 1459566653487 Marionette INFO loaded listener.js 20:10:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8af8e9c00) [pid = 8892] [serial = 1677] [outer = 0x7fd8ae27bc00] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8aa567c00) [pid = 8892] [serial = 1601] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8adc9c400) [pid = 8892] [serial = 1604] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8a8549800) [pid = 8892] [serial = 1599] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566624464] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8aa7ecc00) [pid = 8892] [serial = 1588] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8a47c6000) [pid = 8892] [serial = 1579] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8ae278c00) [pid = 8892] [serial = 1596] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8a4f86c00) [pid = 8892] [serial = 1582] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8aa4cf000) [pid = 8892] [serial = 1585] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8af357c00) [pid = 8892] [serial = 1594] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8a47c7400) [pid = 8892] [serial = 1576] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8ae05e800) [pid = 8892] [serial = 1591] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8adb23800) [pid = 8892] [serial = 1562] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8ad756c00) [pid = 8892] [serial = 1557] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566608037] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8ad730000) [pid = 8892] [serial = 1552] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8a47c5400) [pid = 8892] [serial = 1531] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8ad75cc00) [pid = 8892] [serial = 1602] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8af358000) [pid = 8892] [serial = 1605] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8a8556400) [pid = 8892] [serial = 1583] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8af358c00) [pid = 8892] [serial = 1597] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8ae2c3400) [pid = 8892] [serial = 1595] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8a4f83400) [pid = 8892] [serial = 1535] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8ad73a000) [pid = 8892] [serial = 1558] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566608037] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8a6984c00) [pid = 8892] [serial = 1580] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8aa7ea800) [pid = 8892] [serial = 1553] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8a53be800) [pid = 8892] [serial = 1577] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8ad75ec00) [pid = 8892] [serial = 1563] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8ae27fc00) [pid = 8892] [serial = 1592] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8aa95f400) [pid = 8892] [serial = 1555] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8aa56b000) [pid = 8892] [serial = 1547] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8adca8400) [pid = 8892] [serial = 1568] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8aa7db000) [pid = 8892] [serial = 1586] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8a9ab5400) [pid = 8892] [serial = 1600] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566624464] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8ad764000) [pid = 8892] [serial = 1589] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8ad759400) [pid = 8892] [serial = 1560] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8a9aaf800) [pid = 8892] [serial = 1541] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8a75a0c00) [pid = 8892] [serial = 1538] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 124 (0x7fd8ae059800) [pid = 8892] [serial = 1574] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 123 (0x7fd8a47d1400) [pid = 8892] [serial = 1571] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 122 (0x7fd8aa4da800) [pid = 8892] [serial = 1544] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 121 (0x7fd8aa7eb400) [pid = 8892] [serial = 1550] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 120 (0x7fd8adb24c00) [pid = 8892] [serial = 1565] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 119 (0x7fd8a6b92000) [pid = 8892] [serial = 1578] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 118 (0x7fd8a9aac400) [pid = 8892] [serial = 1533] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | --DOMWINDOW == 117 (0x7fd8a8ea4000) [pid = 8892] [serial = 1581] [outer = (nil)] [url = about:blank] 20:10:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5d2800 == 67 [pid = 8892] [id = 598] 20:10:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 118 (0x7fd8a6b92000) [pid = 8892] [serial = 1678] [outer = (nil)] 20:10:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 119 (0x7fd8a8ea4000) [pid = 8892] [serial = 1679] [outer = 0x7fd8a6b92000] 20:10:54 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:54 INFO - document served over http requires an https 20:10:54 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:54 INFO - delivery method with keep-origin-redirect and when 20:10:54 INFO - the target request is same-origin. 20:10:54 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1374ms 20:10:54 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:10:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ae6800 == 68 [pid = 8892] [id = 599] 20:10:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 120 (0x7fd8a9aad000) [pid = 8892] [serial = 1680] [outer = (nil)] 20:10:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 121 (0x7fd8ad730000) [pid = 8892] [serial = 1681] [outer = 0x7fd8a9aad000] 20:10:54 INFO - PROCESS | 8892 | 1459566654876 Marionette INFO loaded listener.js 20:10:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 122 (0x7fd8af8a8400) [pid = 8892] [serial = 1682] [outer = 0x7fd8a9aad000] 20:10:55 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addc9000 == 69 [pid = 8892] [id = 600] 20:10:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 123 (0x7fd8af8b4000) [pid = 8892] [serial = 1683] [outer = (nil)] 20:10:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 124 (0x7fd8af358000) [pid = 8892] [serial = 1684] [outer = 0x7fd8af8b4000] 20:10:55 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:55 INFO - document served over http requires an https 20:10:55 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:55 INFO - delivery method with no-redirect and when 20:10:55 INFO - the target request is same-origin. 20:10:55 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1086ms 20:10:55 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:10:55 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addd6000 == 70 [pid = 8892] [id = 601] 20:10:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 125 (0x7fd8a8556400) [pid = 8892] [serial = 1685] [outer = (nil)] 20:10:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8af358c00) [pid = 8892] [serial = 1686] [outer = 0x7fd8a8556400] 20:10:55 INFO - PROCESS | 8892 | 1459566655977 Marionette INFO loaded listener.js 20:10:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8afb7ac00) [pid = 8892] [serial = 1687] [outer = 0x7fd8a8556400] 20:10:56 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a51a5000 == 71 [pid = 8892] [id = 602] 20:10:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a6e20400) [pid = 8892] [serial = 1688] [outer = (nil)] 20:10:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a53c6800) [pid = 8892] [serial = 1689] [outer = 0x7fd8a6e20400] 20:10:57 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:57 INFO - document served over http requires an https 20:10:57 INFO - sub-resource via iframe-tag using the meta-referrer 20:10:57 INFO - delivery method with swap-origin-redirect and when 20:10:57 INFO - the target request is same-origin. 20:10:57 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1425ms 20:10:57 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:10:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ccf800 == 72 [pid = 8892] [id = 603] 20:10:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a780d000) [pid = 8892] [serial = 1690] [outer = (nil)] 20:10:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8a8eac800) [pid = 8892] [serial = 1691] [outer = 0x7fd8a780d000] 20:10:57 INFO - PROCESS | 8892 | 1459566657735 Marionette INFO loaded listener.js 20:10:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8aa7e4000) [pid = 8892] [serial = 1692] [outer = 0x7fd8a780d000] 20:10:58 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:58 INFO - document served over http requires an https 20:10:58 INFO - sub-resource via script-tag using the meta-referrer 20:10:58 INFO - delivery method with keep-origin-redirect and when 20:10:58 INFO - the target request is same-origin. 20:10:58 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1432ms 20:10:58 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html 20:10:58 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adeb0000 == 73 [pid = 8892] [id = 604] 20:10:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8a82dd000) [pid = 8892] [serial = 1693] [outer = (nil)] 20:10:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8ad72d800) [pid = 8892] [serial = 1694] [outer = 0x7fd8a82dd000] 20:10:59 INFO - PROCESS | 8892 | 1459566659030 Marionette INFO loaded listener.js 20:10:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8ae275c00) [pid = 8892] [serial = 1695] [outer = 0x7fd8a82dd000] 20:10:59 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:10:59 INFO - document served over http requires an https 20:10:59 INFO - sub-resource via script-tag using the meta-referrer 20:10:59 INFO - delivery method with no-redirect and when 20:10:59 INFO - the target request is same-origin. 20:10:59 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html | took 1226ms 20:10:59 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:11:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3e1800 == 74 [pid = 8892] [id = 605] 20:11:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8aa4d5c00) [pid = 8892] [serial = 1696] [outer = (nil)] 20:11:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8af94cc00) [pid = 8892] [serial = 1697] [outer = 0x7fd8aa4d5c00] 20:11:00 INFO - PROCESS | 8892 | 1459566660279 Marionette INFO loaded listener.js 20:11:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8afdc7c00) [pid = 8892] [serial = 1698] [outer = 0x7fd8aa4d5c00] 20:11:01 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:01 INFO - document served over http requires an https 20:11:01 INFO - sub-resource via script-tag using the meta-referrer 20:11:01 INFO - delivery method with swap-origin-redirect and when 20:11:01 INFO - the target request is same-origin. 20:11:01 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1279ms 20:11:01 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:11:01 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6df800 == 75 [pid = 8892] [id = 606] 20:11:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8af947800) [pid = 8892] [serial = 1699] [outer = (nil)] 20:11:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8b078dc00) [pid = 8892] [serial = 1700] [outer = 0x7fd8af947800] 20:11:01 INFO - PROCESS | 8892 | 1459566661549 Marionette INFO loaded listener.js 20:11:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8b16d6c00) [pid = 8892] [serial = 1701] [outer = 0x7fd8af947800] 20:11:02 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:02 INFO - document served over http requires an https 20:11:02 INFO - sub-resource via xhr-request using the meta-referrer 20:11:02 INFO - delivery method with keep-origin-redirect and when 20:11:02 INFO - the target request is same-origin. 20:11:02 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1226ms 20:11:02 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html 20:11:02 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0165000 == 76 [pid = 8892] [id = 607] 20:11:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8a4f8e000) [pid = 8892] [serial = 1702] [outer = (nil)] 20:11:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8b16d7800) [pid = 8892] [serial = 1703] [outer = 0x7fd8a4f8e000] 20:11:02 INFO - PROCESS | 8892 | 1459566662786 Marionette INFO loaded listener.js 20:11:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8b1b2bc00) [pid = 8892] [serial = 1704] [outer = 0x7fd8a4f8e000] 20:11:03 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:03 INFO - document served over http requires an https 20:11:03 INFO - sub-resource via xhr-request using the meta-referrer 20:11:03 INFO - delivery method with no-redirect and when 20:11:03 INFO - the target request is same-origin. 20:11:03 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1232ms 20:11:03 INFO - TEST-START | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:11:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2780000 == 77 [pid = 8892] [id = 608] 20:11:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8b2d13c00) [pid = 8892] [serial = 1705] [outer = (nil)] 20:11:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8b2d19000) [pid = 8892] [serial = 1706] [outer = 0x7fd8b2d13c00] 20:11:04 INFO - PROCESS | 8892 | 1459566664004 Marionette INFO loaded listener.js 20:11:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8b2ec5800) [pid = 8892] [serial = 1707] [outer = 0x7fd8b2d13c00] 20:11:04 INFO - TEST-PASS | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:04 INFO - document served over http requires an https 20:11:04 INFO - sub-resource via xhr-request using the meta-referrer 20:11:04 INFO - delivery method with swap-origin-redirect and when 20:11:04 INFO - the target request is same-origin. 20:11:04 INFO - TEST-OK | /referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1175ms 20:11:04 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:11:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b5deb800 == 78 [pid = 8892] [id = 609] 20:11:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8b2d16c00) [pid = 8892] [serial = 1708] [outer = (nil)] 20:11:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8b2ec8400) [pid = 8892] [serial = 1709] [outer = 0x7fd8b2d16c00] 20:11:05 INFO - PROCESS | 8892 | 1459566665174 Marionette INFO loaded listener.js 20:11:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8b337e800) [pid = 8892] [serial = 1710] [outer = 0x7fd8b2d16c00] 20:11:06 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:06 INFO - document served over http requires an http 20:11:06 INFO - sub-resource via fetch-request using the http-csp 20:11:06 INFO - delivery method with keep-origin-redirect and when 20:11:06 INFO - the target request is cross-origin. 20:11:06 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1273ms 20:11:06 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html 20:11:06 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6426000 == 79 [pid = 8892] [id = 610] 20:11:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8b2d1bc00) [pid = 8892] [serial = 1711] [outer = (nil)] 20:11:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8b3382c00) [pid = 8892] [serial = 1712] [outer = 0x7fd8b2d1bc00] 20:11:06 INFO - PROCESS | 8892 | 1459566666479 Marionette INFO loaded listener.js 20:11:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8b38c6000) [pid = 8892] [serial = 1713] [outer = 0x7fd8b2d1bc00] 20:11:07 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:07 INFO - document served over http requires an http 20:11:07 INFO - sub-resource via fetch-request using the http-csp 20:11:07 INFO - delivery method with no-redirect and when 20:11:07 INFO - the target request is cross-origin. 20:11:07 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1177ms 20:11:07 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:11:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6612000 == 80 [pid = 8892] [id = 611] 20:11:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8b2ecc000) [pid = 8892] [serial = 1714] [outer = (nil)] 20:11:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8b38c6c00) [pid = 8892] [serial = 1715] [outer = 0x7fd8b2ecc000] 20:11:07 INFO - PROCESS | 8892 | 1459566667653 Marionette INFO loaded listener.js 20:11:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8b5d49800) [pid = 8892] [serial = 1716] [outer = 0x7fd8b2ecc000] 20:11:08 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:08 INFO - document served over http requires an http 20:11:08 INFO - sub-resource via fetch-request using the http-csp 20:11:08 INFO - delivery method with swap-origin-redirect and when 20:11:08 INFO - the target request is cross-origin. 20:11:08 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1275ms 20:11:08 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:11:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b68df000 == 81 [pid = 8892] [id = 612] 20:11:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8b3387000) [pid = 8892] [serial = 1717] [outer = (nil)] 20:11:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8b5d4f400) [pid = 8892] [serial = 1718] [outer = 0x7fd8b3387000] 20:11:08 INFO - PROCESS | 8892 | 1459566668932 Marionette INFO loaded listener.js 20:11:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8b64eb400) [pid = 8892] [serial = 1719] [outer = 0x7fd8b3387000] 20:11:09 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b68e0800 == 82 [pid = 8892] [id = 613] 20:11:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8b66db800) [pid = 8892] [serial = 1720] [outer = (nil)] 20:11:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8b5d4a400) [pid = 8892] [serial = 1721] [outer = 0x7fd8b66db800] 20:11:09 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:09 INFO - document served over http requires an http 20:11:09 INFO - sub-resource via iframe-tag using the http-csp 20:11:09 INFO - delivery method with keep-origin-redirect and when 20:11:09 INFO - the target request is cross-origin. 20:11:09 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1325ms 20:11:09 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:11:10 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6c62800 == 83 [pid = 8892] [id = 614] 20:11:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8a4f89000) [pid = 8892] [serial = 1722] [outer = (nil)] 20:11:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8b66dc000) [pid = 8892] [serial = 1723] [outer = 0x7fd8a4f89000] 20:11:10 INFO - PROCESS | 8892 | 1459566670405 Marionette INFO loaded listener.js 20:11:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8b6d20c00) [pid = 8892] [serial = 1724] [outer = 0x7fd8a4f89000] 20:11:11 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6d37800 == 84 [pid = 8892] [id = 615] 20:11:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8b6d25c00) [pid = 8892] [serial = 1725] [outer = (nil)] 20:11:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8b6d2a000) [pid = 8892] [serial = 1726] [outer = 0x7fd8b6d25c00] 20:11:11 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:11 INFO - document served over http requires an http 20:11:11 INFO - sub-resource via iframe-tag using the http-csp 20:11:11 INFO - delivery method with no-redirect and when 20:11:11 INFO - the target request is cross-origin. 20:11:11 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1427ms 20:11:11 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:11:11 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6d44000 == 85 [pid = 8892] [id = 616] 20:11:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8b38d1c00) [pid = 8892] [serial = 1727] [outer = (nil)] 20:11:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8b6d26400) [pid = 8892] [serial = 1728] [outer = 0x7fd8b38d1c00] 20:11:11 INFO - PROCESS | 8892 | 1459566671732 Marionette INFO loaded listener.js 20:11:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8b78c2400) [pid = 8892] [serial = 1729] [outer = 0x7fd8b38d1c00] 20:11:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b78a3800 == 86 [pid = 8892] [id = 617] 20:11:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8b78ccc00) [pid = 8892] [serial = 1730] [outer = (nil)] 20:11:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8ad763c00) [pid = 8892] [serial = 1731] [outer = 0x7fd8b78ccc00] 20:11:12 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:12 INFO - document served over http requires an http 20:11:12 INFO - sub-resource via iframe-tag using the http-csp 20:11:12 INFO - delivery method with swap-origin-redirect and when 20:11:12 INFO - the target request is cross-origin. 20:11:12 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1286ms 20:11:12 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:11:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b78af000 == 87 [pid = 8892] [id = 618] 20:11:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8aa562400) [pid = 8892] [serial = 1732] [outer = (nil)] 20:11:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8b78d0000) [pid = 8892] [serial = 1733] [outer = 0x7fd8aa562400] 20:11:13 INFO - PROCESS | 8892 | 1459566673000 Marionette INFO loaded listener.js 20:11:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8b78ec000) [pid = 8892] [serial = 1734] [outer = 0x7fd8aa562400] 20:11:13 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:13 INFO - document served over http requires an http 20:11:13 INFO - sub-resource via script-tag using the http-csp 20:11:13 INFO - delivery method with keep-origin-redirect and when 20:11:13 INFO - the target request is cross-origin. 20:11:13 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1226ms 20:11:13 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html 20:11:14 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b8dbc800 == 88 [pid = 8892] [id = 619] 20:11:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8b64ee400) [pid = 8892] [serial = 1735] [outer = (nil)] 20:11:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8b78f0000) [pid = 8892] [serial = 1736] [outer = 0x7fd8b64ee400] 20:11:14 INFO - PROCESS | 8892 | 1459566674264 Marionette INFO loaded listener.js 20:11:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8b8c27c00) [pid = 8892] [serial = 1737] [outer = 0x7fd8b64ee400] 20:11:15 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:15 INFO - document served over http requires an http 20:11:15 INFO - sub-resource via script-tag using the http-csp 20:11:15 INFO - delivery method with no-redirect and when 20:11:15 INFO - the target request is cross-origin. 20:11:15 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html | took 1230ms 20:11:15 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:11:15 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba374000 == 89 [pid = 8892] [id = 620] 20:11:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8b8c25c00) [pid = 8892] [serial = 1738] [outer = (nil)] 20:11:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8b8d80800) [pid = 8892] [serial = 1739] [outer = 0x7fd8b8c25c00] 20:11:15 INFO - PROCESS | 8892 | 1459566675501 Marionette INFO loaded listener.js 20:11:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8b8e1c400) [pid = 8892] [serial = 1740] [outer = 0x7fd8b8c25c00] 20:11:17 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:17 INFO - document served over http requires an http 20:11:17 INFO - sub-resource via script-tag using the http-csp 20:11:17 INFO - delivery method with swap-origin-redirect and when 20:11:17 INFO - the target request is cross-origin. 20:11:17 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 2580ms 20:11:17 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:11:18 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6cca800 == 90 [pid = 8892] [id = 621] 20:11:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8a47d1400) [pid = 8892] [serial = 1741] [outer = (nil)] 20:11:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8a9ab1c00) [pid = 8892] [serial = 1742] [outer = 0x7fd8a47d1400] 20:11:18 INFO - PROCESS | 8892 | 1459566678143 Marionette INFO loaded listener.js 20:11:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b8c22c00) [pid = 8892] [serial = 1743] [outer = 0x7fd8a47d1400] 20:11:19 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:19 INFO - document served over http requires an http 20:11:19 INFO - sub-resource via xhr-request using the http-csp 20:11:19 INFO - delivery method with keep-origin-redirect and when 20:11:19 INFO - the target request is cross-origin. 20:11:19 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1676ms 20:11:19 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html 20:11:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab97800 == 91 [pid = 8892] [id = 622] 20:11:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8a6e20000) [pid = 8892] [serial = 1744] [outer = (nil)] 20:11:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8a8ea6c00) [pid = 8892] [serial = 1745] [outer = 0x7fd8a6e20000] 20:11:19 INFO - PROCESS | 8892 | 1459566679792 Marionette INFO loaded listener.js 20:11:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8aa7efc00) [pid = 8892] [serial = 1746] [outer = 0x7fd8a6e20000] 20:11:20 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:20 INFO - document served over http requires an http 20:11:20 INFO - sub-resource via xhr-request using the http-csp 20:11:20 INFO - delivery method with no-redirect and when 20:11:20 INFO - the target request is cross-origin. 20:11:20 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1254ms 20:11:20 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:11:21 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d88000 == 92 [pid = 8892] [id = 623] 20:11:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8a47d0800) [pid = 8892] [serial = 1747] [outer = (nil)] 20:11:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8a4f8c400) [pid = 8892] [serial = 1748] [outer = 0x7fd8a47d0800] 20:11:21 INFO - PROCESS | 8892 | 1459566681120 Marionette INFO loaded listener.js 20:11:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8aa7e2c00) [pid = 8892] [serial = 1749] [outer = 0x7fd8a47d0800] 20:11:21 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:21 INFO - document served over http requires an http 20:11:21 INFO - sub-resource via xhr-request using the http-csp 20:11:21 INFO - delivery method with swap-origin-redirect and when 20:11:21 INFO - the target request is cross-origin. 20:11:21 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1327ms 20:11:21 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:11:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5512800 == 93 [pid = 8892] [id = 624] 20:11:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8aa4d0800) [pid = 8892] [serial = 1750] [outer = (nil)] 20:11:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8aa7e7400) [pid = 8892] [serial = 1751] [outer = 0x7fd8aa4d0800] 20:11:22 INFO - PROCESS | 8892 | 1459566682407 Marionette INFO loaded listener.js 20:11:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8ae2c9c00) [pid = 8892] [serial = 1752] [outer = 0x7fd8aa4d0800] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a5529800 == 92 [pid = 8892] [id = 513] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addc9000 == 91 [pid = 8892] [id = 600] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ae6800 == 90 [pid = 8892] [id = 599] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5d2800 == 89 [pid = 8892] [id = 598] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aaba4000 == 88 [pid = 8892] [id = 597] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5a6000 == 87 [pid = 8892] [id = 596] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa506800 == 86 [pid = 8892] [id = 595] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78c0000 == 85 [pid = 8892] [id = 594] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d7a000 == 84 [pid = 8892] [id = 593] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ac6800 == 83 [pid = 8892] [id = 592] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a9d59800 == 82 [pid = 8892] [id = 591] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aab90000 == 81 [pid = 8892] [id = 590] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b336b000 == 80 [pid = 8892] [id = 589] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e2d800 == 79 [pid = 8892] [id = 588] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e1a000 == 78 [pid = 8892] [id = 587] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2acd800 == 77 [pid = 8892] [id = 586] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b277c800 == 76 [pid = 8892] [id = 585] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b13e0000 == 75 [pid = 8892] [id = 584] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b13cf800 == 74 [pid = 8892] [id = 583] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0eca800 == 73 [pid = 8892] [id = 582] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0ead800 == 72 [pid = 8892] [id = 581] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b09d2800 == 71 [pid = 8892] [id = 580] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0454800 == 70 [pid = 8892] [id = 579] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0204000 == 69 [pid = 8892] [id = 578] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affcb800 == 68 [pid = 8892] [id = 577] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affb0800 == 67 [pid = 8892] [id = 576] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd8800 == 66 [pid = 8892] [id = 575] 20:11:23 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78bf800 == 65 [pid = 8892] [id = 574] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8af35c800) [pid = 8892] [serial = 1603] [outer = (nil)] [url = about:blank] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8ae05e000) [pid = 8892] [serial = 1590] [outer = (nil)] [url = about:blank] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8ad737800) [pid = 8892] [serial = 1587] [outer = (nil)] [url = about:blank] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8af8a8c00) [pid = 8892] [serial = 1598] [outer = (nil)] [url = about:blank] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8aa4ce800) [pid = 8892] [serial = 1584] [outer = (nil)] [url = about:blank] 20:11:23 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8ae2cec00) [pid = 8892] [serial = 1593] [outer = (nil)] [url = about:blank] 20:11:23 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:23 INFO - document served over http requires an https 20:11:23 INFO - sub-resource via fetch-request using the http-csp 20:11:23 INFO - delivery method with keep-origin-redirect and when 20:11:23 INFO - the target request is cross-origin. 20:11:23 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1578ms 20:11:23 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html 20:11:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ac7800 == 66 [pid = 8892] [id = 625] 20:11:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8a6e24400) [pid = 8892] [serial = 1753] [outer = (nil)] 20:11:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8adb29800) [pid = 8892] [serial = 1754] [outer = 0x7fd8a6e24400] 20:11:23 INFO - PROCESS | 8892 | 1459566683774 Marionette INFO loaded listener.js 20:11:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8af8a9c00) [pid = 8892] [serial = 1755] [outer = 0x7fd8a6e24400] 20:11:24 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:24 INFO - document served over http requires an https 20:11:24 INFO - sub-resource via fetch-request using the http-csp 20:11:24 INFO - delivery method with no-redirect and when 20:11:24 INFO - the target request is cross-origin. 20:11:24 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1023ms 20:11:24 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:11:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa516000 == 67 [pid = 8892] [id = 626] 20:11:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8ae2c4000) [pid = 8892] [serial = 1756] [outer = (nil)] 20:11:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8af8e5000) [pid = 8892] [serial = 1757] [outer = 0x7fd8ae2c4000] 20:11:24 INFO - PROCESS | 8892 | 1459566684789 Marionette INFO loaded listener.js 20:11:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8afb79400) [pid = 8892] [serial = 1758] [outer = 0x7fd8ae2c4000] 20:11:25 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:25 INFO - document served over http requires an https 20:11:25 INFO - sub-resource via fetch-request using the http-csp 20:11:25 INFO - delivery method with swap-origin-redirect and when 20:11:25 INFO - the target request is cross-origin. 20:11:25 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1035ms 20:11:25 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:11:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a470d800 == 68 [pid = 8892] [id = 627] 20:11:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8af949c00) [pid = 8892] [serial = 1759] [outer = (nil)] 20:11:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8afdc8400) [pid = 8892] [serial = 1760] [outer = 0x7fd8af949c00] 20:11:25 INFO - PROCESS | 8892 | 1459566685949 Marionette INFO loaded listener.js 20:11:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8b14e3000) [pid = 8892] [serial = 1761] [outer = 0x7fd8af949c00] 20:11:26 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adddb800 == 69 [pid = 8892] [id = 628] 20:11:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8b14e7800) [pid = 8892] [serial = 1762] [outer = (nil)] 20:11:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8b07c6400) [pid = 8892] [serial = 1763] [outer = 0x7fd8b14e7800] 20:11:26 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:26 INFO - document served over http requires an https 20:11:26 INFO - sub-resource via iframe-tag using the http-csp 20:11:26 INFO - delivery method with keep-origin-redirect and when 20:11:26 INFO - the target request is cross-origin. 20:11:26 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1139ms 20:11:26 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:11:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6ad000 == 70 [pid = 8892] [id = 629] 20:11:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8a8eaac00) [pid = 8892] [serial = 1764] [outer = (nil)] 20:11:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8b14e8800) [pid = 8892] [serial = 1765] [outer = 0x7fd8a8eaac00] 20:11:27 INFO - PROCESS | 8892 | 1459566687074 Marionette INFO loaded listener.js 20:11:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8b18b9800) [pid = 8892] [serial = 1766] [outer = 0x7fd8a8eaac00] 20:11:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affcb800 == 71 [pid = 8892] [id = 630] 20:11:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8b1b26800) [pid = 8892] [serial = 1767] [outer = (nil)] 20:11:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8b1b2f400) [pid = 8892] [serial = 1768] [outer = 0x7fd8b1b26800] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8b1b25c00) [pid = 8892] [serial = 1646] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8b14e0400) [pid = 8892] [serial = 1636] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8b169ec00) [pid = 8892] [serial = 1641] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566639257] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8af8b4000) [pid = 8892] [serial = 1683] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566655484] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8a75a7000) [pid = 8892] [serial = 1660] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8a8ea3000) [pid = 8892] [serial = 1669] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8a6b8f800) [pid = 8892] [serial = 1663] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8a6b93000) [pid = 8892] [serial = 1666] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8a9aad000) [pid = 8892] [serial = 1680] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8a6e26400) [pid = 8892] [serial = 1657] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8a6b92000) [pid = 8892] [serial = 1678] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8ae057c00) [pid = 8892] [serial = 1672] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8ae27bc00) [pid = 8892] [serial = 1675] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8ad730000) [pid = 8892] [serial = 1681] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8af358000) [pid = 8892] [serial = 1684] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566655484] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8b1b27c00) [pid = 8892] [serial = 1649] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8b28db800) [pid = 8892] [serial = 1652] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8ad75d000) [pid = 8892] [serial = 1655] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8aa56a000) [pid = 8892] [serial = 1613] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8b18b7400) [pid = 8892] [serial = 1647] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8b16d4800) [pid = 8892] [serial = 1644] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8afb7ec00) [pid = 8892] [serial = 1625] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8b0784000) [pid = 8892] [serial = 1628] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8b0b8d000) [pid = 8892] [serial = 1637] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b0b89000) [pid = 8892] [serial = 1634] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8b14edc00) [pid = 8892] [serial = 1642] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566639257] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8b0b96400) [pid = 8892] [serial = 1639] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8af949000) [pid = 8892] [serial = 1622] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8a6b8ec00) [pid = 8892] [serial = 1610] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8aa955800) [pid = 8892] [serial = 1667] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8a780f400) [pid = 8892] [serial = 1661] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8ad75a000) [pid = 8892] [serial = 1670] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8af8e9000) [pid = 8892] [serial = 1619] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8a7806400) [pid = 8892] [serial = 1664] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8a75aa000) [pid = 8892] [serial = 1658] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8aa95c400) [pid = 8892] [serial = 1607] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8ae281400) [pid = 8892] [serial = 1673] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b0792400) [pid = 8892] [serial = 1631] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8a8ea4000) [pid = 8892] [serial = 1679] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8af35d800) [pid = 8892] [serial = 1676] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8ae2cb000) [pid = 8892] [serial = 1616] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8a9e1e800) [pid = 8892] [serial = 1662] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8aa7eac00) [pid = 8892] [serial = 1665] [outer = (nil)] [url = about:blank] 20:11:28 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8a8eaf800) [pid = 8892] [serial = 1659] [outer = (nil)] [url = about:blank] 20:11:28 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:28 INFO - document served over http requires an https 20:11:28 INFO - sub-resource via iframe-tag using the http-csp 20:11:28 INFO - delivery method with no-redirect and when 20:11:28 INFO - the target request is cross-origin. 20:11:28 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1578ms 20:11:28 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:11:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addca800 == 72 [pid = 8892] [id = 631] 20:11:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8a7806400) [pid = 8892] [serial = 1769] [outer = (nil)] 20:11:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8aa56a000) [pid = 8892] [serial = 1770] [outer = 0x7fd8a7806400] 20:11:28 INFO - PROCESS | 8892 | 1459566688756 Marionette INFO loaded listener.js 20:11:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8afb7ec00) [pid = 8892] [serial = 1771] [outer = 0x7fd8a7806400] 20:11:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af96a000 == 73 [pid = 8892] [id = 632] 20:11:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8b0b8a400) [pid = 8892] [serial = 1772] [outer = (nil)] 20:11:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8b18b2000) [pid = 8892] [serial = 1773] [outer = 0x7fd8b0b8a400] 20:11:29 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:29 INFO - document served over http requires an https 20:11:29 INFO - sub-resource via iframe-tag using the http-csp 20:11:29 INFO - delivery method with swap-origin-redirect and when 20:11:29 INFO - the target request is cross-origin. 20:11:29 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1076ms 20:11:29 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:11:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0453000 == 74 [pid = 8892] [id = 633] 20:11:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8a75aa000) [pid = 8892] [serial = 1774] [outer = (nil)] 20:11:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8aa958c00) [pid = 8892] [serial = 1775] [outer = 0x7fd8a75aa000] 20:11:29 INFO - PROCESS | 8892 | 1459566689731 Marionette INFO loaded listener.js 20:11:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8b28dcc00) [pid = 8892] [serial = 1776] [outer = 0x7fd8a75aa000] 20:11:30 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:30 INFO - document served over http requires an https 20:11:30 INFO - sub-resource via script-tag using the http-csp 20:11:30 INFO - delivery method with keep-origin-redirect and when 20:11:30 INFO - the target request is cross-origin. 20:11:30 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1229ms 20:11:30 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html 20:11:31 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85c1000 == 75 [pid = 8892] [id = 634] 20:11:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8a47c2800) [pid = 8892] [serial = 1777] [outer = (nil)] 20:11:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8a6e1dc00) [pid = 8892] [serial = 1778] [outer = 0x7fd8a47c2800] 20:11:31 INFO - PROCESS | 8892 | 1459566691165 Marionette INFO loaded listener.js 20:11:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8aa567800) [pid = 8892] [serial = 1779] [outer = 0x7fd8a47c2800] 20:11:32 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:32 INFO - document served over http requires an https 20:11:32 INFO - sub-resource via script-tag using the http-csp 20:11:32 INFO - delivery method with no-redirect and when 20:11:32 INFO - the target request is cross-origin. 20:11:32 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | took 1329ms 20:11:32 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:11:32 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6cf000 == 76 [pid = 8892] [id = 635] 20:11:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8a6986400) [pid = 8892] [serial = 1780] [outer = (nil)] 20:11:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8aa958400) [pid = 8892] [serial = 1781] [outer = 0x7fd8a6986400] 20:11:32 INFO - PROCESS | 8892 | 1459566692474 Marionette INFO loaded listener.js 20:11:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8af949000) [pid = 8892] [serial = 1782] [outer = 0x7fd8a6986400] 20:11:33 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:33 INFO - document served over http requires an https 20:11:33 INFO - sub-resource via script-tag using the http-csp 20:11:33 INFO - delivery method with swap-origin-redirect and when 20:11:33 INFO - the target request is cross-origin. 20:11:33 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1332ms 20:11:33 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:11:33 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13c6800 == 77 [pid = 8892] [id = 636] 20:11:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8adca4400) [pid = 8892] [serial = 1783] [outer = (nil)] 20:11:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8afdc0000) [pid = 8892] [serial = 1784] [outer = 0x7fd8adca4400] 20:11:33 INFO - PROCESS | 8892 | 1459566693812 Marionette INFO loaded listener.js 20:11:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8b28e0000) [pid = 8892] [serial = 1785] [outer = 0x7fd8adca4400] 20:11:34 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:34 INFO - document served over http requires an https 20:11:34 INFO - sub-resource via xhr-request using the http-csp 20:11:34 INFO - delivery method with keep-origin-redirect and when 20:11:34 INFO - the target request is cross-origin. 20:11:34 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1231ms 20:11:34 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html 20:11:35 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2782000 == 78 [pid = 8892] [id = 637] 20:11:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8ae052800) [pid = 8892] [serial = 1786] [outer = (nil)] 20:11:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8b2ec4800) [pid = 8892] [serial = 1787] [outer = 0x7fd8ae052800] 20:11:35 INFO - PROCESS | 8892 | 1459566695178 Marionette INFO loaded listener.js 20:11:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8b64ec000) [pid = 8892] [serial = 1788] [outer = 0x7fd8ae052800] 20:11:35 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:35 INFO - document served over http requires an https 20:11:35 INFO - sub-resource via xhr-request using the http-csp 20:11:35 INFO - delivery method with no-redirect and when 20:11:35 INFO - the target request is cross-origin. 20:11:35 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1088ms 20:11:35 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:11:36 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e35800 == 79 [pid = 8892] [id = 638] 20:11:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8af354800) [pid = 8892] [serial = 1789] [outer = (nil)] 20:11:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8b64f1400) [pid = 8892] [serial = 1790] [outer = 0x7fd8af354800] 20:11:36 INFO - PROCESS | 8892 | 1459566696442 Marionette INFO loaded listener.js 20:11:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8b6cdb400) [pid = 8892] [serial = 1791] [outer = 0x7fd8af354800] 20:11:37 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:37 INFO - document served over http requires an https 20:11:37 INFO - sub-resource via xhr-request using the http-csp 20:11:37 INFO - delivery method with swap-origin-redirect and when 20:11:37 INFO - the target request is cross-origin. 20:11:37 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1325ms 20:11:37 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:11:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6c59000 == 80 [pid = 8892] [id = 639] 20:11:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8b6ccf400) [pid = 8892] [serial = 1792] [outer = (nil)] 20:11:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b8d88c00) [pid = 8892] [serial = 1793] [outer = 0x7fd8b6ccf400] 20:11:37 INFO - PROCESS | 8892 | 1459566697775 Marionette INFO loaded listener.js 20:11:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8b8e21400) [pid = 8892] [serial = 1794] [outer = 0x7fd8b6ccf400] 20:11:38 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:38 INFO - document served over http requires an http 20:11:38 INFO - sub-resource via fetch-request using the http-csp 20:11:38 INFO - delivery method with keep-origin-redirect and when 20:11:38 INFO - the target request is same-origin. 20:11:38 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1278ms 20:11:38 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html 20:11:38 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba964800 == 81 [pid = 8892] [id = 640] 20:11:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8b78eb800) [pid = 8892] [serial = 1795] [outer = (nil)] 20:11:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8b8e2b400) [pid = 8892] [serial = 1796] [outer = 0x7fd8b78eb800] 20:11:39 INFO - PROCESS | 8892 | 1459566699054 Marionette INFO loaded listener.js 20:11:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8b8fa5800) [pid = 8892] [serial = 1797] [outer = 0x7fd8b78eb800] 20:11:39 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:39 INFO - document served over http requires an http 20:11:39 INFO - sub-resource via fetch-request using the http-csp 20:11:39 INFO - delivery method with no-redirect and when 20:11:39 INFO - the target request is same-origin. 20:11:39 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1228ms 20:11:39 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:11:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba97e800 == 82 [pid = 8892] [id = 641] 20:11:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8b8d7fc00) [pid = 8892] [serial = 1798] [outer = (nil)] 20:11:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8b8fa8c00) [pid = 8892] [serial = 1799] [outer = 0x7fd8b8d7fc00] 20:11:40 INFO - PROCESS | 8892 | 1459566700284 Marionette INFO loaded listener.js 20:11:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8ba26e800) [pid = 8892] [serial = 1800] [outer = 0x7fd8b8d7fc00] 20:11:41 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:41 INFO - document served over http requires an http 20:11:41 INFO - sub-resource via fetch-request using the http-csp 20:11:41 INFO - delivery method with swap-origin-redirect and when 20:11:41 INFO - the target request is same-origin. 20:11:41 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1275ms 20:11:41 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:11:41 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bc32d800 == 83 [pid = 8892] [id = 642] 20:11:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8b8e2a400) [pid = 8892] [serial = 1801] [outer = (nil)] 20:11:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8ba272800) [pid = 8892] [serial = 1802] [outer = 0x7fd8b8e2a400] 20:11:41 INFO - PROCESS | 8892 | 1459566701587 Marionette INFO loaded listener.js 20:11:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8ba984000) [pid = 8892] [serial = 1803] [outer = 0x7fd8b8e2a400] 20:11:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bcce2800 == 84 [pid = 8892] [id = 643] 20:11:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8ba98d400) [pid = 8892] [serial = 1804] [outer = (nil)] 20:11:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8ba985400) [pid = 8892] [serial = 1805] [outer = 0x7fd8ba98d400] 20:11:42 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:42 INFO - document served over http requires an http 20:11:42 INFO - sub-resource via iframe-tag using the http-csp 20:11:42 INFO - delivery method with keep-origin-redirect and when 20:11:42 INFO - the target request is same-origin. 20:11:42 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1323ms 20:11:42 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:11:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bcf76000 == 85 [pid = 8892] [id = 644] 20:11:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8a698e400) [pid = 8892] [serial = 1806] [outer = (nil)] 20:11:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8ba98ac00) [pid = 8892] [serial = 1807] [outer = 0x7fd8a698e400] 20:11:42 INFO - PROCESS | 8892 | 1459566702915 Marionette INFO loaded listener.js 20:11:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8bc362c00) [pid = 8892] [serial = 1808] [outer = 0x7fd8a698e400] 20:11:43 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bcf8a800 == 86 [pid = 8892] [id = 645] 20:11:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8bc36b800) [pid = 8892] [serial = 1809] [outer = (nil)] 20:11:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8bc36d800) [pid = 8892] [serial = 1810] [outer = 0x7fd8bc36b800] 20:11:43 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:43 INFO - document served over http requires an http 20:11:43 INFO - sub-resource via iframe-tag using the http-csp 20:11:43 INFO - delivery method with no-redirect and when 20:11:43 INFO - the target request is same-origin. 20:11:43 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1279ms 20:11:43 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:11:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd04b000 == 87 [pid = 8892] [id = 646] 20:11:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8b3381400) [pid = 8892] [serial = 1811] [outer = (nil)] 20:11:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8bc370000) [pid = 8892] [serial = 1812] [outer = 0x7fd8b3381400] 20:11:44 INFO - PROCESS | 8892 | 1459566704246 Marionette INFO loaded listener.js 20:11:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 203 (0x7fd8bcaaf800) [pid = 8892] [serial = 1813] [outer = 0x7fd8b3381400] 20:11:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd216800 == 88 [pid = 8892] [id = 647] 20:11:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 204 (0x7fd8bcae5400) [pid = 8892] [serial = 1814] [outer = (nil)] 20:11:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 205 (0x7fd8bcabb400) [pid = 8892] [serial = 1815] [outer = 0x7fd8bcae5400] 20:11:45 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:45 INFO - document served over http requires an http 20:11:45 INFO - sub-resource via iframe-tag using the http-csp 20:11:45 INFO - delivery method with swap-origin-redirect and when 20:11:45 INFO - the target request is same-origin. 20:11:45 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1485ms 20:11:45 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:11:45 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd59f000 == 89 [pid = 8892] [id = 648] 20:11:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 206 (0x7fd8a8ea4000) [pid = 8892] [serial = 1816] [outer = (nil)] 20:11:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 207 (0x7fd8bcae0800) [pid = 8892] [serial = 1817] [outer = 0x7fd8a8ea4000] 20:11:45 INFO - PROCESS | 8892 | 1459566705755 Marionette INFO loaded listener.js 20:11:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 208 (0x7fd8bcae4400) [pid = 8892] [serial = 1818] [outer = 0x7fd8a8ea4000] 20:11:46 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:46 INFO - document served over http requires an http 20:11:46 INFO - sub-resource via script-tag using the http-csp 20:11:46 INFO - delivery method with keep-origin-redirect and when 20:11:46 INFO - the target request is same-origin. 20:11:46 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1273ms 20:11:46 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html 20:11:46 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8be2d9000 == 90 [pid = 8892] [id = 649] 20:11:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 209 (0x7fd8bc368800) [pid = 8892] [serial = 1819] [outer = (nil)] 20:11:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 210 (0x7fd8bcfcdc00) [pid = 8892] [serial = 1820] [outer = 0x7fd8bc368800] 20:11:47 INFO - PROCESS | 8892 | 1459566707013 Marionette INFO loaded listener.js 20:11:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 211 (0x7fd8bcfd1400) [pid = 8892] [serial = 1821] [outer = 0x7fd8bc368800] 20:11:47 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:47 INFO - document served over http requires an http 20:11:47 INFO - sub-resource via script-tag using the http-csp 20:11:47 INFO - delivery method with no-redirect and when 20:11:47 INFO - the target request is same-origin. 20:11:47 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | took 1238ms 20:11:47 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:11:48 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8be5a2800 == 91 [pid = 8892] [id = 650] 20:11:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 212 (0x7fd8bcae6000) [pid = 8892] [serial = 1822] [outer = (nil)] 20:11:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 213 (0x7fd8bd2de000) [pid = 8892] [serial = 1823] [outer = 0x7fd8bcae6000] 20:11:48 INFO - PROCESS | 8892 | 1459566708239 Marionette INFO loaded listener.js 20:11:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 214 (0x7fd8bd4db400) [pid = 8892] [serial = 1824] [outer = 0x7fd8bcae6000] 20:11:48 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:48 INFO - document served over http requires an http 20:11:48 INFO - sub-resource via script-tag using the http-csp 20:11:48 INFO - delivery method with swap-origin-redirect and when 20:11:48 INFO - the target request is same-origin. 20:11:48 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1177ms 20:11:49 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:11:49 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1033800 == 92 [pid = 8892] [id = 651] 20:11:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 215 (0x7fd8bd2d4400) [pid = 8892] [serial = 1825] [outer = (nil)] 20:11:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 216 (0x7fd8bd4e1c00) [pid = 8892] [serial = 1826] [outer = 0x7fd8bd2d4400] 20:11:49 INFO - PROCESS | 8892 | 1459566709450 Marionette INFO loaded listener.js 20:11:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 217 (0x7fd8bd5c3000) [pid = 8892] [serial = 1827] [outer = 0x7fd8bd2d4400] 20:11:50 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:50 INFO - document served over http requires an http 20:11:50 INFO - sub-resource via xhr-request using the http-csp 20:11:50 INFO - delivery method with keep-origin-redirect and when 20:11:50 INFO - the target request is same-origin. 20:11:50 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1228ms 20:11:50 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html 20:11:50 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c104c000 == 93 [pid = 8892] [id = 652] 20:11:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 218 (0x7fd8bd4db000) [pid = 8892] [serial = 1828] [outer = (nil)] 20:11:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 219 (0x7fd8be1c9800) [pid = 8892] [serial = 1829] [outer = 0x7fd8bd4db000] 20:11:50 INFO - PROCESS | 8892 | 1459566710755 Marionette INFO loaded listener.js 20:11:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 220 (0x7fd8bf028800) [pid = 8892] [serial = 1830] [outer = 0x7fd8bd4db000] 20:11:51 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:51 INFO - document served over http requires an http 20:11:51 INFO - sub-resource via xhr-request using the http-csp 20:11:51 INFO - delivery method with no-redirect and when 20:11:51 INFO - the target request is same-origin. 20:11:51 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1273ms 20:11:51 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:11:51 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1078800 == 94 [pid = 8892] [id = 653] 20:11:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 221 (0x7fd8bd4db800) [pid = 8892] [serial = 1831] [outer = (nil)] 20:11:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 222 (0x7fd8bf029c00) [pid = 8892] [serial = 1832] [outer = 0x7fd8bd4db800] 20:11:52 INFO - PROCESS | 8892 | 1459566712004 Marionette INFO loaded listener.js 20:11:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 223 (0x7fd8bf07d800) [pid = 8892] [serial = 1833] [outer = 0x7fd8bd4db800] 20:11:52 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:52 INFO - document served over http requires an http 20:11:52 INFO - sub-resource via xhr-request using the http-csp 20:11:52 INFO - delivery method with swap-origin-redirect and when 20:11:52 INFO - the target request is same-origin. 20:11:52 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1283ms 20:11:52 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:11:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1383800 == 95 [pid = 8892] [id = 654] 20:11:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 224 (0x7fd8be56ac00) [pid = 8892] [serial = 1834] [outer = (nil)] 20:11:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 225 (0x7fd8bf07f000) [pid = 8892] [serial = 1835] [outer = 0x7fd8be56ac00] 20:11:53 INFO - PROCESS | 8892 | 1459566713301 Marionette INFO loaded listener.js 20:11:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 226 (0x7fd8bf0b6000) [pid = 8892] [serial = 1836] [outer = 0x7fd8be56ac00] 20:11:54 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:54 INFO - document served over http requires an https 20:11:54 INFO - sub-resource via fetch-request using the http-csp 20:11:54 INFO - delivery method with keep-origin-redirect and when 20:11:54 INFO - the target request is same-origin. 20:11:54 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1335ms 20:11:54 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html 20:11:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c16aa800 == 96 [pid = 8892] [id = 655] 20:11:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 227 (0x7fd8bf049000) [pid = 8892] [serial = 1837] [outer = (nil)] 20:11:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 228 (0x7fd8bf0b1c00) [pid = 8892] [serial = 1838] [outer = 0x7fd8bf049000] 20:11:54 INFO - PROCESS | 8892 | 1459566714588 Marionette INFO loaded listener.js 20:11:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 229 (0x7fd8c0e96000) [pid = 8892] [serial = 1839] [outer = 0x7fd8bf049000] 20:11:55 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:55 INFO - document served over http requires an https 20:11:55 INFO - sub-resource via fetch-request using the http-csp 20:11:55 INFO - delivery method with no-redirect and when 20:11:55 INFO - the target request is same-origin. 20:11:55 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1274ms 20:11:55 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:11:55 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1a8e000 == 97 [pid = 8892] [id = 656] 20:11:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 230 (0x7fd8c14a8400) [pid = 8892] [serial = 1840] [outer = (nil)] 20:11:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 231 (0x7fd8c14aa000) [pid = 8892] [serial = 1841] [outer = 0x7fd8c14a8400] 20:11:55 INFO - PROCESS | 8892 | 1459566715979 Marionette INFO loaded listener.js 20:11:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 232 (0x7fd8c14ae400) [pid = 8892] [serial = 1842] [outer = 0x7fd8c14a8400] 20:11:56 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:56 INFO - document served over http requires an https 20:11:56 INFO - sub-resource via fetch-request using the http-csp 20:11:56 INFO - delivery method with swap-origin-redirect and when 20:11:56 INFO - the target request is same-origin. 20:11:56 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1380ms 20:11:56 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:11:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1b0e800 == 98 [pid = 8892] [id = 657] 20:11:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 233 (0x7fd8bc7ce000) [pid = 8892] [serial = 1843] [outer = (nil)] 20:11:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 234 (0x7fd8c14ab800) [pid = 8892] [serial = 1844] [outer = 0x7fd8bc7ce000] 20:11:57 INFO - PROCESS | 8892 | 1459566717294 Marionette INFO loaded listener.js 20:11:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 235 (0x7fd8c1673400) [pid = 8892] [serial = 1845] [outer = 0x7fd8bc7ce000] 20:11:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1b22000 == 99 [pid = 8892] [id = 658] 20:11:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 236 (0x7fd8c167b400) [pid = 8892] [serial = 1846] [outer = (nil)] 20:11:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 237 (0x7fd8c14b5c00) [pid = 8892] [serial = 1847] [outer = 0x7fd8c167b400] 20:11:58 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:11:58 INFO - document served over http requires an https 20:11:58 INFO - sub-resource via iframe-tag using the http-csp 20:11:58 INFO - delivery method with keep-origin-redirect and when 20:11:58 INFO - the target request is same-origin. 20:11:58 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1431ms 20:11:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:11:58 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1bc7000 == 100 [pid = 8892] [id = 659] 20:11:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 238 (0x7fd8a8555800) [pid = 8892] [serial = 1848] [outer = (nil)] 20:11:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 239 (0x7fd8c1678400) [pid = 8892] [serial = 1849] [outer = 0x7fd8a8555800] 20:11:58 INFO - PROCESS | 8892 | 1459566718809 Marionette INFO loaded listener.js 20:11:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 240 (0x7fd8c1ca1c00) [pid = 8892] [serial = 1850] [outer = 0x7fd8a8555800] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a51a5000 == 99 [pid = 8892] [id = 602] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addd0800 == 98 [pid = 8892] [id = 571] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adead800 == 97 [pid = 8892] [id = 569] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6df800 == 96 [pid = 8892] [id = 606] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0165000 == 95 [pid = 8892] [id = 607] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2780000 == 94 [pid = 8892] [id = 608] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b5deb800 == 93 [pid = 8892] [id = 609] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6426000 == 92 [pid = 8892] [id = 610] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6612000 == 91 [pid = 8892] [id = 611] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b68df000 == 90 [pid = 8892] [id = 612] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b68e0800 == 89 [pid = 8892] [id = 613] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6c62800 == 88 [pid = 8892] [id = 614] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6d37800 == 87 [pid = 8892] [id = 615] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6d44000 == 86 [pid = 8892] [id = 616] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b78a3800 == 85 [pid = 8892] [id = 617] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b78af000 == 84 [pid = 8892] [id = 618] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b8dbc800 == 83 [pid = 8892] [id = 619] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba374000 == 82 [pid = 8892] [id = 620] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aab97800 == 81 [pid = 8892] [id = 622] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6cca800 == 80 [pid = 8892] [id = 621] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a85c0800 == 79 [pid = 8892] [id = 563] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a551a000 == 78 [pid = 8892] [id = 564] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d88000 == 77 [pid = 8892] [id = 623] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a5512800 == 76 [pid = 8892] [id = 624] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ac7800 == 75 [pid = 8892] [id = 625] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aab98000 == 74 [pid = 8892] [id = 567] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa518800 == 73 [pid = 8892] [id = 566] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa516000 == 72 [pid = 8892] [id = 626] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a7b7b000 == 71 [pid = 8892] [id = 565] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a470d800 == 70 [pid = 8892] [id = 627] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adddb800 == 69 [pid = 8892] [id = 628] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6ad000 == 68 [pid = 8892] [id = 629] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affcb800 == 67 [pid = 8892] [id = 630] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addca800 == 66 [pid = 8892] [id = 631] 20:12:01 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af96a000 == 65 [pid = 8892] [id = 632] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addd6000 == 64 [pid = 8892] [id = 601] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a85c1000 == 63 [pid = 8892] [id = 634] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6cf000 == 62 [pid = 8892] [id = 635] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b13c6800 == 61 [pid = 8892] [id = 636] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2782000 == 60 [pid = 8892] [id = 637] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e35800 == 59 [pid = 8892] [id = 638] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6c59000 == 58 [pid = 8892] [id = 639] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba964800 == 57 [pid = 8892] [id = 640] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba97e800 == 56 [pid = 8892] [id = 641] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bc32d800 == 55 [pid = 8892] [id = 642] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bcce2800 == 54 [pid = 8892] [id = 643] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bcf76000 == 53 [pid = 8892] [id = 644] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bcf8a800 == 52 [pid = 8892] [id = 645] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd04b000 == 51 [pid = 8892] [id = 646] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd216800 == 50 [pid = 8892] [id = 647] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd59f000 == 49 [pid = 8892] [id = 648] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8be2d9000 == 48 [pid = 8892] [id = 649] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8be5a2800 == 47 [pid = 8892] [id = 650] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1033800 == 46 [pid = 8892] [id = 651] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c104c000 == 45 [pid = 8892] [id = 652] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1078800 == 44 [pid = 8892] [id = 653] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1383800 == 43 [pid = 8892] [id = 654] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c16aa800 == 42 [pid = 8892] [id = 655] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1a8e000 == 41 [pid = 8892] [id = 656] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1b0e800 == 40 [pid = 8892] [id = 657] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1b22000 == 39 [pid = 8892] [id = 658] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a85b7000 == 38 [pid = 8892] [id = 511] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3e1800 == 37 [pid = 8892] [id = 605] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba680800 == 36 [pid = 8892] [id = 539] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affae000 == 35 [pid = 8892] [id = 524] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0453000 == 34 [pid = 8892] [id = 633] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ccf800 == 33 [pid = 8892] [id = 603] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aab94000 == 32 [pid = 8892] [id = 517] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3d3000 == 31 [pid = 8892] [id = 521] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adf83000 == 30 [pid = 8892] [id = 520] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af6d5800 == 29 [pid = 8892] [id = 573] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adeb0000 == 28 [pid = 8892] [id = 604] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0213800 == 27 [pid = 8892] [id = 526] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b09db000 == 26 [pid = 8892] [id = 528] 20:12:03 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbdf000 == 25 [pid = 8892] [id = 518] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 239 (0x7fd8af355400) [pid = 8892] [serial = 1674] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 238 (0x7fd8adca9800) [pid = 8892] [serial = 1671] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 237 (0x7fd8af8a8400) [pid = 8892] [serial = 1682] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 236 (0x7fd8af8e9c00) [pid = 8892] [serial = 1677] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 235 (0x7fd8af8e3400) [pid = 8892] [serial = 1608] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | --DOMWINDOW == 234 (0x7fd8ad761c00) [pid = 8892] [serial = 1668] [outer = (nil)] [url = about:blank] 20:12:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a470a800 == 26 [pid = 8892] [id = 660] 20:12:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 235 (0x7fd8a47cd800) [pid = 8892] [serial = 1851] [outer = (nil)] 20:12:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 236 (0x7fd8a4f8b800) [pid = 8892] [serial = 1852] [outer = 0x7fd8a47cd800] 20:12:04 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:04 INFO - document served over http requires an https 20:12:04 INFO - sub-resource via iframe-tag using the http-csp 20:12:04 INFO - delivery method with no-redirect and when 20:12:04 INFO - the target request is same-origin. 20:12:04 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 6201ms 20:12:04 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:12:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d95800 == 27 [pid = 8892] [id = 661] 20:12:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 237 (0x7fd8a53ba000) [pid = 8892] [serial = 1853] [outer = (nil)] 20:12:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 238 (0x7fd8a6988800) [pid = 8892] [serial = 1854] [outer = 0x7fd8a53ba000] 20:12:04 INFO - PROCESS | 8892 | 1459566724859 Marionette INFO loaded listener.js 20:12:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 239 (0x7fd8a6b8f800) [pid = 8892] [serial = 1855] [outer = 0x7fd8a53ba000] 20:12:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a51b8800 == 28 [pid = 8892] [id = 662] 20:12:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 240 (0x7fd8a6e1f800) [pid = 8892] [serial = 1856] [outer = (nil)] 20:12:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 241 (0x7fd8a6b88c00) [pid = 8892] [serial = 1857] [outer = 0x7fd8a6e1f800] 20:12:05 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:05 INFO - document served over http requires an https 20:12:05 INFO - sub-resource via iframe-tag using the http-csp 20:12:05 INFO - delivery method with swap-origin-redirect and when 20:12:05 INFO - the target request is same-origin. 20:12:05 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1127ms 20:12:05 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:12:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ae0000 == 29 [pid = 8892] [id = 663] 20:12:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 242 (0x7fd8a6e25000) [pid = 8892] [serial = 1858] [outer = (nil)] 20:12:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 243 (0x7fd8a759c800) [pid = 8892] [serial = 1859] [outer = 0x7fd8a6e25000] 20:12:05 INFO - PROCESS | 8892 | 1459566725914 Marionette INFO loaded listener.js 20:12:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 244 (0x7fd8a7805000) [pid = 8892] [serial = 1860] [outer = 0x7fd8a6e25000] 20:12:06 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:06 INFO - document served over http requires an https 20:12:06 INFO - sub-resource via script-tag using the http-csp 20:12:06 INFO - delivery method with keep-origin-redirect and when 20:12:06 INFO - the target request is same-origin. 20:12:06 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1280ms 20:12:06 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html 20:12:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78bf000 == 30 [pid = 8892] [id = 664] 20:12:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 245 (0x7fd8a4f81000) [pid = 8892] [serial = 1861] [outer = (nil)] 20:12:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 246 (0x7fd8a82dc800) [pid = 8892] [serial = 1862] [outer = 0x7fd8a4f81000] 20:12:07 INFO - PROCESS | 8892 | 1459566727300 Marionette INFO loaded listener.js 20:12:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 247 (0x7fd8a854dc00) [pid = 8892] [serial = 1863] [outer = 0x7fd8a4f81000] 20:12:08 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:08 INFO - document served over http requires an https 20:12:08 INFO - sub-resource via script-tag using the http-csp 20:12:08 INFO - delivery method with no-redirect and when 20:12:08 INFO - the target request is same-origin. 20:12:08 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | took 1179ms 20:12:08 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 246 (0x7fd8a6b87c00) [pid = 8892] [serial = 1612] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 245 (0x7fd8b8c25c00) [pid = 8892] [serial = 1738] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 244 (0x7fd8af8b5800) [pid = 8892] [serial = 1621] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 243 (0x7fd8b38d1c00) [pid = 8892] [serial = 1727] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 242 (0x7fd8b2d16c00) [pid = 8892] [serial = 1708] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 241 (0x7fd8afb7cc00) [pid = 8892] [serial = 1627] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 240 (0x7fd8a4f89000) [pid = 8892] [serial = 1722] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 239 (0x7fd8b07cf800) [pid = 8892] [serial = 1633] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 238 (0x7fd8a47d0800) [pid = 8892] [serial = 1747] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 237 (0x7fd8b07d0800) [pid = 8892] [serial = 1648] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 236 (0x7fd8a6e20400) [pid = 8892] [serial = 1688] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 235 (0x7fd8b66db800) [pid = 8892] [serial = 1720] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 234 (0x7fd8af947800) [pid = 8892] [serial = 1699] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 233 (0x7fd8a4f8e000) [pid = 8892] [serial = 1702] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 232 (0x7fd8ae273c00) [pid = 8892] [serial = 1618] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 231 (0x7fd8b0b8a400) [pid = 8892] [serial = 1772] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 230 (0x7fd8a6e20000) [pid = 8892] [serial = 1744] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 229 (0x7fd8b6d25c00) [pid = 8892] [serial = 1725] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566671025] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 228 (0x7fd8a6986000) [pid = 8892] [serial = 1609] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 227 (0x7fd8aa562400) [pid = 8892] [serial = 1732] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 226 (0x7fd8a8eaac00) [pid = 8892] [serial = 1764] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 225 (0x7fd8a53c2c00) [pid = 8892] [serial = 1643] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 224 (0x7fd8b14e1c00) [pid = 8892] [serial = 1651] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 223 (0x7fd8adfdd000) [pid = 8892] [serial = 1615] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 222 (0x7fd8b14e7800) [pid = 8892] [serial = 1762] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 221 (0x7fd8b64ee400) [pid = 8892] [serial = 1735] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 220 (0x7fd8b2ecc000) [pid = 8892] [serial = 1714] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 219 (0x7fd8b78ccc00) [pid = 8892] [serial = 1730] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 218 (0x7fd8a47d1400) [pid = 8892] [serial = 1741] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 217 (0x7fd8a6e24400) [pid = 8892] [serial = 1753] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 216 (0x7fd8afb7d400) [pid = 8892] [serial = 1630] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 215 (0x7fd8b5d50000) [pid = 8892] [serial = 1512] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 214 (0x7fd8a47c9c00) [pid = 8892] [serial = 1534] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 213 (0x7fd8a53bac00) [pid = 8892] [serial = 1537] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 212 (0x7fd8a6b90800) [pid = 8892] [serial = 1540] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 211 (0x7fd8a9aacc00) [pid = 8892] [serial = 1543] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 210 (0x7fd8aa4d1c00) [pid = 8892] [serial = 1546] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 209 (0x7fd8aa7ea000) [pid = 8892] [serial = 1549] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 208 (0x7fd8a4f8ec00) [pid = 8892] [serial = 1554] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 207 (0x7fd8aa7ea400) [pid = 8892] [serial = 1559] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 206 (0x7fd8ad734c00) [pid = 8892] [serial = 1564] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 205 (0x7fd8adca6800) [pid = 8892] [serial = 1567] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 204 (0x7fd8a47c3c00) [pid = 8892] [serial = 1570] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 203 (0x7fd8a47c5c00) [pid = 8892] [serial = 1573] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8a8556800) [pid = 8892] [serial = 1654] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8af949c00) [pid = 8892] [serial = 1759] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8aa4d0800) [pid = 8892] [serial = 1750] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8afb7c400) [pid = 8892] [serial = 1624] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8b2d13c00) [pid = 8892] [serial = 1705] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8b2d1bc00) [pid = 8892] [serial = 1711] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8b1b26800) [pid = 8892] [serial = 1767] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566687655] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8a47c2c00) [pid = 8892] [serial = 1606] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8a780d000) [pid = 8892] [serial = 1690] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8a75aa000) [pid = 8892] [serial = 1774] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8ae2c4000) [pid = 8892] [serial = 1756] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8adb27c00) [pid = 8892] [serial = 1638] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8a82dd000) [pid = 8892] [serial = 1693] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8aa4d5c00) [pid = 8892] [serial = 1696] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8a8556400) [pid = 8892] [serial = 1685] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unsafe-url/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8b3387000) [pid = 8892] [serial = 1717] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8a7806400) [pid = 8892] [serial = 1769] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8aa958c00) [pid = 8892] [serial = 1775] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8ad72d800) [pid = 8892] [serial = 1694] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8a8ea6c00) [pid = 8892] [serial = 1745] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8aa56a000) [pid = 8892] [serial = 1770] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8b18b2000) [pid = 8892] [serial = 1773] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8a9ab1c00) [pid = 8892] [serial = 1742] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8b38c6c00) [pid = 8892] [serial = 1715] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8af8e5000) [pid = 8892] [serial = 1757] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b78f0000) [pid = 8892] [serial = 1736] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8aa7e7400) [pid = 8892] [serial = 1751] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8b6d26400) [pid = 8892] [serial = 1728] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8ad763c00) [pid = 8892] [serial = 1731] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8af94cc00) [pid = 8892] [serial = 1697] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8b16d7800) [pid = 8892] [serial = 1703] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8b078dc00) [pid = 8892] [serial = 1700] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8b78d0000) [pid = 8892] [serial = 1733] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8b3382c00) [pid = 8892] [serial = 1712] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8b8d80800) [pid = 8892] [serial = 1739] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8a4f8c400) [pid = 8892] [serial = 1748] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8afdc8400) [pid = 8892] [serial = 1760] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8b07c6400) [pid = 8892] [serial = 1763] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b5d4f400) [pid = 8892] [serial = 1718] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8b5d4a400) [pid = 8892] [serial = 1721] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8b2d19000) [pid = 8892] [serial = 1706] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8b2ec8400) [pid = 8892] [serial = 1709] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8a8eac800) [pid = 8892] [serial = 1691] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8adb29800) [pid = 8892] [serial = 1754] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8af358c00) [pid = 8892] [serial = 1686] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8a53c6800) [pid = 8892] [serial = 1689] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8b14e8800) [pid = 8892] [serial = 1765] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8b1b2f400) [pid = 8892] [serial = 1768] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566687655] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8b66dc000) [pid = 8892] [serial = 1723] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8b6d2a000) [pid = 8892] [serial = 1726] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566671025] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8b78c4000) [pid = 8892] [serial = 1514] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8a53c4c00) [pid = 8892] [serial = 1536] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8a82dc000) [pid = 8892] [serial = 1539] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8a9e20c00) [pid = 8892] [serial = 1542] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8aa4da400) [pid = 8892] [serial = 1545] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8aa7dc400) [pid = 8892] [serial = 1548] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8aa957800) [pid = 8892] [serial = 1551] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8ad739400) [pid = 8892] [serial = 1556] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8ad763800) [pid = 8892] [serial = 1561] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8adc9b400) [pid = 8892] [serial = 1566] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8ae052c00) [pid = 8892] [serial = 1569] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8ae055000) [pid = 8892] [serial = 1572] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8ae281800) [pid = 8892] [serial = 1575] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8a8eadc00) [pid = 8892] [serial = 1611] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8adb27400) [pid = 8892] [serial = 1614] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8af8b2c00) [pid = 8892] [serial = 1617] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8af946c00) [pid = 8892] [serial = 1620] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8afb71400) [pid = 8892] [serial = 1623] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8afdc9000) [pid = 8892] [serial = 1626] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8b078f000) [pid = 8892] [serial = 1629] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8b07ce800) [pid = 8892] [serial = 1632] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8b0b94c00) [pid = 8892] [serial = 1635] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8b14ef400) [pid = 8892] [serial = 1640] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8b18b6800) [pid = 8892] [serial = 1645] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8b1b31c00) [pid = 8892] [serial = 1650] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8b2d12800) [pid = 8892] [serial = 1653] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8b1b2e400) [pid = 8892] [serial = 1656] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8b16d6c00) [pid = 8892] [serial = 1701] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 124 (0x7fd8b1b2bc00) [pid = 8892] [serial = 1704] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 123 (0x7fd8b2ec5800) [pid = 8892] [serial = 1707] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 122 (0x7fd8b8c22c00) [pid = 8892] [serial = 1743] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 121 (0x7fd8aa7efc00) [pid = 8892] [serial = 1746] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | --DOMWINDOW == 120 (0x7fd8aa7e2c00) [pid = 8892] [serial = 1749] [outer = (nil)] [url = about:blank] 20:12:10 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b81000 == 31 [pid = 8892] [id = 665] 20:12:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 121 (0x7fd8a47cdc00) [pid = 8892] [serial = 1864] [outer = (nil)] 20:12:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 122 (0x7fd8a4f8c400) [pid = 8892] [serial = 1865] [outer = 0x7fd8a47cdc00] 20:12:10 INFO - PROCESS | 8892 | 1459566730723 Marionette INFO loaded listener.js 20:12:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 123 (0x7fd8a82dd000) [pid = 8892] [serial = 1866] [outer = 0x7fd8a47cdc00] 20:12:11 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:11 INFO - document served over http requires an https 20:12:11 INFO - sub-resource via script-tag using the http-csp 20:12:11 INFO - delivery method with swap-origin-redirect and when 20:12:11 INFO - the target request is same-origin. 20:12:11 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 3232ms 20:12:11 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:12:11 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85cc000 == 32 [pid = 8892] [id = 666] 20:12:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 124 (0x7fd8a4f88800) [pid = 8892] [serial = 1867] [outer = (nil)] 20:12:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 125 (0x7fd8a8ea3800) [pid = 8892] [serial = 1868] [outer = 0x7fd8a4f88800] 20:12:11 INFO - PROCESS | 8892 | 1459566731696 Marionette INFO loaded listener.js 20:12:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8a9ab4800) [pid = 8892] [serial = 1869] [outer = 0x7fd8a4f88800] 20:12:12 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:12 INFO - document served over http requires an https 20:12:12 INFO - sub-resource via xhr-request using the http-csp 20:12:12 INFO - delivery method with keep-origin-redirect and when 20:12:12 INFO - the target request is same-origin. 20:12:12 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1126ms 20:12:12 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html 20:12:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a552a800 == 33 [pid = 8892] [id = 667] 20:12:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8a53bbc00) [pid = 8892] [serial = 1870] [outer = (nil)] 20:12:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a6e1b400) [pid = 8892] [serial = 1871] [outer = 0x7fd8a53bbc00] 20:12:12 INFO - PROCESS | 8892 | 1459566732902 Marionette INFO loaded listener.js 20:12:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a780a800) [pid = 8892] [serial = 1872] [outer = 0x7fd8a53bbc00] 20:12:13 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:13 INFO - document served over http requires an https 20:12:13 INFO - sub-resource via xhr-request using the http-csp 20:12:13 INFO - delivery method with no-redirect and when 20:12:13 INFO - the target request is same-origin. 20:12:13 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1181ms 20:12:13 INFO - TEST-START | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:12:14 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d55800 == 34 [pid = 8892] [id = 668] 20:12:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a53c6000) [pid = 8892] [serial = 1873] [outer = (nil)] 20:12:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8a8549800) [pid = 8892] [serial = 1874] [outer = 0x7fd8a53c6000] 20:12:14 INFO - PROCESS | 8892 | 1459566734115 Marionette INFO loaded listener.js 20:12:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8a9ab8000) [pid = 8892] [serial = 1875] [outer = 0x7fd8a53c6000] 20:12:14 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:14 INFO - document served over http requires an https 20:12:14 INFO - sub-resource via xhr-request using the http-csp 20:12:14 INFO - delivery method with swap-origin-redirect and when 20:12:14 INFO - the target request is same-origin. 20:12:14 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1297ms 20:12:15 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:12:15 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa51c800 == 35 [pid = 8892] [id = 669] 20:12:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8a780cc00) [pid = 8892] [serial = 1876] [outer = (nil)] 20:12:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8aa4ce400) [pid = 8892] [serial = 1877] [outer = 0x7fd8a780cc00] 20:12:15 INFO - PROCESS | 8892 | 1459566735458 Marionette INFO loaded listener.js 20:12:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8aa4d2c00) [pid = 8892] [serial = 1878] [outer = 0x7fd8a780cc00] 20:12:16 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:16 INFO - document served over http requires an http 20:12:16 INFO - sub-resource via fetch-request using the meta-csp 20:12:16 INFO - delivery method with keep-origin-redirect and when 20:12:16 INFO - the target request is cross-origin. 20:12:16 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1291ms 20:12:16 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html 20:12:16 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7022800 == 36 [pid = 8892] [id = 670] 20:12:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8a9e19c00) [pid = 8892] [serial = 1879] [outer = (nil)] 20:12:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8aa55e000) [pid = 8892] [serial = 1880] [outer = 0x7fd8a9e19c00] 20:12:16 INFO - PROCESS | 8892 | 1459566736751 Marionette INFO loaded listener.js 20:12:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8aa568800) [pid = 8892] [serial = 1881] [outer = 0x7fd8a9e19c00] 20:12:17 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:17 INFO - document served over http requires an http 20:12:17 INFO - sub-resource via fetch-request using the meta-csp 20:12:17 INFO - delivery method with no-redirect and when 20:12:17 INFO - the target request is cross-origin. 20:12:17 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1227ms 20:12:17 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:12:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5ce000 == 37 [pid = 8892] [id = 671] 20:12:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8aa55c400) [pid = 8892] [serial = 1882] [outer = (nil)] 20:12:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8aa7d9000) [pid = 8892] [serial = 1883] [outer = 0x7fd8aa55c400] 20:12:17 INFO - PROCESS | 8892 | 1459566737976 Marionette INFO loaded listener.js 20:12:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8aa7dd000) [pid = 8892] [serial = 1884] [outer = 0x7fd8aa55c400] 20:12:18 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:18 INFO - document served over http requires an http 20:12:18 INFO - sub-resource via fetch-request using the meta-csp 20:12:18 INFO - delivery method with swap-origin-redirect and when 20:12:18 INFO - the target request is cross-origin. 20:12:18 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1239ms 20:12:18 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:12:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85cb800 == 38 [pid = 8892] [id = 672] 20:12:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8aa7f1400) [pid = 8892] [serial = 1885] [outer = (nil)] 20:12:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8aa953c00) [pid = 8892] [serial = 1886] [outer = 0x7fd8aa7f1400] 20:12:19 INFO - PROCESS | 8892 | 1459566739228 Marionette INFO loaded listener.js 20:12:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8aa960000) [pid = 8892] [serial = 1887] [outer = 0x7fd8aa7f1400] 20:12:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ad8e0000 == 39 [pid = 8892] [id = 673] 20:12:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8ad731800) [pid = 8892] [serial = 1888] [outer = (nil)] 20:12:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8aa95b000) [pid = 8892] [serial = 1889] [outer = 0x7fd8ad731800] 20:12:20 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:20 INFO - document served over http requires an http 20:12:20 INFO - sub-resource via iframe-tag using the meta-csp 20:12:20 INFO - delivery method with keep-origin-redirect and when 20:12:20 INFO - the target request is cross-origin. 20:12:20 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1280ms 20:12:20 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:12:20 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbcf800 == 40 [pid = 8892] [id = 674] 20:12:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8a47d0800) [pid = 8892] [serial = 1890] [outer = (nil)] 20:12:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8ad72cc00) [pid = 8892] [serial = 1891] [outer = 0x7fd8a47d0800] 20:12:20 INFO - PROCESS | 8892 | 1459566740594 Marionette INFO loaded listener.js 20:12:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8ad756400) [pid = 8892] [serial = 1892] [outer = 0x7fd8a47d0800] 20:12:21 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbe5000 == 41 [pid = 8892] [id = 675] 20:12:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8ad759000) [pid = 8892] [serial = 1893] [outer = (nil)] 20:12:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8ad761400) [pid = 8892] [serial = 1894] [outer = 0x7fd8ad759000] 20:12:21 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:21 INFO - document served over http requires an http 20:12:21 INFO - sub-resource via iframe-tag using the meta-csp 20:12:21 INFO - delivery method with no-redirect and when 20:12:21 INFO - the target request is cross-origin. 20:12:21 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1324ms 20:12:21 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:12:21 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addd1000 == 42 [pid = 8892] [id = 676] 20:12:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8aa7f5c00) [pid = 8892] [serial = 1895] [outer = (nil)] 20:12:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8ad75a400) [pid = 8892] [serial = 1896] [outer = 0x7fd8aa7f5c00] 20:12:21 INFO - PROCESS | 8892 | 1459566741866 Marionette INFO loaded listener.js 20:12:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8adb27000) [pid = 8892] [serial = 1897] [outer = 0x7fd8aa7f5c00] 20:12:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adea8800 == 43 [pid = 8892] [id = 677] 20:12:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8adb2a000) [pid = 8892] [serial = 1898] [outer = (nil)] 20:12:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8adb24c00) [pid = 8892] [serial = 1899] [outer = 0x7fd8adb2a000] 20:12:22 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:22 INFO - document served over http requires an http 20:12:22 INFO - sub-resource via iframe-tag using the meta-csp 20:12:22 INFO - delivery method with swap-origin-redirect and when 20:12:22 INFO - the target request is cross-origin. 20:12:22 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1249ms 20:12:22 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:12:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adf89000 == 44 [pid = 8892] [id = 678] 20:12:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8ad737000) [pid = 8892] [serial = 1900] [outer = (nil)] 20:12:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8adb2ac00) [pid = 8892] [serial = 1901] [outer = 0x7fd8ad737000] 20:12:23 INFO - PROCESS | 8892 | 1459566743131 Marionette INFO loaded listener.js 20:12:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8adca6800) [pid = 8892] [serial = 1902] [outer = 0x7fd8ad737000] 20:12:23 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:23 INFO - document served over http requires an http 20:12:23 INFO - sub-resource via script-tag using the meta-csp 20:12:23 INFO - delivery method with keep-origin-redirect and when 20:12:23 INFO - the target request is cross-origin. 20:12:23 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1223ms 20:12:23 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html 20:12:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3d6000 == 45 [pid = 8892] [id = 679] 20:12:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8a8ea8800) [pid = 8892] [serial = 1903] [outer = (nil)] 20:12:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8adb30c00) [pid = 8892] [serial = 1904] [outer = 0x7fd8a8ea8800] 20:12:24 INFO - PROCESS | 8892 | 1459566744343 Marionette INFO loaded listener.js 20:12:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8ae055400) [pid = 8892] [serial = 1905] [outer = 0x7fd8a8ea8800] 20:12:25 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:25 INFO - document served over http requires an http 20:12:25 INFO - sub-resource via script-tag using the meta-csp 20:12:25 INFO - delivery method with no-redirect and when 20:12:25 INFO - the target request is cross-origin. 20:12:25 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html | took 1183ms 20:12:25 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:12:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6c5800 == 46 [pid = 8892] [id = 680] 20:12:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8a9e1c400) [pid = 8892] [serial = 1906] [outer = (nil)] 20:12:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8ae273c00) [pid = 8892] [serial = 1907] [outer = 0x7fd8a9e1c400] 20:12:25 INFO - PROCESS | 8892 | 1459566745566 Marionette INFO loaded listener.js 20:12:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8ae2cbc00) [pid = 8892] [serial = 1908] [outer = 0x7fd8a9e1c400] 20:12:26 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:26 INFO - document served over http requires an http 20:12:26 INFO - sub-resource via script-tag using the meta-csp 20:12:26 INFO - delivery method with swap-origin-redirect and when 20:12:26 INFO - the target request is cross-origin. 20:12:26 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1324ms 20:12:26 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:12:26 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af978800 == 47 [pid = 8892] [id = 681] 20:12:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8ae056400) [pid = 8892] [serial = 1909] [outer = (nil)] 20:12:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8af354c00) [pid = 8892] [serial = 1910] [outer = 0x7fd8ae056400] 20:12:26 INFO - PROCESS | 8892 | 1459566746856 Marionette INFO loaded listener.js 20:12:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8af361800) [pid = 8892] [serial = 1911] [outer = 0x7fd8ae056400] 20:12:27 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:27 INFO - document served over http requires an http 20:12:27 INFO - sub-resource via xhr-request using the meta-csp 20:12:27 INFO - delivery method with keep-origin-redirect and when 20:12:27 INFO - the target request is cross-origin. 20:12:27 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1179ms 20:12:27 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html 20:12:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affca000 == 48 [pid = 8892] [id = 682] 20:12:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8ae281800) [pid = 8892] [serial = 1912] [outer = (nil)] 20:12:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8af8aac00) [pid = 8892] [serial = 1913] [outer = 0x7fd8ae281800] 20:12:28 INFO - PROCESS | 8892 | 1459566748081 Marionette INFO loaded listener.js 20:12:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8af8e6400) [pid = 8892] [serial = 1914] [outer = 0x7fd8ae281800] 20:12:28 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:28 INFO - document served over http requires an http 20:12:28 INFO - sub-resource via xhr-request using the meta-csp 20:12:28 INFO - delivery method with no-redirect and when 20:12:28 INFO - the target request is cross-origin. 20:12:28 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1233ms 20:12:28 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:12:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0204000 == 49 [pid = 8892] [id = 683] 20:12:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8aa562000) [pid = 8892] [serial = 1915] [outer = (nil)] 20:12:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8af8b3400) [pid = 8892] [serial = 1916] [outer = 0x7fd8aa562000] 20:12:29 INFO - PROCESS | 8892 | 1459566749301 Marionette INFO loaded listener.js 20:12:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8af947800) [pid = 8892] [serial = 1917] [outer = 0x7fd8aa562000] 20:12:30 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:30 INFO - document served over http requires an http 20:12:30 INFO - sub-resource via xhr-request using the meta-csp 20:12:30 INFO - delivery method with swap-origin-redirect and when 20:12:30 INFO - the target request is cross-origin. 20:12:30 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1178ms 20:12:30 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:12:30 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b044f800 == 50 [pid = 8892] [id = 684] 20:12:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8af8a6c00) [pid = 8892] [serial = 1918] [outer = (nil)] 20:12:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8af949c00) [pid = 8892] [serial = 1919] [outer = 0x7fd8af8a6c00] 20:12:30 INFO - PROCESS | 8892 | 1459566750513 Marionette INFO loaded listener.js 20:12:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8afb71c00) [pid = 8892] [serial = 1920] [outer = 0x7fd8af8a6c00] 20:12:31 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:31 INFO - document served over http requires an https 20:12:31 INFO - sub-resource via fetch-request using the meta-csp 20:12:31 INFO - delivery method with keep-origin-redirect and when 20:12:31 INFO - the target request is cross-origin. 20:12:31 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1325ms 20:12:31 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html 20:12:31 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b046d000 == 51 [pid = 8892] [id = 685] 20:12:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8af8ee800) [pid = 8892] [serial = 1921] [outer = (nil)] 20:12:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8af954c00) [pid = 8892] [serial = 1922] [outer = 0x7fd8af8ee800] 20:12:31 INFO - PROCESS | 8892 | 1459566751805 Marionette INFO loaded listener.js 20:12:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8afdc4800) [pid = 8892] [serial = 1923] [outer = 0x7fd8af8ee800] 20:12:32 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:32 INFO - document served over http requires an https 20:12:32 INFO - sub-resource via fetch-request using the meta-csp 20:12:32 INFO - delivery method with no-redirect and when 20:12:32 INFO - the target request is cross-origin. 20:12:32 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1181ms 20:12:32 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:12:32 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0eaf000 == 52 [pid = 8892] [id = 686] 20:12:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8af94e000) [pid = 8892] [serial = 1924] [outer = (nil)] 20:12:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8afdc6400) [pid = 8892] [serial = 1925] [outer = 0x7fd8af94e000] 20:12:33 INFO - PROCESS | 8892 | 1459566753034 Marionette INFO loaded listener.js 20:12:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b0789800) [pid = 8892] [serial = 1926] [outer = 0x7fd8af94e000] 20:12:35 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:35 INFO - document served over http requires an https 20:12:35 INFO - sub-resource via fetch-request using the meta-csp 20:12:35 INFO - delivery method with swap-origin-redirect and when 20:12:35 INFO - the target request is cross-origin. 20:12:35 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 2482ms 20:12:35 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:12:35 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0ec6800 == 53 [pid = 8892] [id = 687] 20:12:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8b0786c00) [pid = 8892] [serial = 1927] [outer = (nil)] 20:12:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8b07c3800) [pid = 8892] [serial = 1928] [outer = 0x7fd8b0786c00] 20:12:35 INFO - PROCESS | 8892 | 1459566755551 Marionette INFO loaded listener.js 20:12:35 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8b07d0800) [pid = 8892] [serial = 1929] [outer = 0x7fd8b0786c00] 20:12:36 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0eca000 == 54 [pid = 8892] [id = 688] 20:12:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8b0b8ac00) [pid = 8892] [serial = 1930] [outer = (nil)] 20:12:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8a6987000) [pid = 8892] [serial = 1931] [outer = 0x7fd8b0b8ac00] 20:12:36 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:36 INFO - document served over http requires an https 20:12:36 INFO - sub-resource via iframe-tag using the meta-csp 20:12:36 INFO - delivery method with keep-origin-redirect and when 20:12:36 INFO - the target request is cross-origin. 20:12:36 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1390ms 20:12:36 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:12:36 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5529000 == 55 [pid = 8892] [id = 689] 20:12:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8a4f8cc00) [pid = 8892] [serial = 1932] [outer = (nil)] 20:12:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8a6b8c000) [pid = 8892] [serial = 1933] [outer = 0x7fd8a4f8cc00] 20:12:36 INFO - PROCESS | 8892 | 1459566756993 Marionette INFO loaded listener.js 20:12:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8b0b8d400) [pid = 8892] [serial = 1934] [outer = 0x7fd8a4f8cc00] 20:12:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbec800 == 56 [pid = 8892] [id = 690] 20:12:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8b0b8e400) [pid = 8892] [serial = 1935] [outer = (nil)] 20:12:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8a53bb000) [pid = 8892] [serial = 1936] [outer = 0x7fd8b0b8e400] 20:12:38 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:38 INFO - document served over http requires an https 20:12:38 INFO - sub-resource via iframe-tag using the meta-csp 20:12:38 INFO - delivery method with no-redirect and when 20:12:38 INFO - the target request is cross-origin. 20:12:38 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1530ms 20:12:38 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:12:38 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5513800 == 57 [pid = 8892] [id = 691] 20:12:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8a53c3400) [pid = 8892] [serial = 1937] [outer = (nil)] 20:12:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8a6b89400) [pid = 8892] [serial = 1938] [outer = 0x7fd8a53c3400] 20:12:38 INFO - PROCESS | 8892 | 1459566758754 Marionette INFO loaded listener.js 20:12:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8a8556400) [pid = 8892] [serial = 1939] [outer = 0x7fd8a53c3400] 20:12:39 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6cc8000 == 58 [pid = 8892] [id = 692] 20:12:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8a82dcc00) [pid = 8892] [serial = 1940] [outer = (nil)] 20:12:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8a53c4c00) [pid = 8892] [serial = 1941] [outer = 0x7fd8a82dcc00] 20:12:39 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a51b8800 == 57 [pid = 8892] [id = 662] 20:12:39 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a470a800 == 56 [pid = 8892] [id = 660] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8b18b9800) [pid = 8892] [serial = 1766] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8b6d20c00) [pid = 8892] [serial = 1724] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8afb7ac00) [pid = 8892] [serial = 1687] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8af8a9c00) [pid = 8892] [serial = 1755] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8aa7e4000) [pid = 8892] [serial = 1692] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8b337e800) [pid = 8892] [serial = 1710] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8b64eb400) [pid = 8892] [serial = 1719] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8b8e1c400) [pid = 8892] [serial = 1740] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8b38c6000) [pid = 8892] [serial = 1713] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8b78ec000) [pid = 8892] [serial = 1734] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8afdc7c00) [pid = 8892] [serial = 1698] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8b78c2400) [pid = 8892] [serial = 1729] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8ae2c9c00) [pid = 8892] [serial = 1752] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8b8c27c00) [pid = 8892] [serial = 1737] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8afb79400) [pid = 8892] [serial = 1758] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8b5d49800) [pid = 8892] [serial = 1716] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8ae275c00) [pid = 8892] [serial = 1695] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8b28dcc00) [pid = 8892] [serial = 1776] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8b14e3000) [pid = 8892] [serial = 1761] [outer = (nil)] [url = about:blank] 20:12:39 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8afb7ec00) [pid = 8892] [serial = 1771] [outer = (nil)] [url = about:blank] 20:12:39 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:39 INFO - document served over http requires an https 20:12:39 INFO - sub-resource via iframe-tag using the meta-csp 20:12:39 INFO - delivery method with swap-origin-redirect and when 20:12:39 INFO - the target request is cross-origin. 20:12:39 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1581ms 20:12:39 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:12:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a51b4000 == 57 [pid = 8892] [id = 693] 20:12:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8a53c8000) [pid = 8892] [serial = 1942] [outer = (nil)] 20:12:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8a6b87400) [pid = 8892] [serial = 1943] [outer = 0x7fd8a53c8000] 20:12:40 INFO - PROCESS | 8892 | 1459566760155 Marionette INFO loaded listener.js 20:12:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8a9ab7c00) [pid = 8892] [serial = 1944] [outer = 0x7fd8a53c8000] 20:12:40 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:40 INFO - document served over http requires an https 20:12:40 INFO - sub-resource via script-tag using the meta-csp 20:12:40 INFO - delivery method with keep-origin-redirect and when 20:12:40 INFO - the target request is cross-origin. 20:12:40 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1027ms 20:12:40 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html 20:12:41 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a80de000 == 58 [pid = 8892] [id = 694] 20:12:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8aa4da400) [pid = 8892] [serial = 1945] [outer = (nil)] 20:12:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8aa55fc00) [pid = 8892] [serial = 1946] [outer = 0x7fd8aa4da400] 20:12:41 INFO - PROCESS | 8892 | 1459566761176 Marionette INFO loaded listener.js 20:12:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8aa7ef800) [pid = 8892] [serial = 1947] [outer = 0x7fd8aa4da400] 20:12:42 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:42 INFO - document served over http requires an https 20:12:42 INFO - sub-resource via script-tag using the meta-csp 20:12:42 INFO - delivery method with no-redirect and when 20:12:42 INFO - the target request is cross-origin. 20:12:42 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html | took 1125ms 20:12:42 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:12:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4709800 == 59 [pid = 8892] [id = 695] 20:12:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8a698c800) [pid = 8892] [serial = 1948] [outer = (nil)] 20:12:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8aa960400) [pid = 8892] [serial = 1949] [outer = 0x7fd8a698c800] 20:12:42 INFO - PROCESS | 8892 | 1459566762441 Marionette INFO loaded listener.js 20:12:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8ae05e800) [pid = 8892] [serial = 1950] [outer = 0x7fd8a698c800] 20:12:43 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:43 INFO - document served over http requires an https 20:12:43 INFO - sub-resource via script-tag using the meta-csp 20:12:43 INFO - delivery method with swap-origin-redirect and when 20:12:43 INFO - the target request is cross-origin. 20:12:43 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1175ms 20:12:43 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:12:43 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbd8000 == 60 [pid = 8892] [id = 696] 20:12:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8adc9a400) [pid = 8892] [serial = 1951] [outer = (nil)] 20:12:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8ae274000) [pid = 8892] [serial = 1952] [outer = 0x7fd8adc9a400] 20:12:43 INFO - PROCESS | 8892 | 1459566763526 Marionette INFO loaded listener.js 20:12:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8af8eac00) [pid = 8892] [serial = 1953] [outer = 0x7fd8adc9a400] 20:12:44 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:44 INFO - document served over http requires an https 20:12:44 INFO - sub-resource via xhr-request using the meta-csp 20:12:44 INFO - delivery method with keep-origin-redirect and when 20:12:44 INFO - the target request is cross-origin. 20:12:44 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1023ms 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8b3381400) [pid = 8892] [serial = 1811] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8bd4db800) [pid = 8892] [serial = 1831] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8af354800) [pid = 8892] [serial = 1789] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8bd2d4400) [pid = 8892] [serial = 1825] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8bc7ce000) [pid = 8892] [serial = 1843] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8a698e400) [pid = 8892] [serial = 1806] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8b6ccf400) [pid = 8892] [serial = 1792] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8be56ac00) [pid = 8892] [serial = 1834] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8c14a8400) [pid = 8892] [serial = 1840] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8bd4db000) [pid = 8892] [serial = 1828] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8b8e2a400) [pid = 8892] [serial = 1801] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8adca4400) [pid = 8892] [serial = 1783] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8bf049000) [pid = 8892] [serial = 1837] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8b78eb800) [pid = 8892] [serial = 1795] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8ae052800) [pid = 8892] [serial = 1786] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8b8d7fc00) [pid = 8892] [serial = 1798] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8a8ea3800) [pid = 8892] [serial = 1868] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8a8ea4000) [pid = 8892] [serial = 1816] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8a6e25000) [pid = 8892] [serial = 1858] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8a6e1f800) [pid = 8892] [serial = 1856] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8c167b400) [pid = 8892] [serial = 1846] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8a47c2800) [pid = 8892] [serial = 1777] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8ba98d400) [pid = 8892] [serial = 1804] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8bc36b800) [pid = 8892] [serial = 1809] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566703500] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8a4f81000) [pid = 8892] [serial = 1861] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8a8555800) [pid = 8892] [serial = 1848] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8bc368800) [pid = 8892] [serial = 1819] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8bcae5400) [pid = 8892] [serial = 1814] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8bcae6000) [pid = 8892] [serial = 1822] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8a47cd800) [pid = 8892] [serial = 1851] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566723802] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8a47cdc00) [pid = 8892] [serial = 1864] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8a6986400) [pid = 8892] [serial = 1780] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8a53ba000) [pid = 8892] [serial = 1853] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8bc370000) [pid = 8892] [serial = 1812] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8bcfcdc00) [pid = 8892] [serial = 1820] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8bd4e1c00) [pid = 8892] [serial = 1826] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8a82dc800) [pid = 8892] [serial = 1862] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8ba985400) [pid = 8892] [serial = 1805] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8c14ab800) [pid = 8892] [serial = 1844] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8c14b5c00) [pid = 8892] [serial = 1847] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8aa958400) [pid = 8892] [serial = 1781] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8bf07f000) [pid = 8892] [serial = 1835] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8a759c800) [pid = 8892] [serial = 1859] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8c1678400) [pid = 8892] [serial = 1849] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8c14aa000) [pid = 8892] [serial = 1841] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8be1c9800) [pid = 8892] [serial = 1829] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8bf029c00) [pid = 8892] [serial = 1832] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8bcae0800) [pid = 8892] [serial = 1817] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8ba98ac00) [pid = 8892] [serial = 1807] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8afdc0000) [pid = 8892] [serial = 1784] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8b8d88c00) [pid = 8892] [serial = 1793] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8b64f1400) [pid = 8892] [serial = 1790] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8bcabb400) [pid = 8892] [serial = 1815] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8a6b88c00) [pid = 8892] [serial = 1857] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8bc36d800) [pid = 8892] [serial = 1810] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566703500] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8a6988800) [pid = 8892] [serial = 1854] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8b2ec4800) [pid = 8892] [serial = 1787] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8bf0b1c00) [pid = 8892] [serial = 1838] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8b8e2b400) [pid = 8892] [serial = 1796] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8b8fa8c00) [pid = 8892] [serial = 1799] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8a4f8b800) [pid = 8892] [serial = 1852] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566723802] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8bd2de000) [pid = 8892] [serial = 1823] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8ba272800) [pid = 8892] [serial = 1802] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8a6e1dc00) [pid = 8892] [serial = 1778] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8a4f8c400) [pid = 8892] [serial = 1865] [outer = (nil)] [url = about:blank] 20:12:44 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 124 (0x7fd8bf07d800) [pid = 8892] [serial = 1833] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 123 (0x7fd8b6cdb400) [pid = 8892] [serial = 1791] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 122 (0x7fd8bf028800) [pid = 8892] [serial = 1830] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 121 (0x7fd8bd5c3000) [pid = 8892] [serial = 1827] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 120 (0x7fd8b28e0000) [pid = 8892] [serial = 1785] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | --DOMWINDOW == 119 (0x7fd8b64ec000) [pid = 8892] [serial = 1788] [outer = (nil)] [url = about:blank] 20:12:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3ca800 == 61 [pid = 8892] [id = 697] 20:12:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 120 (0x7fd8a8ea4000) [pid = 8892] [serial = 1954] [outer = (nil)] 20:12:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 121 (0x7fd8adca4400) [pid = 8892] [serial = 1955] [outer = 0x7fd8a8ea4000] 20:12:44 INFO - PROCESS | 8892 | 1459566764748 Marionette INFO loaded listener.js 20:12:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 122 (0x7fd8b07d0000) [pid = 8892] [serial = 1956] [outer = 0x7fd8a8ea4000] 20:12:45 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:45 INFO - document served over http requires an https 20:12:45 INFO - sub-resource via xhr-request using the meta-csp 20:12:45 INFO - delivery method with no-redirect and when 20:12:45 INFO - the target request is cross-origin. 20:12:45 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | took 991ms 20:12:45 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:12:45 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0174000 == 62 [pid = 8892] [id = 698] 20:12:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 123 (0x7fd8a8eac800) [pid = 8892] [serial = 1957] [outer = (nil)] 20:12:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 124 (0x7fd8b0b91c00) [pid = 8892] [serial = 1958] [outer = 0x7fd8a8eac800] 20:12:45 INFO - PROCESS | 8892 | 1459566765721 Marionette INFO loaded listener.js 20:12:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 125 (0x7fd8b14e5c00) [pid = 8892] [serial = 1959] [outer = 0x7fd8a8eac800] 20:12:46 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:46 INFO - document served over http requires an https 20:12:46 INFO - sub-resource via xhr-request using the meta-csp 20:12:46 INFO - delivery method with swap-origin-redirect and when 20:12:46 INFO - the target request is cross-origin. 20:12:46 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1122ms 20:12:46 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:12:46 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6acd000 == 63 [pid = 8892] [id = 699] 20:12:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8a53bc800) [pid = 8892] [serial = 1960] [outer = (nil)] 20:12:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8a6985000) [pid = 8892] [serial = 1961] [outer = 0x7fd8a53bc800] 20:12:46 INFO - PROCESS | 8892 | 1459566766990 Marionette INFO loaded listener.js 20:12:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a780d400) [pid = 8892] [serial = 1962] [outer = 0x7fd8a53bc800] 20:12:47 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:47 INFO - document served over http requires an http 20:12:47 INFO - sub-resource via fetch-request using the meta-csp 20:12:47 INFO - delivery method with keep-origin-redirect and when 20:12:47 INFO - the target request is same-origin. 20:12:47 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1233ms 20:12:47 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html 20:12:48 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3cc000 == 64 [pid = 8892] [id = 700] 20:12:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a53c5800) [pid = 8892] [serial = 1963] [outer = (nil)] 20:12:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a9ab9400) [pid = 8892] [serial = 1964] [outer = 0x7fd8a53c5800] 20:12:48 INFO - PROCESS | 8892 | 1459566768259 Marionette INFO loaded listener.js 20:12:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8aa56a400) [pid = 8892] [serial = 1965] [outer = 0x7fd8a53c5800] 20:12:49 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:49 INFO - document served over http requires an http 20:12:49 INFO - sub-resource via fetch-request using the meta-csp 20:12:49 INFO - delivery method with no-redirect and when 20:12:49 INFO - the target request is same-origin. 20:12:49 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1283ms 20:12:49 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:12:49 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b277c800 == 65 [pid = 8892] [id = 701] 20:12:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8aa95f400) [pid = 8892] [serial = 1966] [outer = (nil)] 20:12:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8ae054800) [pid = 8892] [serial = 1967] [outer = 0x7fd8aa95f400] 20:12:49 INFO - PROCESS | 8892 | 1459566769552 Marionette INFO loaded listener.js 20:12:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8af952800) [pid = 8892] [serial = 1968] [outer = 0x7fd8aa95f400] 20:12:50 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:50 INFO - document served over http requires an http 20:12:50 INFO - sub-resource via fetch-request using the meta-csp 20:12:50 INFO - delivery method with swap-origin-redirect and when 20:12:50 INFO - the target request is same-origin. 20:12:50 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 1331ms 20:12:50 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:12:50 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2ada800 == 66 [pid = 8892] [id = 702] 20:12:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8adfd3c00) [pid = 8892] [serial = 1969] [outer = (nil)] 20:12:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8b0b8f400) [pid = 8892] [serial = 1970] [outer = 0x7fd8adfd3c00] 20:12:50 INFO - PROCESS | 8892 | 1459566770868 Marionette INFO loaded listener.js 20:12:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8b169ac00) [pid = 8892] [serial = 1971] [outer = 0x7fd8adfd3c00] 20:12:51 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e2b000 == 67 [pid = 8892] [id = 703] 20:12:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8b16d9000) [pid = 8892] [serial = 1972] [outer = (nil)] 20:12:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8b14eb000) [pid = 8892] [serial = 1973] [outer = 0x7fd8b16d9000] 20:12:51 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:51 INFO - document served over http requires an http 20:12:51 INFO - sub-resource via iframe-tag using the meta-csp 20:12:51 INFO - delivery method with keep-origin-redirect and when 20:12:51 INFO - the target request is same-origin. 20:12:51 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1325ms 20:12:51 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:12:52 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b3360800 == 68 [pid = 8892] [id = 704] 20:12:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8b07c6000) [pid = 8892] [serial = 1974] [outer = (nil)] 20:12:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8b16dc000) [pid = 8892] [serial = 1975] [outer = 0x7fd8b07c6000] 20:12:52 INFO - PROCESS | 8892 | 1459566772205 Marionette INFO loaded listener.js 20:12:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8b18b0000) [pid = 8892] [serial = 1976] [outer = 0x7fd8b07c6000] 20:12:52 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b3377800 == 69 [pid = 8892] [id = 705] 20:12:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8b1b31400) [pid = 8892] [serial = 1977] [outer = (nil)] 20:12:52 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8b18b7000) [pid = 8892] [serial = 1978] [outer = 0x7fd8b1b31400] 20:12:53 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:53 INFO - document served over http requires an http 20:12:53 INFO - sub-resource via iframe-tag using the meta-csp 20:12:53 INFO - delivery method with no-redirect and when 20:12:53 INFO - the target request is same-origin. 20:12:53 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1280ms 20:12:53 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:12:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b5df2800 == 70 [pid = 8892] [id = 706] 20:12:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8b1b2f400) [pid = 8892] [serial = 1979] [outer = (nil)] 20:12:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8b28e3400) [pid = 8892] [serial = 1980] [outer = 0x7fd8b1b2f400] 20:12:53 INFO - PROCESS | 8892 | 1459566773526 Marionette INFO loaded listener.js 20:12:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8b2d1d400) [pid = 8892] [serial = 1981] [outer = 0x7fd8b1b2f400] 20:12:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6423800 == 71 [pid = 8892] [id = 707] 20:12:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8b2ec5c00) [pid = 8892] [serial = 1982] [outer = (nil)] 20:12:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8b2d19000) [pid = 8892] [serial = 1983] [outer = 0x7fd8b2ec5c00] 20:12:54 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:54 INFO - document served over http requires an http 20:12:54 INFO - sub-resource via iframe-tag using the meta-csp 20:12:54 INFO - delivery method with swap-origin-redirect and when 20:12:54 INFO - the target request is same-origin. 20:12:54 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1282ms 20:12:54 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:12:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6603800 == 72 [pid = 8892] [id = 708] 20:12:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8b1b32000) [pid = 8892] [serial = 1984] [outer = (nil)] 20:12:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8b2ec8400) [pid = 8892] [serial = 1985] [outer = 0x7fd8b1b32000] 20:12:54 INFO - PROCESS | 8892 | 1459566774837 Marionette INFO loaded listener.js 20:12:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8b3381800) [pid = 8892] [serial = 1986] [outer = 0x7fd8b1b32000] 20:12:55 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:55 INFO - document served over http requires an http 20:12:55 INFO - sub-resource via script-tag using the meta-csp 20:12:55 INFO - delivery method with keep-origin-redirect and when 20:12:55 INFO - the target request is same-origin. 20:12:55 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1278ms 20:12:55 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html 20:12:56 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6621000 == 73 [pid = 8892] [id = 709] 20:12:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8b28d9400) [pid = 8892] [serial = 1987] [outer = (nil)] 20:12:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8b38c3800) [pid = 8892] [serial = 1988] [outer = 0x7fd8b28d9400] 20:12:56 INFO - PROCESS | 8892 | 1459566776101 Marionette INFO loaded listener.js 20:12:56 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8b38d1c00) [pid = 8892] [serial = 1989] [outer = 0x7fd8b28d9400] 20:12:56 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:56 INFO - document served over http requires an http 20:12:56 INFO - sub-resource via script-tag using the meta-csp 20:12:56 INFO - delivery method with no-redirect and when 20:12:56 INFO - the target request is same-origin. 20:12:56 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html | took 1279ms 20:12:56 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:12:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b68f4000 == 74 [pid = 8892] [id = 710] 20:12:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8b2ed0400) [pid = 8892] [serial = 1990] [outer = (nil)] 20:12:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8b5d47c00) [pid = 8892] [serial = 1991] [outer = 0x7fd8b2ed0400] 20:12:57 INFO - PROCESS | 8892 | 1459566777385 Marionette INFO loaded listener.js 20:12:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8b64eb400) [pid = 8892] [serial = 1992] [outer = 0x7fd8b2ed0400] 20:12:58 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:58 INFO - document served over http requires an http 20:12:58 INFO - sub-resource via script-tag using the meta-csp 20:12:58 INFO - delivery method with swap-origin-redirect and when 20:12:58 INFO - the target request is same-origin. 20:12:58 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1273ms 20:12:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:12:58 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6c68800 == 75 [pid = 8892] [id = 711] 20:12:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8b38cb000) [pid = 8892] [serial = 1993] [outer = (nil)] 20:12:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8b64f0000) [pid = 8892] [serial = 1994] [outer = 0x7fd8b38cb000] 20:12:58 INFO - PROCESS | 8892 | 1459566778654 Marionette INFO loaded listener.js 20:12:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8b66d9c00) [pid = 8892] [serial = 1995] [outer = 0x7fd8b38cb000] 20:12:59 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:12:59 INFO - document served over http requires an http 20:12:59 INFO - sub-resource via xhr-request using the meta-csp 20:12:59 INFO - delivery method with keep-origin-redirect and when 20:12:59 INFO - the target request is same-origin. 20:12:59 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1173ms 20:12:59 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html 20:12:59 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b7895000 == 76 [pid = 8892] [id = 712] 20:12:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8b66d5400) [pid = 8892] [serial = 1996] [outer = (nil)] 20:12:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8b6ccdc00) [pid = 8892] [serial = 1997] [outer = 0x7fd8b66d5400] 20:12:59 INFO - PROCESS | 8892 | 1459566779883 Marionette INFO loaded listener.js 20:12:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8b6cd6400) [pid = 8892] [serial = 1998] [outer = 0x7fd8b66d5400] 20:13:00 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:00 INFO - document served over http requires an http 20:13:00 INFO - sub-resource via xhr-request using the meta-csp 20:13:00 INFO - delivery method with no-redirect and when 20:13:00 INFO - the target request is same-origin. 20:13:00 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1275ms 20:13:00 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:13:01 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b8cdd800 == 77 [pid = 8892] [id = 713] 20:13:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8b66da800) [pid = 8892] [serial = 1999] [outer = (nil)] 20:13:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8b6d26800) [pid = 8892] [serial = 2000] [outer = 0x7fd8b66da800] 20:13:01 INFO - PROCESS | 8892 | 1459566781148 Marionette INFO loaded listener.js 20:13:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8b78c9800) [pid = 8892] [serial = 2001] [outer = 0x7fd8b66da800] 20:13:01 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:01 INFO - document served over http requires an http 20:13:01 INFO - sub-resource via xhr-request using the meta-csp 20:13:01 INFO - delivery method with swap-origin-redirect and when 20:13:01 INFO - the target request is same-origin. 20:13:01 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1275ms 20:13:01 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:13:02 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba36c000 == 78 [pid = 8892] [id = 714] 20:13:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8b6cdbc00) [pid = 8892] [serial = 2002] [outer = (nil)] 20:13:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8b78cf000) [pid = 8892] [serial = 2003] [outer = 0x7fd8b6cdbc00] 20:13:02 INFO - PROCESS | 8892 | 1459566782393 Marionette INFO loaded listener.js 20:13:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8b78ee000) [pid = 8892] [serial = 2004] [outer = 0x7fd8b6cdbc00] 20:13:03 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:03 INFO - document served over http requires an https 20:13:03 INFO - sub-resource via fetch-request using the meta-csp 20:13:03 INFO - delivery method with keep-origin-redirect and when 20:13:03 INFO - the target request is same-origin. 20:13:03 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1228ms 20:13:03 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html 20:13:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba678800 == 79 [pid = 8892] [id = 715] 20:13:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8b78c3000) [pid = 8892] [serial = 2005] [outer = (nil)] 20:13:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8b78f0000) [pid = 8892] [serial = 2006] [outer = 0x7fd8b78c3000] 20:13:03 INFO - PROCESS | 8892 | 1459566783637 Marionette INFO loaded listener.js 20:13:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8b8d7f400) [pid = 8892] [serial = 2007] [outer = 0x7fd8b78c3000] 20:13:04 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:04 INFO - document served over http requires an https 20:13:04 INFO - sub-resource via fetch-request using the meta-csp 20:13:04 INFO - delivery method with no-redirect and when 20:13:04 INFO - the target request is same-origin. 20:13:04 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1223ms 20:13:04 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:13:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba96f800 == 80 [pid = 8892] [id = 716] 20:13:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8b78e6400) [pid = 8892] [serial = 2008] [outer = (nil)] 20:13:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8b8d83800) [pid = 8892] [serial = 2009] [outer = 0x7fd8b78e6400] 20:13:04 INFO - PROCESS | 8892 | 1459566784905 Marionette INFO loaded listener.js 20:13:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8b8e1dc00) [pid = 8892] [serial = 2010] [outer = 0x7fd8b78e6400] 20:13:05 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:05 INFO - document served over http requires an https 20:13:05 INFO - sub-resource via fetch-request using the meta-csp 20:13:05 INFO - delivery method with swap-origin-redirect and when 20:13:05 INFO - the target request is same-origin. 20:13:05 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1333ms 20:13:05 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:13:06 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bc320000 == 81 [pid = 8892] [id = 717] 20:13:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8b8d80400) [pid = 8892] [serial = 2011] [outer = (nil)] 20:13:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8b8e1d000) [pid = 8892] [serial = 2012] [outer = 0x7fd8b8d80400] 20:13:06 INFO - PROCESS | 8892 | 1459566786213 Marionette INFO loaded listener.js 20:13:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8b8f9b000) [pid = 8892] [serial = 2013] [outer = 0x7fd8b8d80400] 20:13:06 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bc319800 == 82 [pid = 8892] [id = 718] 20:13:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8b8f9e800) [pid = 8892] [serial = 2014] [outer = (nil)] 20:13:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8b8f9d400) [pid = 8892] [serial = 2015] [outer = 0x7fd8b8f9e800] 20:13:07 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:07 INFO - document served over http requires an https 20:13:07 INFO - sub-resource via iframe-tag using the meta-csp 20:13:07 INFO - delivery method with keep-origin-redirect and when 20:13:07 INFO - the target request is same-origin. 20:13:07 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1333ms 20:13:07 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:13:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bccdb800 == 83 [pid = 8892] [id = 719] 20:13:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8ae280c00) [pid = 8892] [serial = 2016] [outer = (nil)] 20:13:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b8f9c400) [pid = 8892] [serial = 2017] [outer = 0x7fd8ae280c00] 20:13:07 INFO - PROCESS | 8892 | 1459566787616 Marionette INFO loaded listener.js 20:13:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8ba26d000) [pid = 8892] [serial = 2018] [outer = 0x7fd8ae280c00] 20:13:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bcf7f000 == 84 [pid = 8892] [id = 720] 20:13:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8ba270800) [pid = 8892] [serial = 2019] [outer = (nil)] 20:13:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8ba272400) [pid = 8892] [serial = 2020] [outer = 0x7fd8ba270800] 20:13:08 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:08 INFO - document served over http requires an https 20:13:08 INFO - sub-resource via iframe-tag using the meta-csp 20:13:08 INFO - delivery method with no-redirect and when 20:13:08 INFO - the target request is same-origin. 20:13:08 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1324ms 20:13:08 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:13:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd03b800 == 85 [pid = 8892] [id = 721] 20:13:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8afdc2c00) [pid = 8892] [serial = 2021] [outer = (nil)] 20:13:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8ba26dc00) [pid = 8892] [serial = 2022] [outer = 0x7fd8afdc2c00] 20:13:08 INFO - PROCESS | 8892 | 1459566788959 Marionette INFO loaded listener.js 20:13:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8ba98c800) [pid = 8892] [serial = 2023] [outer = 0x7fd8afdc2c00] 20:13:09 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd208800 == 86 [pid = 8892] [id = 722] 20:13:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8ba990000) [pid = 8892] [serial = 2024] [outer = (nil)] 20:13:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8ba273400) [pid = 8892] [serial = 2025] [outer = 0x7fd8ba990000] 20:13:09 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:09 INFO - document served over http requires an https 20:13:09 INFO - sub-resource via iframe-tag using the meta-csp 20:13:09 INFO - delivery method with swap-origin-redirect and when 20:13:09 INFO - the target request is same-origin. 20:13:09 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1376ms 20:13:09 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:13:10 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bd213000 == 87 [pid = 8892] [id = 723] 20:13:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8b1692800) [pid = 8892] [serial = 2026] [outer = (nil)] 20:13:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8ba992800) [pid = 8892] [serial = 2027] [outer = 0x7fd8b1692800] 20:13:10 INFO - PROCESS | 8892 | 1459566790310 Marionette INFO loaded listener.js 20:13:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8bc36c400) [pid = 8892] [serial = 2028] [outer = 0x7fd8b1692800] 20:13:11 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:11 INFO - document served over http requires an https 20:13:11 INFO - sub-resource via script-tag using the meta-csp 20:13:11 INFO - delivery method with keep-origin-redirect and when 20:13:11 INFO - the target request is same-origin. 20:13:11 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1328ms 20:13:11 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html 20:13:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8be2e4000 == 88 [pid = 8892] [id = 724] 20:13:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8a53bd800) [pid = 8892] [serial = 2029] [outer = (nil)] 20:13:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8b16d4800) [pid = 8892] [serial = 2030] [outer = 0x7fd8a53bd800] 20:13:12 INFO - PROCESS | 8892 | 1459566792887 Marionette INFO loaded listener.js 20:13:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8bc7cd800) [pid = 8892] [serial = 2031] [outer = 0x7fd8a53bd800] 20:13:13 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:13 INFO - document served over http requires an https 20:13:13 INFO - sub-resource via script-tag using the meta-csp 20:13:13 INFO - delivery method with no-redirect and when 20:13:13 INFO - the target request is same-origin. 20:13:13 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html | took 2488ms 20:13:13 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:13:14 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ba977000 == 89 [pid = 8892] [id = 725] 20:13:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8a53c2c00) [pid = 8892] [serial = 2032] [outer = (nil)] 20:13:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8aa4d0000) [pid = 8892] [serial = 2033] [outer = 0x7fd8a53c2c00] 20:13:14 INFO - PROCESS | 8892 | 1459566794154 Marionette INFO loaded listener.js 20:13:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8b1b24800) [pid = 8892] [serial = 2034] [outer = 0x7fd8a53c2c00] 20:13:15 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:15 INFO - document served over http requires an https 20:13:15 INFO - sub-resource via script-tag using the meta-csp 20:13:15 INFO - delivery method with swap-origin-redirect and when 20:13:15 INFO - the target request is same-origin. 20:13:15 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1628ms 20:13:15 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:13:15 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5a4800 == 90 [pid = 8892] [id = 726] 20:13:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8a698bc00) [pid = 8892] [serial = 2035] [outer = (nil)] 20:13:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8a780f000) [pid = 8892] [serial = 2036] [outer = 0x7fd8a698bc00] 20:13:15 INFO - PROCESS | 8892 | 1459566795866 Marionette INFO loaded listener.js 20:13:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 203 (0x7fd8a9e1a000) [pid = 8892] [serial = 2037] [outer = 0x7fd8a698bc00] 20:13:16 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:16 INFO - document served over http requires an https 20:13:16 INFO - sub-resource via xhr-request using the meta-csp 20:13:16 INFO - delivery method with keep-origin-redirect and when 20:13:16 INFO - the target request is same-origin. 20:13:16 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1285ms 20:13:16 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a701a800 == 89 [pid = 8892] [id = 544] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ad8e0000 == 88 [pid = 8892] [id = 673] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbe5000 == 87 [pid = 8892] [id = 675] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adea8800 == 86 [pid = 8892] [id = 677] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a85b8800 == 85 [pid = 8892] [id = 546] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0204000 == 84 [pid = 8892] [id = 683] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b044f800 == 83 [pid = 8892] [id = 684] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adde2800 == 82 [pid = 8892] [id = 556] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b046d000 == 81 [pid = 8892] [id = 685] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0eaf000 == 80 [pid = 8892] [id = 686] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0eca000 == 79 [pid = 8892] [id = 688] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a85b8000 == 78 [pid = 8892] [id = 552] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a5513800 == 77 [pid = 8892] [id = 691] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6cc8000 == 76 [pid = 8892] [id = 692] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a51b4000 == 75 [pid = 8892] [id = 693] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a519a000 == 74 [pid = 8892] [id = 541] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a80de000 == 73 [pid = 8892] [id = 694] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a7019000 == 72 [pid = 8892] [id = 550] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4709800 == 71 [pid = 8892] [id = 695] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbec800 == 70 [pid = 8892] [id = 690] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd8000 == 69 [pid = 8892] [id = 696] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a5513000 == 68 [pid = 8892] [id = 562] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3ca800 == 67 [pid = 8892] [id = 697] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ad7000 == 66 [pid = 8892] [id = 543] 20:13:17 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a7b80000 == 65 [pid = 8892] [id = 545] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8a7805000) [pid = 8892] [serial = 1860] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8bcfd1400) [pid = 8892] [serial = 1821] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8af949000) [pid = 8892] [serial = 1782] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8bc362c00) [pid = 8892] [serial = 1808] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8b8e21400) [pid = 8892] [serial = 1794] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8a6b8f800) [pid = 8892] [serial = 1855] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8c1ca1c00) [pid = 8892] [serial = 1850] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8bf0b6000) [pid = 8892] [serial = 1836] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8bcae4400) [pid = 8892] [serial = 1818] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8c1673400) [pid = 8892] [serial = 1845] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8ba984000) [pid = 8892] [serial = 1803] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8bd4db400) [pid = 8892] [serial = 1824] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8aa567800) [pid = 8892] [serial = 1779] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8c0e96000) [pid = 8892] [serial = 1839] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8bcaaf800) [pid = 8892] [serial = 1813] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8b8fa5800) [pid = 8892] [serial = 1797] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8a82dd000) [pid = 8892] [serial = 1866] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8a854dc00) [pid = 8892] [serial = 1863] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8ba26e800) [pid = 8892] [serial = 1800] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8c14ae400) [pid = 8892] [serial = 1842] [outer = (nil)] [url = about:blank] 20:13:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4714000 == 66 [pid = 8892] [id = 727] 20:13:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8a6b88c00) [pid = 8892] [serial = 2038] [outer = (nil)] 20:13:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8a6e26400) [pid = 8892] [serial = 2039] [outer = 0x7fd8a6b88c00] 20:13:17 INFO - PROCESS | 8892 | 1459566797755 Marionette INFO loaded listener.js 20:13:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8aa4dbc00) [pid = 8892] [serial = 2040] [outer = 0x7fd8a6b88c00] 20:13:18 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:18 INFO - document served over http requires an https 20:13:18 INFO - sub-resource via xhr-request using the meta-csp 20:13:18 INFO - delivery method with no-redirect and when 20:13:18 INFO - the target request is same-origin. 20:13:18 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1828ms 20:13:18 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:13:18 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ad7800 == 67 [pid = 8892] [id = 728] 20:13:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8a6e1a400) [pid = 8892] [serial = 2041] [outer = (nil)] 20:13:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8aa7db400) [pid = 8892] [serial = 2042] [outer = 0x7fd8a6e1a400] 20:13:18 INFO - PROCESS | 8892 | 1459566798872 Marionette INFO loaded listener.js 20:13:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8ad72f000) [pid = 8892] [serial = 2043] [outer = 0x7fd8a6e1a400] 20:13:19 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:19 INFO - document served over http requires an https 20:13:19 INFO - sub-resource via xhr-request using the meta-csp 20:13:19 INFO - delivery method with swap-origin-redirect and when 20:13:19 INFO - the target request is same-origin. 20:13:19 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1132ms 20:13:19 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:13:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b8d000 == 68 [pid = 8892] [id = 729] 20:13:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8a7809c00) [pid = 8892] [serial = 2044] [outer = (nil)] 20:13:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8ad75bc00) [pid = 8892] [serial = 2045] [outer = 0x7fd8a7809c00] 20:13:19 INFO - PROCESS | 8892 | 1459566799951 Marionette INFO loaded listener.js 20:13:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8adca0800) [pid = 8892] [serial = 2046] [outer = 0x7fd8a7809c00] 20:13:20 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:20 INFO - document served over http requires an http 20:13:20 INFO - sub-resource via fetch-request using the meta-referrer 20:13:20 INFO - delivery method with keep-origin-redirect and when 20:13:20 INFO - the target request is cross-origin. 20:13:20 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1081ms 20:13:20 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html 20:13:20 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d61000 == 69 [pid = 8892] [id = 730] 20:13:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8ad757000) [pid = 8892] [serial = 2047] [outer = (nil)] 20:13:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8adfda000) [pid = 8892] [serial = 2048] [outer = 0x7fd8ad757000] 20:13:21 INFO - PROCESS | 8892 | 1459566801013 Marionette INFO loaded listener.js 20:13:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8ae2c4000) [pid = 8892] [serial = 2049] [outer = 0x7fd8ad757000] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8adc9a400) [pid = 8892] [serial = 1951] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8a4f88800) [pid = 8892] [serial = 1867] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8ad759000) [pid = 8892] [serial = 1893] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566741197] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8ad731800) [pid = 8892] [serial = 1888] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8adb2a000) [pid = 8892] [serial = 1898] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8b0b8ac00) [pid = 8892] [serial = 1930] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8b0b8e400) [pid = 8892] [serial = 1935] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566757646] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8aa95b000) [pid = 8892] [serial = 1889] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8aa953c00) [pid = 8892] [serial = 1886] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8aa55fc00) [pid = 8892] [serial = 1946] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8aa4ce400) [pid = 8892] [serial = 1877] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8ad72cc00) [pid = 8892] [serial = 1891] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8af8b3400) [pid = 8892] [serial = 1916] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8a6b8c000) [pid = 8892] [serial = 1933] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8aa55e000) [pid = 8892] [serial = 1880] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8ae273c00) [pid = 8892] [serial = 1907] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8a53c4c00) [pid = 8892] [serial = 1941] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8ad75a400) [pid = 8892] [serial = 1896] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8adb30c00) [pid = 8892] [serial = 1904] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8ae274000) [pid = 8892] [serial = 1952] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8af8aac00) [pid = 8892] [serial = 1913] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8a6e1b400) [pid = 8892] [serial = 1871] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8aa7d9000) [pid = 8892] [serial = 1883] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8a8549800) [pid = 8892] [serial = 1874] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8adb24c00) [pid = 8892] [serial = 1899] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8a53bb000) [pid = 8892] [serial = 1936] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566757646] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8a6987000) [pid = 8892] [serial = 1931] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8aa960400) [pid = 8892] [serial = 1949] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8ad761400) [pid = 8892] [serial = 1894] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566741197] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8adca4400) [pid = 8892] [serial = 1955] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b07c3800) [pid = 8892] [serial = 1928] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8a6b89400) [pid = 8892] [serial = 1938] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8af954c00) [pid = 8892] [serial = 1922] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8af949c00) [pid = 8892] [serial = 1919] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8adb2ac00) [pid = 8892] [serial = 1901] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8afdc6400) [pid = 8892] [serial = 1925] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8af354c00) [pid = 8892] [serial = 1910] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8a6b87400) [pid = 8892] [serial = 1943] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8b0b91c00) [pid = 8892] [serial = 1958] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8aa4da400) [pid = 8892] [serial = 1945] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.no-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8a82dcc00) [pid = 8892] [serial = 1940] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8a8ea4000) [pid = 8892] [serial = 1954] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8a698c800) [pid = 8892] [serial = 1948] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8a53c3400) [pid = 8892] [serial = 1937] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8a53c8000) [pid = 8892] [serial = 1942] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8b07d0000) [pid = 8892] [serial = 1956] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8af8eac00) [pid = 8892] [serial = 1953] [outer = (nil)] [url = about:blank] 20:13:21 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8a9ab4800) [pid = 8892] [serial = 1869] [outer = (nil)] [url = about:blank] 20:13:21 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:21 INFO - document served over http requires an http 20:13:21 INFO - sub-resource via fetch-request using the meta-referrer 20:13:21 INFO - delivery method with no-redirect and when 20:13:21 INFO - the target request is cross-origin. 20:13:21 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html | took 1072ms 20:13:21 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:13:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5c3000 == 70 [pid = 8892] [id = 731] 20:13:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8adb24c00) [pid = 8892] [serial = 2050] [outer = (nil)] 20:13:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8adc9a400) [pid = 8892] [serial = 2051] [outer = 0x7fd8adb24c00] 20:13:22 INFO - PROCESS | 8892 | 1459566802182 Marionette INFO loaded listener.js 20:13:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8af359000) [pid = 8892] [serial = 2052] [outer = 0x7fd8adb24c00] 20:13:22 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:22 INFO - document served over http requires an http 20:13:22 INFO - sub-resource via fetch-request using the meta-referrer 20:13:22 INFO - delivery method with swap-origin-redirect and when 20:13:22 INFO - the target request is cross-origin. 20:13:22 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 973ms 20:13:22 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:13:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78db000 == 71 [pid = 8892] [id = 732] 20:13:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8aa569800) [pid = 8892] [serial = 2053] [outer = (nil)] 20:13:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8af357000) [pid = 8892] [serial = 2054] [outer = 0x7fd8aa569800] 20:13:23 INFO - PROCESS | 8892 | 1459566803172 Marionette INFO loaded listener.js 20:13:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8af948c00) [pid = 8892] [serial = 2055] [outer = 0x7fd8aa569800] 20:13:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adbd8000 == 72 [pid = 8892] [id = 733] 20:13:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8af8ee000) [pid = 8892] [serial = 2056] [outer = (nil)] 20:13:23 INFO - PROCESS | 8892 | [8892] WARNING: No inner window available!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/base/nsGlobalWindow.cpp, line 9255 20:13:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8a4f84000) [pid = 8892] [serial = 2057] [outer = 0x7fd8af8ee000] 20:13:23 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:23 INFO - document served over http requires an http 20:13:23 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:23 INFO - delivery method with keep-origin-redirect and when 20:13:23 INFO - the target request is cross-origin. 20:13:23 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1176ms 20:13:24 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:13:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b78800 == 73 [pid = 8892] [id = 734] 20:13:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8a47c7000) [pid = 8892] [serial = 2058] [outer = (nil)] 20:13:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8a82dd000) [pid = 8892] [serial = 2059] [outer = 0x7fd8a47c7000] 20:13:24 INFO - PROCESS | 8892 | 1459566804488 Marionette INFO loaded listener.js 20:13:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8aa4da000) [pid = 8892] [serial = 2060] [outer = 0x7fd8a47c7000] 20:13:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5b6000 == 74 [pid = 8892] [id = 735] 20:13:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8aa7e6800) [pid = 8892] [serial = 2061] [outer = (nil)] 20:13:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8ad72c400) [pid = 8892] [serial = 2062] [outer = 0x7fd8aa7e6800] 20:13:25 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:25 INFO - document served over http requires an http 20:13:25 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:25 INFO - delivery method with no-redirect and when 20:13:25 INFO - the target request is cross-origin. 20:13:25 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 1378ms 20:13:25 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:13:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8addcc000 == 75 [pid = 8892] [id = 736] 20:13:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8a698d800) [pid = 8892] [serial = 2063] [outer = (nil)] 20:13:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8aa7ec000) [pid = 8892] [serial = 2064] [outer = 0x7fd8a698d800] 20:13:25 INFO - PROCESS | 8892 | 1459566805822 Marionette INFO loaded listener.js 20:13:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8ae05a800) [pid = 8892] [serial = 2065] [outer = 0x7fd8a698d800] 20:13:26 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adeb3800 == 76 [pid = 8892] [id = 737] 20:13:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8af8aac00) [pid = 8892] [serial = 2066] [outer = (nil)] 20:13:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8ad72e000) [pid = 8892] [serial = 2067] [outer = 0x7fd8af8aac00] 20:13:26 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:26 INFO - document served over http requires an http 20:13:26 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:26 INFO - delivery method with swap-origin-redirect and when 20:13:26 INFO - the target request is cross-origin. 20:13:26 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 1376ms 20:13:26 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:13:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af69f800 == 77 [pid = 8892] [id = 738] 20:13:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8aa7df400) [pid = 8892] [serial = 2068] [outer = (nil)] 20:13:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8af8ad400) [pid = 8892] [serial = 2069] [outer = 0x7fd8aa7df400] 20:13:27 INFO - PROCESS | 8892 | 1459566807261 Marionette INFO loaded listener.js 20:13:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8afdc2000) [pid = 8892] [serial = 2070] [outer = 0x7fd8aa7df400] 20:13:28 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:28 INFO - document served over http requires an http 20:13:28 INFO - sub-resource via script-tag using the meta-referrer 20:13:28 INFO - delivery method with keep-origin-redirect and when 20:13:28 INFO - the target request is cross-origin. 20:13:28 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1382ms 20:13:28 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html 20:13:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affb0000 == 78 [pid = 8892] [id = 739] 20:13:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8ad761400) [pid = 8892] [serial = 2071] [outer = (nil)] 20:13:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8b07c7800) [pid = 8892] [serial = 2072] [outer = 0x7fd8ad761400] 20:13:28 INFO - PROCESS | 8892 | 1459566808568 Marionette INFO loaded listener.js 20:13:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8b14edc00) [pid = 8892] [serial = 2073] [outer = 0x7fd8ad761400] 20:13:29 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:29 INFO - document served over http requires an http 20:13:29 INFO - sub-resource via script-tag using the meta-referrer 20:13:29 INFO - delivery method with no-redirect and when 20:13:29 INFO - the target request is cross-origin. 20:13:29 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.no-redirect.http.html | took 1178ms 20:13:29 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:13:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b020c000 == 79 [pid = 8892] [id = 740] 20:13:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8b0790000) [pid = 8892] [serial = 2074] [outer = (nil)] 20:13:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8b16e0800) [pid = 8892] [serial = 2075] [outer = 0x7fd8b0790000] 20:13:29 INFO - PROCESS | 8892 | 1459566809766 Marionette INFO loaded listener.js 20:13:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8b28dcc00) [pid = 8892] [serial = 2076] [outer = 0x7fd8b0790000] 20:13:30 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:30 INFO - document served over http requires an http 20:13:30 INFO - sub-resource via script-tag using the meta-referrer 20:13:30 INFO - delivery method with swap-origin-redirect and when 20:13:30 INFO - the target request is cross-origin. 20:13:30 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1275ms 20:13:30 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:13:30 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b09d8800 == 80 [pid = 8892] [id = 741] 20:13:30 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8b2ecb000) [pid = 8892] [serial = 2077] [outer = (nil)] 20:13:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8b38c2c00) [pid = 8892] [serial = 2078] [outer = 0x7fd8b2ecb000] 20:13:31 INFO - PROCESS | 8892 | 1459566811049 Marionette INFO loaded listener.js 20:13:31 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8b6cd0800) [pid = 8892] [serial = 2079] [outer = 0x7fd8b2ecb000] 20:13:31 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:31 INFO - document served over http requires an http 20:13:31 INFO - sub-resource via xhr-request using the meta-referrer 20:13:31 INFO - delivery method with keep-origin-redirect and when 20:13:31 INFO - the target request is cross-origin. 20:13:31 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1175ms 20:13:31 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html 20:13:32 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13c6800 == 81 [pid = 8892] [id = 742] 20:13:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8b2ecb800) [pid = 8892] [serial = 2080] [outer = (nil)] 20:13:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8b6d1d000) [pid = 8892] [serial = 2081] [outer = 0x7fd8b2ecb800] 20:13:32 INFO - PROCESS | 8892 | 1459566812284 Marionette INFO loaded listener.js 20:13:32 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8b78c8c00) [pid = 8892] [serial = 2082] [outer = 0x7fd8b2ecb800] 20:13:33 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:33 INFO - document served over http requires an http 20:13:33 INFO - sub-resource via xhr-request using the meta-referrer 20:13:33 INFO - delivery method with no-redirect and when 20:13:33 INFO - the target request is cross-origin. 20:13:33 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1280ms 20:13:33 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:13:33 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2e2c800 == 82 [pid = 8892] [id = 743] 20:13:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8b66d5000) [pid = 8892] [serial = 2083] [outer = (nil)] 20:13:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8b8e1c800) [pid = 8892] [serial = 2084] [outer = 0x7fd8b66d5000] 20:13:33 INFO - PROCESS | 8892 | 1459566813540 Marionette INFO loaded listener.js 20:13:33 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8ba98d000) [pid = 8892] [serial = 2085] [outer = 0x7fd8b66d5000] 20:13:34 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:34 INFO - document served over http requires an http 20:13:34 INFO - sub-resource via xhr-request using the meta-referrer 20:13:34 INFO - delivery method with swap-origin-redirect and when 20:13:34 INFO - the target request is cross-origin. 20:13:34 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1236ms 20:13:34 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:13:34 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b6d47800 == 83 [pid = 8892] [id = 744] 20:13:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8b6cdb800) [pid = 8892] [serial = 2086] [outer = (nil)] 20:13:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8bc36bc00) [pid = 8892] [serial = 2087] [outer = 0x7fd8b6cdb800] 20:13:34 INFO - PROCESS | 8892 | 1459566814847 Marionette INFO loaded listener.js 20:13:34 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8bc7d8400) [pid = 8892] [serial = 2088] [outer = 0x7fd8b6cdb800] 20:13:35 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:35 INFO - document served over http requires an https 20:13:35 INFO - sub-resource via fetch-request using the meta-referrer 20:13:35 INFO - delivery method with keep-origin-redirect and when 20:13:35 INFO - the target request is cross-origin. 20:13:35 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1335ms 20:13:35 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html 20:13:36 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8bcce1000 == 84 [pid = 8892] [id = 745] 20:13:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8aa4d7000) [pid = 8892] [serial = 2089] [outer = (nil)] 20:13:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8bc7d8c00) [pid = 8892] [serial = 2090] [outer = 0x7fd8aa4d7000] 20:13:36 INFO - PROCESS | 8892 | 1459566816130 Marionette INFO loaded listener.js 20:13:36 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8bcadd800) [pid = 8892] [serial = 2091] [outer = 0x7fd8aa4d7000] 20:13:36 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:36 INFO - document served over http requires an https 20:13:36 INFO - sub-resource via fetch-request using the meta-referrer 20:13:36 INFO - delivery method with no-redirect and when 20:13:36 INFO - the target request is cross-origin. 20:13:36 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1277ms 20:13:36 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:13:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1022000 == 85 [pid = 8892] [id = 746] 20:13:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8bcade800) [pid = 8892] [serial = 2092] [outer = (nil)] 20:13:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8bcfc7c00) [pid = 8892] [serial = 2093] [outer = 0x7fd8bcade800] 20:13:37 INFO - PROCESS | 8892 | 1459566817441 Marionette INFO loaded listener.js 20:13:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8bd2d6400) [pid = 8892] [serial = 2094] [outer = 0x7fd8bcade800] 20:13:38 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:38 INFO - document served over http requires an https 20:13:38 INFO - sub-resource via fetch-request using the meta-referrer 20:13:38 INFO - delivery method with swap-origin-redirect and when 20:13:38 INFO - the target request is cross-origin. 20:13:38 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1325ms 20:13:38 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:13:38 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c104a800 == 86 [pid = 8892] [id = 747] 20:13:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8bcae1000) [pid = 8892] [serial = 2095] [outer = (nil)] 20:13:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8bd2d8400) [pid = 8892] [serial = 2096] [outer = 0x7fd8bcae1000] 20:13:38 INFO - PROCESS | 8892 | 1459566818749 Marionette INFO loaded listener.js 20:13:38 INFO - PROCESS | 8892 | ++DOMWINDOW == 195 (0x7fd8bd56c400) [pid = 8892] [serial = 2097] [outer = 0x7fd8bcae1000] 20:13:39 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1048800 == 87 [pid = 8892] [id = 748] 20:13:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 196 (0x7fd8bd5c2800) [pid = 8892] [serial = 2098] [outer = (nil)] 20:13:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 197 (0x7fd8ad757400) [pid = 8892] [serial = 2099] [outer = 0x7fd8bd5c2800] 20:13:39 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:39 INFO - document served over http requires an https 20:13:39 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:39 INFO - delivery method with keep-origin-redirect and when 20:13:39 INFO - the target request is cross-origin. 20:13:39 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1383ms 20:13:39 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:13:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1078000 == 88 [pid = 8892] [id = 749] 20:13:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 198 (0x7fd8a53c1c00) [pid = 8892] [serial = 2100] [outer = (nil)] 20:13:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 199 (0x7fd8bd5b7400) [pid = 8892] [serial = 2101] [outer = 0x7fd8a53c1c00] 20:13:40 INFO - PROCESS | 8892 | 1459566820254 Marionette INFO loaded listener.js 20:13:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 200 (0x7fd8bf02b000) [pid = 8892] [serial = 2102] [outer = 0x7fd8a53c1c00] 20:13:40 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c138b000 == 89 [pid = 8892] [id = 750] 20:13:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 201 (0x7fd8bf044000) [pid = 8892] [serial = 2103] [outer = (nil)] 20:13:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 202 (0x7fd8be579800) [pid = 8892] [serial = 2104] [outer = 0x7fd8bf044000] 20:13:41 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:41 INFO - document served over http requires an https 20:13:41 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:41 INFO - delivery method with no-redirect and when 20:13:41 INFO - the target request is cross-origin. 20:13:41 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1484ms 20:13:41 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:13:41 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c16a4800 == 90 [pid = 8892] [id = 751] 20:13:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 203 (0x7fd8aa955800) [pid = 8892] [serial = 2105] [outer = (nil)] 20:13:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 204 (0x7fd8bf02e000) [pid = 8892] [serial = 2106] [outer = 0x7fd8aa955800] 20:13:41 INFO - PROCESS | 8892 | 1459566821730 Marionette INFO loaded listener.js 20:13:41 INFO - PROCESS | 8892 | ++DOMWINDOW == 205 (0x7fd8bf0b5400) [pid = 8892] [serial = 2107] [outer = 0x7fd8aa955800] 20:13:42 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c16b9800 == 91 [pid = 8892] [id = 752] 20:13:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 206 (0x7fd8bf0b9000) [pid = 8892] [serial = 2108] [outer = (nil)] 20:13:42 INFO - PROCESS | 8892 | ++DOMWINDOW == 207 (0x7fd8bf07d800) [pid = 8892] [serial = 2109] [outer = 0x7fd8bf0b9000] 20:13:42 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:42 INFO - document served over http requires an https 20:13:42 INFO - sub-resource via iframe-tag using the meta-referrer 20:13:42 INFO - delivery method with swap-origin-redirect and when 20:13:42 INFO - the target request is cross-origin. 20:13:42 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1476ms 20:13:42 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:13:43 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1a87000 == 92 [pid = 8892] [id = 753] 20:13:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 208 (0x7fd8b28e8400) [pid = 8892] [serial = 2110] [outer = (nil)] 20:13:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 209 (0x7fd8c0e94400) [pid = 8892] [serial = 2111] [outer = 0x7fd8b28e8400] 20:13:43 INFO - PROCESS | 8892 | 1459566823236 Marionette INFO loaded listener.js 20:13:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 210 (0x7fd8c14ad400) [pid = 8892] [serial = 2112] [outer = 0x7fd8b28e8400] 20:13:44 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:44 INFO - document served over http requires an https 20:13:44 INFO - sub-resource via script-tag using the meta-referrer 20:13:44 INFO - delivery method with keep-origin-redirect and when 20:13:44 INFO - the target request is cross-origin. 20:13:44 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1424ms 20:13:44 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html 20:13:44 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1b1a800 == 93 [pid = 8892] [id = 754] 20:13:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 211 (0x7fd8c0e92000) [pid = 8892] [serial = 2113] [outer = (nil)] 20:13:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 212 (0x7fd8c14a6800) [pid = 8892] [serial = 2114] [outer = 0x7fd8c0e92000] 20:13:44 INFO - PROCESS | 8892 | 1459566824550 Marionette INFO loaded listener.js 20:13:44 INFO - PROCESS | 8892 | ++DOMWINDOW == 213 (0x7fd8c1678c00) [pid = 8892] [serial = 2115] [outer = 0x7fd8c0e92000] 20:13:45 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:45 INFO - document served over http requires an https 20:13:45 INFO - sub-resource via script-tag using the meta-referrer 20:13:45 INFO - delivery method with no-redirect and when 20:13:45 INFO - the target request is cross-origin. 20:13:45 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.no-redirect.http.html | took 1172ms 20:13:45 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:13:45 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c1bd6800 == 94 [pid = 8892] [id = 755] 20:13:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 214 (0x7fd8c0e99000) [pid = 8892] [serial = 2116] [outer = (nil)] 20:13:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 215 (0x7fd8c1679400) [pid = 8892] [serial = 2117] [outer = 0x7fd8c0e99000] 20:13:45 INFO - PROCESS | 8892 | 1459566825797 Marionette INFO loaded listener.js 20:13:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 216 (0x7fd8c1ca2c00) [pid = 8892] [serial = 2118] [outer = 0x7fd8c0e99000] 20:13:46 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:46 INFO - document served over http requires an https 20:13:46 INFO - sub-resource via script-tag using the meta-referrer 20:13:46 INFO - delivery method with swap-origin-redirect and when 20:13:46 INFO - the target request is cross-origin. 20:13:46 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1329ms 20:13:46 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:13:47 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c2b55000 == 95 [pid = 8892] [id = 756] 20:13:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 217 (0x7fd8b8e27c00) [pid = 8892] [serial = 2119] [outer = (nil)] 20:13:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 218 (0x7fd8c1c9c000) [pid = 8892] [serial = 2120] [outer = 0x7fd8b8e27c00] 20:13:47 INFO - PROCESS | 8892 | 1459566827109 Marionette INFO loaded listener.js 20:13:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 219 (0x7fd8c1ef4c00) [pid = 8892] [serial = 2121] [outer = 0x7fd8b8e27c00] 20:13:47 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:47 INFO - document served over http requires an https 20:13:47 INFO - sub-resource via xhr-request using the meta-referrer 20:13:47 INFO - delivery method with keep-origin-redirect and when 20:13:47 INFO - the target request is cross-origin. 20:13:47 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1279ms 20:13:47 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html 20:13:48 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c2ebe800 == 96 [pid = 8892] [id = 757] 20:13:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 220 (0x7fd8c1ef5000) [pid = 8892] [serial = 2122] [outer = (nil)] 20:13:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 221 (0x7fd8bc36a000) [pid = 8892] [serial = 2123] [outer = 0x7fd8c1ef5000] 20:13:48 INFO - PROCESS | 8892 | 1459566828440 Marionette INFO loaded listener.js 20:13:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 222 (0x7fd8c2b9dc00) [pid = 8892] [serial = 2124] [outer = 0x7fd8c1ef5000] 20:13:49 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:49 INFO - document served over http requires an https 20:13:49 INFO - sub-resource via xhr-request using the meta-referrer 20:13:49 INFO - delivery method with no-redirect and when 20:13:49 INFO - the target request is cross-origin. 20:13:49 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1268ms 20:13:49 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:13:49 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c384c800 == 97 [pid = 8892] [id = 758] 20:13:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 223 (0x7fd8c2ba8400) [pid = 8892] [serial = 2125] [outer = (nil)] 20:13:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 224 (0x7fd8c2ba9c00) [pid = 8892] [serial = 2126] [outer = 0x7fd8c2ba8400] 20:13:49 INFO - PROCESS | 8892 | 1459566829682 Marionette INFO loaded listener.js 20:13:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 225 (0x7fd8c2d96c00) [pid = 8892] [serial = 2127] [outer = 0x7fd8c2ba8400] 20:13:50 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:50 INFO - document served over http requires an https 20:13:50 INFO - sub-resource via xhr-request using the meta-referrer 20:13:50 INFO - delivery method with swap-origin-redirect and when 20:13:50 INFO - the target request is cross-origin. 20:13:50 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1280ms 20:13:50 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html 20:13:50 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8c3d04800 == 98 [pid = 8892] [id = 759] 20:13:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 226 (0x7fd8bcfc8000) [pid = 8892] [serial = 2128] [outer = (nil)] 20:13:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 227 (0x7fd8c2e0e000) [pid = 8892] [serial = 2129] [outer = 0x7fd8bcfc8000] 20:13:50 INFO - PROCESS | 8892 | 1459566830963 Marionette INFO loaded listener.js 20:13:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 228 (0x7fd8c2e07800) [pid = 8892] [serial = 2130] [outer = 0x7fd8bcfc8000] 20:13:51 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:51 INFO - document served over http requires an http 20:13:51 INFO - sub-resource via fetch-request using the meta-referrer 20:13:51 INFO - delivery method with keep-origin-redirect and when 20:13:51 INFO - the target request is same-origin. 20:13:51 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html | took 1273ms 20:13:51 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html 20:13:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ad8de800 == 99 [pid = 8892] [id = 760] 20:13:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 229 (0x7fd8a53c3400) [pid = 8892] [serial = 2131] [outer = (nil)] 20:13:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 230 (0x7fd8b2d15800) [pid = 8892] [serial = 2132] [outer = 0x7fd8a53c3400] 20:13:53 INFO - PROCESS | 8892 | 1459566833707 Marionette INFO loaded listener.js 20:13:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 231 (0x7fd8c329dc00) [pid = 8892] [serial = 2133] [outer = 0x7fd8a53c3400] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2ada800 == 98 [pid = 8892] [id = 702] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e2b000 == 97 [pid = 8892] [id = 703] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b3360800 == 96 [pid = 8892] [id = 704] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b3377800 == 95 [pid = 8892] [id = 705] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b5df2800 == 94 [pid = 8892] [id = 706] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6423800 == 93 [pid = 8892] [id = 707] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6603800 == 92 [pid = 8892] [id = 708] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6621000 == 91 [pid = 8892] [id = 709] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b68f4000 == 90 [pid = 8892] [id = 710] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6c68800 == 89 [pid = 8892] [id = 711] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b7895000 == 88 [pid = 8892] [id = 712] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b8cdd800 == 87 [pid = 8892] [id = 713] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba36c000 == 86 [pid = 8892] [id = 714] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba678800 == 85 [pid = 8892] [id = 715] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba96f800 == 84 [pid = 8892] [id = 716] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bc320000 == 83 [pid = 8892] [id = 717] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bc319800 == 82 [pid = 8892] [id = 718] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bccdb800 == 81 [pid = 8892] [id = 719] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bcf7f000 == 80 [pid = 8892] [id = 720] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd03b800 == 79 [pid = 8892] [id = 721] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd208800 == 78 [pid = 8892] [id = 722] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bd213000 == 77 [pid = 8892] [id = 723] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8be2e4000 == 76 [pid = 8892] [id = 724] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5a4800 == 75 [pid = 8892] [id = 726] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4714000 == 74 [pid = 8892] [id = 727] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ad7800 == 73 [pid = 8892] [id = 728] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a7b8d000 == 72 [pid = 8892] [id = 729] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a9d61000 == 71 [pid = 8892] [id = 730] 20:13:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5c3000 == 70 [pid = 8892] [id = 731] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd8000 == 69 [pid = 8892] [id = 733] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a7b78800 == 68 [pid = 8892] [id = 734] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5b6000 == 67 [pid = 8892] [id = 735] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0174000 == 66 [pid = 8892] [id = 698] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addcc000 == 65 [pid = 8892] [id = 736] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a5529000 == 64 [pid = 8892] [id = 689] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adeb3800 == 63 [pid = 8892] [id = 737] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af69f800 == 62 [pid = 8892] [id = 738] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affb0000 == 61 [pid = 8892] [id = 739] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b0ec6800 == 60 [pid = 8892] [id = 687] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b020c000 == 59 [pid = 8892] [id = 740] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b09d8800 == 58 [pid = 8892] [id = 741] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b13c6800 == 57 [pid = 8892] [id = 742] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b2e2c800 == 56 [pid = 8892] [id = 743] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6d47800 == 55 [pid = 8892] [id = 744] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1bc7000 == 54 [pid = 8892] [id = 659] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8bcce1000 == 53 [pid = 8892] [id = 745] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1022000 == 52 [pid = 8892] [id = 746] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c104a800 == 51 [pid = 8892] [id = 747] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1048800 == 50 [pid = 8892] [id = 748] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1078000 == 49 [pid = 8892] [id = 749] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c138b000 == 48 [pid = 8892] [id = 750] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c16a4800 == 47 [pid = 8892] [id = 751] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c16b9800 == 46 [pid = 8892] [id = 752] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1a87000 == 45 [pid = 8892] [id = 753] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1b1a800 == 44 [pid = 8892] [id = 754] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd7800 == 43 [pid = 8892] [id = 554] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c1bd6800 == 42 [pid = 8892] [id = 755] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c2b55000 == 41 [pid = 8892] [id = 756] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a471b000 == 40 [pid = 8892] [id = 547] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c2ebe800 == 39 [pid = 8892] [id = 757] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c384c800 == 38 [pid = 8892] [id = 758] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8c3d04800 == 37 [pid = 8892] [id = 759] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78db000 == 36 [pid = 8892] [id = 732] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6acd000 == 35 [pid = 8892] [id = 699] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b277c800 == 34 [pid = 8892] [id = 701] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aa5c5800 == 33 [pid = 8892] [id = 551] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a9d61800 == 32 [pid = 8892] [id = 549] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3da800 == 31 [pid = 8892] [id = 559] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3cc000 == 30 [pid = 8892] [id = 700] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d82800 == 29 [pid = 8892] [id = 560] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ba977000 == 28 [pid = 8892] [id = 725] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78d2000 == 27 [pid = 8892] [id = 548] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adf92800 == 26 [pid = 8892] [id = 558] 20:13:57 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8addc4800 == 25 [pid = 8892] [id = 561] 20:13:57 INFO - PROCESS | 8892 | --DOMWINDOW == 230 (0x7fd8a9ab7c00) [pid = 8892] [serial = 1944] [outer = (nil)] [url = about:blank] 20:13:57 INFO - PROCESS | 8892 | --DOMWINDOW == 229 (0x7fd8ae05e800) [pid = 8892] [serial = 1950] [outer = (nil)] [url = about:blank] 20:13:57 INFO - PROCESS | 8892 | --DOMWINDOW == 228 (0x7fd8a8556400) [pid = 8892] [serial = 1939] [outer = (nil)] [url = about:blank] 20:13:57 INFO - PROCESS | 8892 | --DOMWINDOW == 227 (0x7fd8aa7ef800) [pid = 8892] [serial = 1947] [outer = (nil)] [url = about:blank] 20:13:58 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:58 INFO - document served over http requires an http 20:13:58 INFO - sub-resource via fetch-request using the meta-referrer 20:13:58 INFO - delivery method with no-redirect and when 20:13:58 INFO - the target request is same-origin. 20:13:58 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.no-redirect.http.html | took 6584ms 20:13:58 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html 20:13:58 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d8e000 == 26 [pid = 8892] [id = 761] 20:13:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 228 (0x7fd8a53c0c00) [pid = 8892] [serial = 2134] [outer = (nil)] 20:13:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 229 (0x7fd8a6986000) [pid = 8892] [serial = 2135] [outer = 0x7fd8a53c0c00] 20:13:58 INFO - PROCESS | 8892 | 1459566838728 Marionette INFO loaded listener.js 20:13:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 230 (0x7fd8a698e800) [pid = 8892] [serial = 2136] [outer = 0x7fd8a53c0c00] 20:13:59 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:13:59 INFO - document served over http requires an http 20:13:59 INFO - sub-resource via fetch-request using the meta-referrer 20:13:59 INFO - delivery method with swap-origin-redirect and when 20:13:59 INFO - the target request is same-origin. 20:13:59 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html | took 977ms 20:13:59 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html 20:13:59 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ac8800 == 27 [pid = 8892] [id = 762] 20:13:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 231 (0x7fd8a53c1000) [pid = 8892] [serial = 2137] [outer = (nil)] 20:13:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 232 (0x7fd8a6b8bc00) [pid = 8892] [serial = 2138] [outer = 0x7fd8a53c1000] 20:13:59 INFO - PROCESS | 8892 | 1459566839722 Marionette INFO loaded listener.js 20:13:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 233 (0x7fd8a7803c00) [pid = 8892] [serial = 2139] [outer = 0x7fd8a53c1000] 20:14:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6cd1000 == 28 [pid = 8892] [id = 763] 20:14:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 234 (0x7fd8a82da400) [pid = 8892] [serial = 2140] [outer = (nil)] 20:14:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 235 (0x7fd8a7808000) [pid = 8892] [serial = 2141] [outer = 0x7fd8a82da400] 20:14:00 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:00 INFO - document served over http requires an http 20:14:00 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:00 INFO - delivery method with keep-origin-redirect and when 20:14:00 INFO - the target request is same-origin. 20:14:00 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html | took 1277ms 20:14:00 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html 20:14:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78bf800 == 29 [pid = 8892] [id = 764] 20:14:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 236 (0x7fd8a47cc400) [pid = 8892] [serial = 2142] [outer = (nil)] 20:14:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 237 (0x7fd8a82e7800) [pid = 8892] [serial = 2143] [outer = 0x7fd8a47cc400] 20:14:01 INFO - PROCESS | 8892 | 1459566841008 Marionette INFO loaded listener.js 20:14:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 238 (0x7fd8a8557800) [pid = 8892] [serial = 2144] [outer = 0x7fd8a47cc400] 20:14:01 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7b77800 == 30 [pid = 8892] [id = 765] 20:14:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 239 (0x7fd8a9aaa800) [pid = 8892] [serial = 2145] [outer = (nil)] 20:14:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 240 (0x7fd8a780bc00) [pid = 8892] [serial = 2146] [outer = 0x7fd8a9aaa800] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 239 (0x7fd8af94e000) [pid = 8892] [serial = 1924] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 238 (0x7fd8ad737000) [pid = 8892] [serial = 1900] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 237 (0x7fd8aa7f1400) [pid = 8892] [serial = 1885] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 236 (0x7fd8a53bbc00) [pid = 8892] [serial = 1870] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 235 (0x7fd8a9e19c00) [pid = 8892] [serial = 1879] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 234 (0x7fd8a8ea8800) [pid = 8892] [serial = 1903] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 233 (0x7fd8aa55c400) [pid = 8892] [serial = 1882] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 232 (0x7fd8aa562000) [pid = 8892] [serial = 1915] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 231 (0x7fd8af8ee800) [pid = 8892] [serial = 1921] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 230 (0x7fd8ae056400) [pid = 8892] [serial = 1909] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 229 (0x7fd8af8a6c00) [pid = 8892] [serial = 1918] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 228 (0x7fd8aa7f5c00) [pid = 8892] [serial = 1895] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 227 (0x7fd8b0786c00) [pid = 8892] [serial = 1927] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 226 (0x7fd8a9e1c400) [pid = 8892] [serial = 1906] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 225 (0x7fd8ae281800) [pid = 8892] [serial = 1912] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 224 (0x7fd8a53c6000) [pid = 8892] [serial = 1873] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/http-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 223 (0x7fd8a47d0800) [pid = 8892] [serial = 1890] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 222 (0x7fd8a780cc00) [pid = 8892] [serial = 1876] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 221 (0x7fd8a4f8cc00) [pid = 8892] [serial = 1932] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 220 (0x7fd8ba270800) [pid = 8892] [serial = 2019] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566788210] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 219 (0x7fd8a53bd800) [pid = 8892] [serial = 2029] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 218 (0x7fd8b8f9e800) [pid = 8892] [serial = 2014] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 217 (0x7fd8a8eac800) [pid = 8892] [serial = 1957] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/cross-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 216 (0x7fd8a698bc00) [pid = 8892] [serial = 2035] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 215 (0x7fd8ae280c00) [pid = 8892] [serial = 2016] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 214 (0x7fd8a6b88c00) [pid = 8892] [serial = 2038] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 213 (0x7fd8af8ee000) [pid = 8892] [serial = 2056] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 212 (0x7fd8a53bc800) [pid = 8892] [serial = 1960] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 211 (0x7fd8b78e6400) [pid = 8892] [serial = 2008] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 210 (0x7fd8b16d9000) [pid = 8892] [serial = 1972] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 209 (0x7fd8b38cb000) [pid = 8892] [serial = 1993] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 208 (0x7fd8afdc2c00) [pid = 8892] [serial = 2021] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 207 (0x7fd8b07c6000) [pid = 8892] [serial = 1974] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 206 (0x7fd8b2ed0400) [pid = 8892] [serial = 1990] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 205 (0x7fd8ba990000) [pid = 8892] [serial = 2024] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 204 (0x7fd8b1b32000) [pid = 8892] [serial = 1984] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 203 (0x7fd8b2ec5c00) [pid = 8892] [serial = 1982] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 202 (0x7fd8ad757000) [pid = 8892] [serial = 2047] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 201 (0x7fd8b1b2f400) [pid = 8892] [serial = 1979] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 200 (0x7fd8adb24c00) [pid = 8892] [serial = 2050] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 199 (0x7fd8b28d9400) [pid = 8892] [serial = 1987] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/script-tag/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 198 (0x7fd8b1b31400) [pid = 8892] [serial = 1977] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566772796] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 197 (0x7fd8adfd3c00) [pid = 8892] [serial = 1969] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 196 (0x7fd8b8d80400) [pid = 8892] [serial = 2011] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 195 (0x7fd8b1692800) [pid = 8892] [serial = 2026] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 194 (0x7fd8b66d5400) [pid = 8892] [serial = 1996] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 193 (0x7fd8aa95f400) [pid = 8892] [serial = 1966] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 192 (0x7fd8b78c3000) [pid = 8892] [serial = 2005] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 191 (0x7fd8a53c2c00) [pid = 8892] [serial = 2032] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 190 (0x7fd8aa569800) [pid = 8892] [serial = 2053] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/iframe-tag/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 189 (0x7fd8a53c5800) [pid = 8892] [serial = 1963] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/fetch-request/generic.no-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 188 (0x7fd8a7809c00) [pid = 8892] [serial = 2044] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-referrer/cross-origin/http-http/fetch-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 187 (0x7fd8a6e1a400) [pid = 8892] [serial = 2041] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 186 (0x7fd8b6cdbc00) [pid = 8892] [serial = 2002] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 185 (0x7fd8b66da800) [pid = 8892] [serial = 1999] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/unset-referrer-policy/meta-csp/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 184 (0x7fd8af357000) [pid = 8892] [serial = 2054] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 183 (0x7fd8a4f84000) [pid = 8892] [serial = 2057] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 182 (0x7fd8b78f0000) [pid = 8892] [serial = 2006] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 181 (0x7fd8b28e3400) [pid = 8892] [serial = 1980] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 180 (0x7fd8b0b8f400) [pid = 8892] [serial = 1970] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 179 (0x7fd8ba272400) [pid = 8892] [serial = 2020] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566788210] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 178 (0x7fd8b16dc000) [pid = 8892] [serial = 1975] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 177 (0x7fd8b14eb000) [pid = 8892] [serial = 1973] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 176 (0x7fd8b2d19000) [pid = 8892] [serial = 1983] [outer = (nil)] [url = http://www1.web-platform.test:8000/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 175 (0x7fd8b8f9c400) [pid = 8892] [serial = 2017] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 174 (0x7fd8ba26dc00) [pid = 8892] [serial = 2022] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 173 (0x7fd8aa4d0000) [pid = 8892] [serial = 2033] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 172 (0x7fd8b64f0000) [pid = 8892] [serial = 1994] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 171 (0x7fd8b6d26800) [pid = 8892] [serial = 2000] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 170 (0x7fd8a9ab9400) [pid = 8892] [serial = 1964] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 169 (0x7fd8b18b7000) [pid = 8892] [serial = 1978] [outer = (nil)] [url = http://web-platform.test:8000/referrer-policy/generic/subresource/document.py?redirection=no-redirect&cache_destroyer=1459566772796] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 168 (0x7fd8b2ec8400) [pid = 8892] [serial = 1985] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 167 (0x7fd8b8f9d400) [pid = 8892] [serial = 2015] [outer = (nil)] [url = https://web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 166 (0x7fd8a6e26400) [pid = 8892] [serial = 2039] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 165 (0x7fd8adc9a400) [pid = 8892] [serial = 2051] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 164 (0x7fd8b78cf000) [pid = 8892] [serial = 2003] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 163 (0x7fd8b5d47c00) [pid = 8892] [serial = 1991] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 162 (0x7fd8b6ccdc00) [pid = 8892] [serial = 1997] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 161 (0x7fd8b8d83800) [pid = 8892] [serial = 2009] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 160 (0x7fd8ae054800) [pid = 8892] [serial = 1967] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 159 (0x7fd8b38c3800) [pid = 8892] [serial = 1988] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 158 (0x7fd8aa7db400) [pid = 8892] [serial = 2042] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 157 (0x7fd8b8e1d000) [pid = 8892] [serial = 2012] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 156 (0x7fd8adfda000) [pid = 8892] [serial = 2048] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 155 (0x7fd8ba273400) [pid = 8892] [serial = 2025] [outer = (nil)] [url = https://www1.web-platform.test:8443/referrer-policy/generic/subresource/document.py] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 154 (0x7fd8ad75bc00) [pid = 8892] [serial = 2045] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 153 (0x7fd8a780f000) [pid = 8892] [serial = 2036] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 152 (0x7fd8ba992800) [pid = 8892] [serial = 2027] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 151 (0x7fd8a6985000) [pid = 8892] [serial = 1961] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 150 (0x7fd8b16d4800) [pid = 8892] [serial = 2030] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 149 (0x7fd8b14e5c00) [pid = 8892] [serial = 1959] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 148 (0x7fd8ad72f000) [pid = 8892] [serial = 2043] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 147 (0x7fd8b0789800) [pid = 8892] [serial = 1926] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 146 (0x7fd8adca6800) [pid = 8892] [serial = 1902] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 145 (0x7fd8aa960000) [pid = 8892] [serial = 1887] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 144 (0x7fd8b66d9c00) [pid = 8892] [serial = 1995] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 143 (0x7fd8a780a800) [pid = 8892] [serial = 1872] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 142 (0x7fd8a9e1a000) [pid = 8892] [serial = 2037] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 141 (0x7fd8aa568800) [pid = 8892] [serial = 1881] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 140 (0x7fd8ae055400) [pid = 8892] [serial = 1905] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 139 (0x7fd8aa7dd000) [pid = 8892] [serial = 1884] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 138 (0x7fd8b78c9800) [pid = 8892] [serial = 2001] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 137 (0x7fd8af947800) [pid = 8892] [serial = 1917] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 136 (0x7fd8afdc4800) [pid = 8892] [serial = 1923] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 135 (0x7fd8af361800) [pid = 8892] [serial = 1911] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 134 (0x7fd8afb71c00) [pid = 8892] [serial = 1920] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 133 (0x7fd8adb27000) [pid = 8892] [serial = 1897] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 132 (0x7fd8b07d0800) [pid = 8892] [serial = 1929] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 131 (0x7fd8b6cd6400) [pid = 8892] [serial = 1998] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 130 (0x7fd8ae2cbc00) [pid = 8892] [serial = 1908] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 129 (0x7fd8af8e6400) [pid = 8892] [serial = 1914] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 128 (0x7fd8a9ab8000) [pid = 8892] [serial = 1875] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 127 (0x7fd8ad756400) [pid = 8892] [serial = 1892] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 126 (0x7fd8aa4d2c00) [pid = 8892] [serial = 1878] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 125 (0x7fd8aa4dbc00) [pid = 8892] [serial = 2040] [outer = (nil)] [url = about:blank] 20:14:04 INFO - PROCESS | 8892 | --DOMWINDOW == 124 (0x7fd8b0b8d400) [pid = 8892] [serial = 1934] [outer = (nil)] [url = about:blank] 20:14:04 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:04 INFO - document served over http requires an http 20:14:04 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:04 INFO - delivery method with no-redirect and when 20:14:04 INFO - the target request is same-origin. 20:14:04 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.no-redirect.http.html | took 4045ms 20:14:04 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html 20:14:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a80e3000 == 31 [pid = 8892] [id = 766] 20:14:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 125 (0x7fd8a4f80400) [pid = 8892] [serial = 2147] [outer = (nil)] 20:14:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 126 (0x7fd8a780f000) [pid = 8892] [serial = 2148] [outer = 0x7fd8a4f80400] 20:14:04 INFO - PROCESS | 8892 | 1459566844940 Marionette INFO loaded listener.js 20:14:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 127 (0x7fd8a9e12c00) [pid = 8892] [serial = 2149] [outer = 0x7fd8a4f80400] 20:14:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85ca800 == 32 [pid = 8892] [id = 767] 20:14:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 128 (0x7fd8a9e16000) [pid = 8892] [serial = 2150] [outer = (nil)] 20:14:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 129 (0x7fd8a9ab5800) [pid = 8892] [serial = 2151] [outer = 0x7fd8a9e16000] 20:14:05 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:05 INFO - document served over http requires an http 20:14:05 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:05 INFO - delivery method with swap-origin-redirect and when 20:14:05 INFO - the target request is same-origin. 20:14:05 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/iframe-tag/generic.swap-origin-redirect.http.html | took 973ms 20:14:05 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html 20:14:05 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d61000 == 33 [pid = 8892] [id = 768] 20:14:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 130 (0x7fd8a47c3c00) [pid = 8892] [serial = 2152] [outer = (nil)] 20:14:05 INFO - PROCESS | 8892 | ++DOMWINDOW == 131 (0x7fd8a8550400) [pid = 8892] [serial = 2153] [outer = 0x7fd8a47c3c00] 20:14:05 INFO - PROCESS | 8892 | 1459566845970 Marionette INFO loaded listener.js 20:14:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 132 (0x7fd8aa4dd000) [pid = 8892] [serial = 2154] [outer = 0x7fd8a47c3c00] 20:14:06 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:06 INFO - document served over http requires an http 20:14:06 INFO - sub-resource via script-tag using the meta-referrer 20:14:06 INFO - delivery method with keep-origin-redirect and when 20:14:06 INFO - the target request is same-origin. 20:14:06 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.keep-origin-redirect.http.html | took 1126ms 20:14:06 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html 20:14:07 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5526800 == 34 [pid = 8892] [id = 769] 20:14:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 133 (0x7fd8a47c4400) [pid = 8892] [serial = 2155] [outer = (nil)] 20:14:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 134 (0x7fd8a698bc00) [pid = 8892] [serial = 2156] [outer = 0x7fd8a47c4400] 20:14:07 INFO - PROCESS | 8892 | 1459566847243 Marionette INFO loaded listener.js 20:14:07 INFO - PROCESS | 8892 | ++DOMWINDOW == 135 (0x7fd8a82dc000) [pid = 8892] [serial = 2157] [outer = 0x7fd8a47c4400] 20:14:08 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:08 INFO - document served over http requires an http 20:14:08 INFO - sub-resource via script-tag using the meta-referrer 20:14:08 INFO - delivery method with no-redirect and when 20:14:08 INFO - the target request is same-origin. 20:14:08 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.no-redirect.http.html | took 1238ms 20:14:08 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html 20:14:08 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85b5000 == 35 [pid = 8892] [id = 770] 20:14:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 136 (0x7fd8a4f83c00) [pid = 8892] [serial = 2158] [outer = (nil)] 20:14:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 137 (0x7fd8a8ead400) [pid = 8892] [serial = 2159] [outer = 0x7fd8a4f83c00] 20:14:08 INFO - PROCESS | 8892 | 1459566848489 Marionette INFO loaded listener.js 20:14:08 INFO - PROCESS | 8892 | ++DOMWINDOW == 138 (0x7fd8aa560800) [pid = 8892] [serial = 2160] [outer = 0x7fd8a4f83c00] 20:14:09 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:09 INFO - document served over http requires an http 20:14:09 INFO - sub-resource via script-tag using the meta-referrer 20:14:09 INFO - delivery method with swap-origin-redirect and when 20:14:09 INFO - the target request is same-origin. 20:14:09 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/script-tag/generic.swap-origin-redirect.http.html | took 1285ms 20:14:09 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html 20:14:09 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5b1800 == 36 [pid = 8892] [id = 771] 20:14:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 139 (0x7fd8a53be000) [pid = 8892] [serial = 2161] [outer = (nil)] 20:14:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 140 (0x7fd8aa7da800) [pid = 8892] [serial = 2162] [outer = 0x7fd8a53be000] 20:14:09 INFO - PROCESS | 8892 | 1459566849787 Marionette INFO loaded listener.js 20:14:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 141 (0x7fd8aa7e8800) [pid = 8892] [serial = 2163] [outer = 0x7fd8a53be000] 20:14:10 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:10 INFO - document served over http requires an http 20:14:10 INFO - sub-resource via xhr-request using the meta-referrer 20:14:10 INFO - delivery method with keep-origin-redirect and when 20:14:10 INFO - the target request is same-origin. 20:14:10 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.keep-origin-redirect.http.html | took 1188ms 20:14:10 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html 20:14:10 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a78be000 == 37 [pid = 8892] [id = 772] 20:14:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 142 (0x7fd8aa56b400) [pid = 8892] [serial = 2164] [outer = (nil)] 20:14:10 INFO - PROCESS | 8892 | ++DOMWINDOW == 143 (0x7fd8aa7f2400) [pid = 8892] [serial = 2165] [outer = 0x7fd8aa56b400] 20:14:10 INFO - PROCESS | 8892 | 1459566850992 Marionette INFO loaded listener.js 20:14:11 INFO - PROCESS | 8892 | ++DOMWINDOW == 144 (0x7fd8aa957000) [pid = 8892] [serial = 2166] [outer = 0x7fd8aa56b400] 20:14:11 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:11 INFO - document served over http requires an http 20:14:11 INFO - sub-resource via xhr-request using the meta-referrer 20:14:11 INFO - delivery method with no-redirect and when 20:14:11 INFO - the target request is same-origin. 20:14:11 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.no-redirect.http.html | took 1226ms 20:14:11 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html 20:14:12 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8ad8cd800 == 38 [pid = 8892] [id = 773] 20:14:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 145 (0x7fd8aa4cf800) [pid = 8892] [serial = 2167] [outer = (nil)] 20:14:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 146 (0x7fd8aa960000) [pid = 8892] [serial = 2168] [outer = 0x7fd8aa4cf800] 20:14:12 INFO - PROCESS | 8892 | 1459566852212 Marionette INFO loaded listener.js 20:14:12 INFO - PROCESS | 8892 | ++DOMWINDOW == 147 (0x7fd8ad739800) [pid = 8892] [serial = 2169] [outer = 0x7fd8aa4cf800] 20:14:12 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:12 INFO - document served over http requires an http 20:14:12 INFO - sub-resource via xhr-request using the meta-referrer 20:14:12 INFO - delivery method with swap-origin-redirect and when 20:14:12 INFO - the target request is same-origin. 20:14:12 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-http/xhr-request/generic.swap-origin-redirect.http.html | took 1173ms 20:14:13 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html 20:14:13 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d60800 == 39 [pid = 8892] [id = 774] 20:14:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 148 (0x7fd8adb26000) [pid = 8892] [serial = 2170] [outer = (nil)] 20:14:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 149 (0x7fd8adb27800) [pid = 8892] [serial = 2171] [outer = 0x7fd8adb26000] 20:14:13 INFO - PROCESS | 8892 | 1459566853487 Marionette INFO loaded listener.js 20:14:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 150 (0x7fd8adb31400) [pid = 8892] [serial = 2172] [outer = 0x7fd8adb26000] 20:14:14 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:14 INFO - document served over http requires an https 20:14:14 INFO - sub-resource via fetch-request using the meta-referrer 20:14:14 INFO - delivery method with keep-origin-redirect and when 20:14:14 INFO - the target request is same-origin. 20:14:14 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.keep-origin-redirect.http.html | took 1325ms 20:14:14 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html 20:14:14 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adea5800 == 40 [pid = 8892] [id = 775] 20:14:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 151 (0x7fd8a4f84c00) [pid = 8892] [serial = 2173] [outer = (nil)] 20:14:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 152 (0x7fd8adc9e400) [pid = 8892] [serial = 2174] [outer = 0x7fd8a4f84c00] 20:14:14 INFO - PROCESS | 8892 | 1459566854752 Marionette INFO loaded listener.js 20:14:14 INFO - PROCESS | 8892 | ++DOMWINDOW == 153 (0x7fd8adfdb000) [pid = 8892] [serial = 2175] [outer = 0x7fd8a4f84c00] 20:14:15 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:15 INFO - document served over http requires an https 20:14:15 INFO - sub-resource via fetch-request using the meta-referrer 20:14:15 INFO - delivery method with no-redirect and when 20:14:15 INFO - the target request is same-origin. 20:14:15 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.no-redirect.http.html | took 1226ms 20:14:15 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html 20:14:15 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8adf8a800 == 41 [pid = 8892] [id = 776] 20:14:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 154 (0x7fd8adb26400) [pid = 8892] [serial = 2176] [outer = (nil)] 20:14:15 INFO - PROCESS | 8892 | ++DOMWINDOW == 155 (0x7fd8adfdd800) [pid = 8892] [serial = 2177] [outer = 0x7fd8adb26400] 20:14:15 INFO - PROCESS | 8892 | 1459566855964 Marionette INFO loaded listener.js 20:14:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 156 (0x7fd8ae055c00) [pid = 8892] [serial = 2178] [outer = 0x7fd8adb26400] 20:14:16 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:16 INFO - document served over http requires an https 20:14:16 INFO - sub-resource via fetch-request using the meta-referrer 20:14:16 INFO - delivery method with swap-origin-redirect and when 20:14:16 INFO - the target request is same-origin. 20:14:16 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/fetch-request/generic.swap-origin-redirect.http.html | took 1238ms 20:14:16 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html 20:14:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af3cb000 == 42 [pid = 8892] [id = 777] 20:14:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 157 (0x7fd8adfdbc00) [pid = 8892] [serial = 2179] [outer = (nil)] 20:14:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 158 (0x7fd8ae05e000) [pid = 8892] [serial = 2180] [outer = 0x7fd8adfdbc00] 20:14:17 INFO - PROCESS | 8892 | 1459566857207 Marionette INFO loaded listener.js 20:14:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 159 (0x7fd8ae27b000) [pid = 8892] [serial = 2181] [outer = 0x7fd8adfdbc00] 20:14:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a7020800 == 43 [pid = 8892] [id = 778] 20:14:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 160 (0x7fd8ae27d000) [pid = 8892] [serial = 2182] [outer = (nil)] 20:14:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 161 (0x7fd8ae05b000) [pid = 8892] [serial = 2183] [outer = 0x7fd8ae27d000] 20:14:18 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:18 INFO - document served over http requires an https 20:14:18 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:18 INFO - delivery method with keep-origin-redirect and when 20:14:18 INFO - the target request is same-origin. 20:14:18 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.keep-origin-redirect.http.html | took 1283ms 20:14:18 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html 20:14:18 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af69c800 == 44 [pid = 8892] [id = 779] 20:14:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 162 (0x7fd8a6b88c00) [pid = 8892] [serial = 2184] [outer = (nil)] 20:14:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 163 (0x7fd8ae27c000) [pid = 8892] [serial = 2185] [outer = 0x7fd8a6b88c00] 20:14:18 INFO - PROCESS | 8892 | 1459566858526 Marionette INFO loaded listener.js 20:14:18 INFO - PROCESS | 8892 | ++DOMWINDOW == 164 (0x7fd8ae2cf800) [pid = 8892] [serial = 2186] [outer = 0x7fd8a6b88c00] 20:14:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6c2800 == 45 [pid = 8892] [id = 780] 20:14:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 165 (0x7fd8af354c00) [pid = 8892] [serial = 2187] [outer = (nil)] 20:14:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 166 (0x7fd8af359800) [pid = 8892] [serial = 2188] [outer = 0x7fd8af354c00] 20:14:19 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:19 INFO - document served over http requires an https 20:14:19 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:19 INFO - delivery method with no-redirect and when 20:14:19 INFO - the target request is same-origin. 20:14:19 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.no-redirect.http.html | took 1278ms 20:14:19 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html 20:14:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af96a800 == 46 [pid = 8892] [id = 781] 20:14:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 167 (0x7fd8a8eab800) [pid = 8892] [serial = 2189] [outer = (nil)] 20:14:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 168 (0x7fd8af359c00) [pid = 8892] [serial = 2190] [outer = 0x7fd8a8eab800] 20:14:19 INFO - PROCESS | 8892 | 1459566859844 Marionette INFO loaded listener.js 20:14:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 169 (0x7fd8af8e8400) [pid = 8892] [serial = 2191] [outer = 0x7fd8a8eab800] 20:14:20 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affb6000 == 47 [pid = 8892] [id = 782] 20:14:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 170 (0x7fd8af949000) [pid = 8892] [serial = 2192] [outer = (nil)] 20:14:20 INFO - PROCESS | 8892 | ++DOMWINDOW == 171 (0x7fd8af8ec400) [pid = 8892] [serial = 2193] [outer = 0x7fd8af949000] 20:14:20 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:20 INFO - document served over http requires an https 20:14:20 INFO - sub-resource via iframe-tag using the meta-referrer 20:14:20 INFO - delivery method with swap-origin-redirect and when 20:14:20 INFO - the target request is same-origin. 20:14:20 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/iframe-tag/generic.swap-origin-redirect.http.html | took 1376ms 20:14:20 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html 20:14:21 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affbf000 == 48 [pid = 8892] [id = 783] 20:14:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 172 (0x7fd8a9ab1000) [pid = 8892] [serial = 2194] [outer = (nil)] 20:14:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 173 (0x7fd8af8e8000) [pid = 8892] [serial = 2195] [outer = 0x7fd8a9ab1000] 20:14:21 INFO - PROCESS | 8892 | 1459566861231 Marionette INFO loaded listener.js 20:14:21 INFO - PROCESS | 8892 | ++DOMWINDOW == 174 (0x7fd8afb71c00) [pid = 8892] [serial = 2196] [outer = 0x7fd8a9ab1000] 20:14:22 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:22 INFO - document served over http requires an https 20:14:22 INFO - sub-resource via script-tag using the meta-referrer 20:14:22 INFO - delivery method with keep-origin-redirect and when 20:14:22 INFO - the target request is same-origin. 20:14:22 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.keep-origin-redirect.http.html | took 1328ms 20:14:22 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html 20:14:22 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0211000 == 49 [pid = 8892] [id = 784] 20:14:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 175 (0x7fd8a780c000) [pid = 8892] [serial = 2197] [outer = (nil)] 20:14:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 176 (0x7fd8af950000) [pid = 8892] [serial = 2198] [outer = 0x7fd8a780c000] 20:14:22 INFO - PROCESS | 8892 | 1459566862603 Marionette INFO loaded listener.js 20:14:22 INFO - PROCESS | 8892 | ++DOMWINDOW == 177 (0x7fd8afdbe800) [pid = 8892] [serial = 2199] [outer = 0x7fd8a780c000] 20:14:23 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:23 INFO - document served over http requires an https 20:14:23 INFO - sub-resource via script-tag using the meta-referrer 20:14:23 INFO - delivery method with no-redirect and when 20:14:23 INFO - the target request is same-origin. 20:14:23 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.no-redirect.http.html | took 1275ms 20:14:23 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html 20:14:23 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b046c800 == 50 [pid = 8892] [id = 785] 20:14:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 178 (0x7fd8aa7e5000) [pid = 8892] [serial = 2200] [outer = (nil)] 20:14:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 179 (0x7fd8afdc4000) [pid = 8892] [serial = 2201] [outer = 0x7fd8aa7e5000] 20:14:23 INFO - PROCESS | 8892 | 1459566863839 Marionette INFO loaded listener.js 20:14:23 INFO - PROCESS | 8892 | ++DOMWINDOW == 180 (0x7fd8b0787c00) [pid = 8892] [serial = 2202] [outer = 0x7fd8aa7e5000] 20:14:24 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:24 INFO - document served over http requires an https 20:14:24 INFO - sub-resource via script-tag using the meta-referrer 20:14:24 INFO - delivery method with swap-origin-redirect and when 20:14:24 INFO - the target request is same-origin. 20:14:24 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/script-tag/generic.swap-origin-redirect.http.html | took 1279ms 20:14:24 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html 20:14:25 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b0eb5000 == 51 [pid = 8892] [id = 786] 20:14:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 181 (0x7fd8afdbf800) [pid = 8892] [serial = 2203] [outer = (nil)] 20:14:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 182 (0x7fd8afdc8400) [pid = 8892] [serial = 2204] [outer = 0x7fd8afdbf800] 20:14:25 INFO - PROCESS | 8892 | 1459566865134 Marionette INFO loaded listener.js 20:14:25 INFO - PROCESS | 8892 | ++DOMWINDOW == 183 (0x7fd8b07c7000) [pid = 8892] [serial = 2205] [outer = 0x7fd8afdbf800] 20:14:25 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:25 INFO - document served over http requires an https 20:14:25 INFO - sub-resource via xhr-request using the meta-referrer 20:14:25 INFO - delivery method with keep-origin-redirect and when 20:14:25 INFO - the target request is same-origin. 20:14:25 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.keep-origin-redirect.http.html | took 1226ms 20:14:25 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html 20:14:26 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b13db000 == 52 [pid = 8892] [id = 787] 20:14:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 184 (0x7fd8afdc8000) [pid = 8892] [serial = 2206] [outer = (nil)] 20:14:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 185 (0x7fd8ad72c800) [pid = 8892] [serial = 2207] [outer = 0x7fd8afdc8000] 20:14:26 INFO - PROCESS | 8892 | 1459566866377 Marionette INFO loaded listener.js 20:14:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 186 (0x7fd8b0b8cc00) [pid = 8892] [serial = 2208] [outer = 0x7fd8afdc8000] 20:14:27 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:27 INFO - document served over http requires an https 20:14:27 INFO - sub-resource via xhr-request using the meta-referrer 20:14:27 INFO - delivery method with no-redirect and when 20:14:27 INFO - the target request is same-origin. 20:14:27 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.no-redirect.http.html | took 1200ms 20:14:27 INFO - TEST-START | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html 20:14:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2788000 == 53 [pid = 8892] [id = 788] 20:14:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 187 (0x7fd8b07c8400) [pid = 8892] [serial = 2209] [outer = (nil)] 20:14:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 188 (0x7fd8b0b92400) [pid = 8892] [serial = 2210] [outer = 0x7fd8b07c8400] 20:14:27 INFO - PROCESS | 8892 | 1459566867577 Marionette INFO loaded listener.js 20:14:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 189 (0x7fd8b14e7000) [pid = 8892] [serial = 2211] [outer = 0x7fd8b07c8400] 20:14:28 INFO - TEST-PASS | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | The referrer URL is stripped-referrer when a 20:14:28 INFO - document served over http requires an https 20:14:28 INFO - sub-resource via xhr-request using the meta-referrer 20:14:28 INFO - delivery method with swap-origin-redirect and when 20:14:28 INFO - the target request is same-origin. 20:14:28 INFO - TEST-OK | /referrer-policy/unset-referrer-policy/meta-referrer/same-origin/http-https/xhr-request/generic.swap-origin-redirect.http.html | took 1223ms 20:14:28 INFO - TEST-START | /resource-timing/test_resource_timing.html 20:14:28 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b2add800 == 54 [pid = 8892] [id = 789] 20:14:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 190 (0x7fd8b07cb400) [pid = 8892] [serial = 2212] [outer = (nil)] 20:14:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 191 (0x7fd8b14ecc00) [pid = 8892] [serial = 2213] [outer = 0x7fd8b07cb400] 20:14:28 INFO - PROCESS | 8892 | 1459566868841 Marionette INFO loaded listener.js 20:14:28 INFO - PROCESS | 8892 | ++DOMWINDOW == 192 (0x7fd8b169f000) [pid = 8892] [serial = 2214] [outer = 0x7fd8b07cb400] 20:14:29 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b3363800 == 55 [pid = 8892] [id = 790] 20:14:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 193 (0x7fd8b16da400) [pid = 8892] [serial = 2215] [outer = (nil)] 20:14:29 INFO - PROCESS | 8892 | ++DOMWINDOW == 194 (0x7fd8b18adc00) [pid = 8892] [serial = 2216] [outer = 0x7fd8b16da400] 20:14:29 INFO - TEST-PASS | /resource-timing/test_resource_timing.html | window.performance.getEntriesByName() and window.performance.getEntriesByNameType() return same data (iframe) 20:14:29 INFO - TEST-FAIL | /resource-timing/test_resource_timing.html | PerformanceEntry has correct name, initiatorType, startTime, and duration (iframe) - assert_equals: expected "iframe" but got "subdocument" 20:14:29 INFO - resource_load/<@http://web-platform.test:8000/resource-timing/test_resource_timing.js:155:9 20:14:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:14:29 INFO - resource_load@http://web-platform.test:8000/resource-timing/test_resource_timing.js:151:5 20:14:29 INFO - onload/element.onloadSelection.addRange() tests 20:17:27 INFO - Selection.addRange() tests 20:17:27 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:27 INFO - " 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:27 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:27 INFO - " 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:27 INFO - TEST-PASS | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:27 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:27 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:27 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:27 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:27 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:27 INFO - TEST-FAIL | /selection/addRange.html | Range 0 [paras[0].firstChild, 0, paras[0].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:27 INFO - Selection.addRange() tests 20:17:28 INFO - Selection.addRange() tests 20:17:28 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO - " 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO - " 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 1 [paras[0].firstChild, 0, paras[0].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:28 INFO - Selection.addRange() tests 20:17:28 INFO - Selection.addRange() tests 20:17:28 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO - " 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:28 INFO - " 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:28 INFO - TEST-PASS | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:28 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:28 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:28 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:28 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:28 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:28 INFO - TEST-FAIL | /selection/addRange.html | Range 2 [paras[0].firstChild, 2, paras[0].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:28 INFO - Selection.addRange() tests 20:17:29 INFO - Selection.addRange() tests 20:17:29 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO - " 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO - " 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 3 [paras[0].firstChild, 2, paras[0].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:29 INFO - Selection.addRange() tests 20:17:29 INFO - Selection.addRange() tests 20:17:29 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO - " 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:29 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:29 INFO - " 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:29 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:29 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:29 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:29 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:29 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:29 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 4 [paras[1].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:30 INFO - Selection.addRange() tests 20:17:30 INFO - Selection.addRange() tests 20:17:30 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:30 INFO - " 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:30 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:30 INFO - " 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:30 INFO - TEST-PASS | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:30 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:30 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:30 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:30 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:30 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:30 INFO - TEST-FAIL | /selection/addRange.html | Range 5 [paras[1].firstChild, 0, paras[1].firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:30 INFO - Selection.addRange() tests 20:17:31 INFO - Selection.addRange() tests 20:17:31 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO - " 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO - " 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 6 [paras[1].firstChild, 2, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:31 INFO - Selection.addRange() tests 20:17:31 INFO - Selection.addRange() tests 20:17:31 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO - " 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:31 INFO - " 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:31 INFO - TEST-PASS | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:31 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:31 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:31 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:31 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:31 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:31 INFO - TEST-FAIL | /selection/addRange.html | Range 7 [paras[1].firstChild, 2, paras[1].firstChild, 9] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:31 INFO - Selection.addRange() tests 20:17:32 INFO - Selection.addRange() tests 20:17:32 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO - " 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO - " 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 8 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:32 INFO - Selection.addRange() tests 20:17:32 INFO - Selection.addRange() tests 20:17:32 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO - " 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:32 INFO - " 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:32 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:32 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:32 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:32 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:32 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:32 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:32 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 9 [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:33 INFO - Selection.addRange() tests 20:17:33 INFO - Selection.addRange() tests 20:17:33 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:33 INFO - " 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:33 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:33 INFO - " 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:33 INFO - TEST-PASS | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:33 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:33 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:33 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:33 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:33 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:33 INFO - TEST-FAIL | /selection/addRange.html | Range 10 [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:33 INFO - Selection.addRange() tests 20:17:34 INFO - Selection.addRange() tests 20:17:34 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO - " 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO - " 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 11 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:34 INFO - Selection.addRange() tests 20:17:34 INFO - Selection.addRange() tests 20:17:34 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO - " 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:34 INFO - " 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:34 INFO - TEST-PASS | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:34 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:34 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:34 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:34 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:34 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:34 INFO - TEST-FAIL | /selection/addRange.html | Range 12 [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:34 INFO - Selection.addRange() tests 20:17:35 INFO - Selection.addRange() tests 20:17:35 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO - " 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO - " 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 13 [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:35 INFO - Selection.addRange() tests 20:17:35 INFO - Selection.addRange() tests 20:17:35 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO - " 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:35 INFO - " 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:35 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:35 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:35 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:35 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:35 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:35 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 14 [document.documentElement, 0, document.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:36 INFO - Selection.addRange() tests 20:17:36 INFO - Selection.addRange() tests 20:17:36 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:36 INFO - " 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:36 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:36 INFO - " 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:36 INFO - TEST-PASS | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:36 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:36 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:36 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:36 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:36 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:36 INFO - TEST-FAIL | /selection/addRange.html | Range 15 [document.documentElement, 0, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:36 INFO - Selection.addRange() tests 20:17:37 INFO - Selection.addRange() tests 20:17:37 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:37 INFO - " 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:37 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:37 INFO - " 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:37 INFO - TEST-PASS | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:37 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:37 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:37 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:37 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:37 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:37 INFO - TEST-FAIL | /selection/addRange.html | Range 16 [document.documentElement, 1, document.documentElement, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:37 INFO - Selection.addRange() tests 20:17:38 INFO - Selection.addRange() tests 20:17:38 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:38 INFO - " 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:38 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:38 INFO - " 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:38 INFO - TEST-PASS | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:38 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:38 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:38 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:38 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:38 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:38 INFO - TEST-FAIL | /selection/addRange.html | Range 17 [document.head, 1, document.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:38 INFO - Selection.addRange() tests 20:17:39 INFO - Selection.addRange() tests 20:17:39 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:39 INFO - " 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:39 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:39 INFO - " 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 18 [document.body, 0, document.body, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:39 INFO - Selection.addRange() tests 20:17:39 INFO - Selection.addRange() tests 20:17:39 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:39 INFO - " 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:39 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:39 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:39 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:39 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:39 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:39 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:40 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:40 INFO - " 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:40 INFO - Selection.addRange() tests 20:17:40 INFO - Selection.addRange() tests 20:17:40 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:40 INFO - " 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - PROCESS | 8892 | --DOMWINDOW == 16 (0x7fd8a7806800) [pid = 8892] [serial = 2246] [outer = (nil)] [url = about:blank] 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:40 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:40 INFO - " 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:40 INFO - TEST-PASS | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:40 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:40 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:40 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:40 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:40 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:40 INFO - TEST-FAIL | /selection/addRange.html | Range 20 [foreignDoc.head, 1, foreignDoc.head, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:40 INFO - Selection.addRange() tests 20:17:41 INFO - Selection.addRange() tests 20:17:41 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO - " 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO - " 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 21 [foreignDoc.body, 0, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:41 INFO - Selection.addRange() tests 20:17:41 INFO - Selection.addRange() tests 20:17:41 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO - " 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:41 INFO - " 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:41 INFO - TEST-PASS | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:41 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:41 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:41 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:41 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:41 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:41 INFO - TEST-FAIL | /selection/addRange.html | Range 22 [paras[0], 0, paras[0], 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:41 INFO - Selection.addRange() tests 20:17:42 INFO - Selection.addRange() tests 20:17:42 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO - " 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO - " 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 23 [paras[0], 0, paras[0], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:42 INFO - Selection.addRange() tests 20:17:42 INFO - Selection.addRange() tests 20:17:42 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO - " 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:42 INFO - " 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:42 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:42 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:42 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:42 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:42 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:42 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 24 [detachedPara1, 0, detachedPara1, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:43 INFO - Selection.addRange() tests 20:17:43 INFO - Selection.addRange() tests 20:17:43 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:43 INFO - " 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:43 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:43 INFO - " 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:43 INFO - TEST-PASS | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:43 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:43 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:43 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:43 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:43 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:43 INFO - TEST-FAIL | /selection/addRange.html | Range 25 [detachedPara1, 0, detachedPara1, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:43 INFO - Selection.addRange() tests 20:17:44 INFO - Selection.addRange() tests 20:17:44 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO - " 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO - " 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:44 INFO - Selection.addRange() tests 20:17:44 INFO - Selection.addRange() tests 20:17:44 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO - " 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:44 INFO - " 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:44 INFO - TEST-PASS | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:44 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:44 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:44 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:44 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:44 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:44 INFO - TEST-FAIL | /selection/addRange.html | Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:44 INFO - Selection.addRange() tests 20:17:45 INFO - Selection.addRange() tests 20:17:45 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:45 INFO - " 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:45 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:45 INFO - " 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:45 INFO - TEST-PASS | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 28 [paras[0].firstChild, 3, paras[3], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:45 INFO - Selection.addRange() tests 20:17:45 INFO - Selection.addRange() tests 20:17:45 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:45 INFO - " 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:45 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:45 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:45 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:45 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:45 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:45 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:46 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:46 INFO - " 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 29 [paras[0], 0, paras[0].firstChild, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:46 INFO - Selection.addRange() tests 20:17:46 INFO - Selection.addRange() tests 20:17:46 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:46 INFO - " 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:46 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:46 INFO - " 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:46 INFO - TEST-PASS | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:46 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:46 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:46 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:46 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:46 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:46 INFO - TEST-FAIL | /selection/addRange.html | Range 30 [testDiv, 2, paras[4], 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:46 INFO - Selection.addRange() tests 20:17:46 INFO - Selection.addRange() tests 20:17:47 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO - " 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO - " 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 31 [testDiv, 1, paras[2].firstChild, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:47 INFO - Selection.addRange() tests 20:17:47 INFO - Selection.addRange() tests 20:17:47 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO - " 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:47 INFO - " 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:47 INFO - TEST-PASS | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:47 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:47 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:47 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:47 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:47 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:47 INFO - TEST-FAIL | /selection/addRange.html | Range 32 [document.documentElement, 1, document.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:47 INFO - Selection.addRange() tests 20:17:48 INFO - Selection.addRange() tests 20:17:48 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO - " 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO - " 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 33 [foreignDoc.documentElement, 1, foreignDoc.body, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:48 INFO - Selection.addRange() tests 20:17:48 INFO - Selection.addRange() tests 20:17:48 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO - " 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:48 INFO - " 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:48 INFO - TEST-PASS | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:48 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:48 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:48 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:48 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:48 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:48 INFO - TEST-FAIL | /selection/addRange.html | Range 34 [document, 0, document, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:48 INFO - Selection.addRange() tests 20:17:49 INFO - Selection.addRange() tests 20:17:49 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:49 INFO - " 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:49 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:49 INFO - " 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:49 INFO - TEST-PASS | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:49 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:49 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:49 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:49 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:49 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:49 INFO - TEST-FAIL | /selection/addRange.html | Range 35 [document, 0, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:49 INFO - Selection.addRange() tests 20:17:50 INFO - Selection.addRange() tests 20:17:50 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO - " 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO - " 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 36 [document, 1, document, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:50 INFO - Selection.addRange() tests 20:17:50 INFO - Selection.addRange() tests 20:17:50 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO - " 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:50 INFO - " 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:50 INFO - TEST-PASS | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:50 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:50 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:50 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:50 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:50 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:50 INFO - TEST-FAIL | /selection/addRange.html | Range 37 [testDiv, 0, comment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:50 INFO - Selection.addRange() tests 20:17:51 INFO - Selection.addRange() tests 20:17:51 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO - " 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO - " 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 38 [paras[2].firstChild, 4, comment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:51 INFO - Selection.addRange() tests 20:17:51 INFO - Selection.addRange() tests 20:17:51 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO - " 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:51 INFO - " 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:51 INFO - TEST-PASS | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:51 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:51 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:51 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:51 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:51 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:51 INFO - TEST-FAIL | /selection/addRange.html | Range 39 [paras[3], 1, comment, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:51 INFO - Selection.addRange() tests 20:17:52 INFO - Selection.addRange() tests 20:17:52 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:52 INFO - " 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:52 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:52 INFO - " 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:52 INFO - TEST-PASS | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:52 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:52 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:52 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:52 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:52 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:52 INFO - TEST-FAIL | /selection/addRange.html | Range 40 [foreignDoc, 0, foreignDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:52 INFO - Selection.addRange() tests 20:17:53 INFO - Selection.addRange() tests 20:17:53 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO - " 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO - " 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 41 [foreignDoc, 1, foreignComment, 2] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:53 INFO - Selection.addRange() tests 20:17:53 INFO - Selection.addRange() tests 20:17:53 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO - " 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:53 INFO - " 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:53 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:53 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:53 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:53 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:53 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:53 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 42 [foreignDoc.body, 0, foreignTextNode, 36] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:54 INFO - Selection.addRange() tests 20:17:54 INFO - Selection.addRange() tests 20:17:54 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:54 INFO - " 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:54 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:54 INFO - " 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:54 INFO - TEST-PASS | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:54 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:54 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:54 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:54 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:54 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:54 INFO - TEST-FAIL | /selection/addRange.html | Range 43 [xmlDoc, 0, xmlDoc, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:54 INFO - Selection.addRange() tests 20:17:55 INFO - Selection.addRange() tests 20:17:55 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:55 INFO - " 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:55 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:55 INFO - " 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 44 [xmlDoc, 1, xmlComment, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:55 INFO - Selection.addRange() tests 20:17:55 INFO - Selection.addRange() tests 20:17:55 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:55 INFO - " 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:55 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:55 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:55 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:55 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:55 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:55 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:56 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:56 INFO - " 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 45 [detachedTextNode, 0, detachedTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:56 INFO - Selection.addRange() tests 20:17:56 INFO - Selection.addRange() tests 20:17:56 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:56 INFO - " 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:56 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:56 INFO - " 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:56 INFO - TEST-PASS | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:56 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:56 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:56 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:56 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:56 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:56 INFO - TEST-FAIL | /selection/addRange.html | Range 46 [detachedForeignTextNode, 7, detachedForeignTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:56 INFO - Selection.addRange() tests 20:17:57 INFO - Selection.addRange() tests 20:17:57 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO - " 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO - " 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 47 [detachedForeignTextNode, 0, detachedForeignTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:57 INFO - Selection.addRange() tests 20:17:57 INFO - Selection.addRange() tests 20:17:57 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO - " 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:57 INFO - " 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:57 INFO - TEST-PASS | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:57 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:57 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:57 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:57 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:57 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:57 INFO - TEST-FAIL | /selection/addRange.html | Range 48 [detachedXmlTextNode, 7, detachedXmlTextNode, 7] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:57 INFO - Selection.addRange() tests 20:17:58 INFO - Selection.addRange() tests 20:17:58 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO - " 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO - " 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 49 [detachedXmlTextNode, 0, detachedXmlTextNode, 8] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:58 INFO - Selection.addRange() tests 20:17:58 INFO - Selection.addRange() tests 20:17:58 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO - " 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:58 INFO - " 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:58 INFO - TEST-PASS | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:58 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:58 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:58 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:58 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:58 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:58 INFO - TEST-FAIL | /selection/addRange.html | Range 50 [detachedComment, 3, detachedComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:58 INFO - Selection.addRange() tests 20:17:59 INFO - Selection.addRange() tests 20:17:59 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO - " 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO - " 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 51 [detachedComment, 5, detachedComment, 5] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:59 INFO - Selection.addRange() tests 20:17:59 INFO - Selection.addRange() tests 20:17:59 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO - " 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:17:59 INFO - " 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:17:59 INFO - TEST-PASS | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:17:59 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:17:59 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:17:59 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:17:59 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:17:59 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:17:59 INFO - TEST-FAIL | /selection/addRange.html | Range 52 [detachedForeignComment, 0, detachedForeignComment, 1] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:17:59 INFO - Selection.addRange() tests 20:18:00 INFO - Selection.addRange() tests 20:18:00 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:00 INFO - " 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:18:00 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:00 INFO - " 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:00 INFO - TEST-PASS | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:00 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:00 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:00 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:00 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:00 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:00 INFO - TEST-FAIL | /selection/addRange.html | Range 53 [detachedForeignComment, 4, detachedForeignComment, 4] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:18:00 INFO - Selection.addRange() tests 20:18:00 INFO - Selection.addRange() tests 20:18:01 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO - " 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO - " 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 54 [detachedXmlComment, 2, detachedXmlComment, 6] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:18:01 INFO - Selection.addRange() tests 20:18:01 INFO - Selection.addRange() tests 20:18:01 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO - " 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:01 INFO - " 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:01 INFO - TEST-PASS | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:01 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:01 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:01 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:01 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:01 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:01 INFO - TEST-FAIL | /selection/addRange.html | Range 55 [docfrag, 0, docfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:18:01 INFO - Selection.addRange() tests 20:18:02 INFO - Selection.addRange() tests 20:18:02 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO - " 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO - " 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 56 [foreignDocfrag, 0, foreignDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:18:02 INFO - Selection.addRange() tests 20:18:02 INFO - Selection.addRange() tests 20:18:02 INFO - but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO - " 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 17 [document.head, 1, document.head, 1]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 18 [document.body, 0, document.body, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 19 [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 20 [foreignDoc.head, 1, foreignDoc.head, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 21 [foreignDoc.body, 0, foreignDoc.body, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node

Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO -

but got Text node "Äb̈c̈d̈ëf̈g̈ḧ 20:18:02 INFO - " 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:47:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:36:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: second addRange() must result in the selection's last range being the same object we added - assert_equals: getRangeAt(rangeCount - 1) must return the same object we added expected object "" but got object "" 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:61:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:57:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the second added range must modify the Selection's last Range - assert_equals: After mutating the second added Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:85:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:66:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 22 [paras[0], 0, paras[0], 0]: modifying the Selection's last Range must modify the second added Range - assert_equals: After second addRange(), after mutating the Selection's last Range, startOffset of the Selection's last Range must match the added Range expected 0 but got 6 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:112:1 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:94:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 23 [paras[0], 0, paras[0], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 24 [detachedPara1, 0, detachedPara1, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 25 [detachedPara1, 0, detachedPara1, 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 26 [paras[0].firstChild, 0, paras[1].firstChild, 0]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 27 [paras[0].firstChild, 0, paras[1].firstChild, 8]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 28 [paras[0].firstChild, 3, paras[3], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 29 [paras[0], 0, paras[0].firstChild, 7]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 30 [testDiv, 2, paras[4], 1]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: second addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the second added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 31 [testDiv, 1, paras[2].firstChild, 5]: modifying the Selection's last Range must modify the second added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in rangeCount being 1 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range having the specified endpoints 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: first addRange() must result in the selection's last range being the same object we added 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the first added range must modify the Selection's last Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: modifying the Selection's last Range must modify the first added Range 20:18:02 INFO - TEST-PASS | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must not throw exceptions or modify the range it's given 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in rangeCount being 1 - assert_equals: rangeCount must be 1 expected 1 but got 2 20:18:02 INFO - testAddRange/<@http://web-platform.test:8000/selection/addRange.html:30:9 20:18:02 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:18:02 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:18:02 INFO - testAddRange@http://web-platform.test:8000/selection/addRange.html:27:1 20:18:02 INFO - @http://web-platform.test:8000/selection/addRange.html:173:9 20:18:02 INFO - TEST-FAIL | /selection/addRange.html | Range 57 [xmlDocfrag, 0, xmlDocfrag, 0] followed by Range 32 [document.documentElement, 1, document.body, 0]: second addRange() must result in the selection's last range having the specified endpoints - assert_equals: startContainer of the Selection's last Range must match the added Range expected Element node Selection.addRange() tests 20:18:02 INFO - - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.query: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Document.queryAll: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:82:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.query: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Detached Element.queryAll: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:83:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.query: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | Fragment.queryAll: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:84:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Empty String: - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: [ - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: ( - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: ) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: { - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: } - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: < - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid character: > - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid ID: # - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid group of selectors: div, - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid class: . - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid class: .5cm - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid class: ..test - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid class: .foo..quux - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid class: .bar. - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid combinator: div & address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid combinator: div >> address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid combinator: div ++ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid combinator: div ~~ address, p - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid [att=value] selector: [*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid [att=value] selector: [*|*=test] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid [att=value] selector: [class= space unquoted ] - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Unknown pseudo-class: div:example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Unknown pseudo-class: :example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Unknown pseudo-element: div::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Unknown pseudo-element: ::example - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid pseudo-element: :::before - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Undeclared namespace: ns|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Undeclared namespace: :not(ns|div) - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid namespace: ^|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.query: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.query(q) 20:19:21 INFO - }" threw object "TypeError: root.query is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:242:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:241:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document Element.queryAll: Invalid namespace: $|div - assert_throws: function "function () { 20:19:21 INFO - root.queryAll(q) 20:19:21 INFO - }" threw object "TypeError: root.queryAll is not a function" that is not a DOMException SyntaxError: property "code" is equal to undefined, expected 12 20:19:21 INFO - runInvalidSelectorTestQuery/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:248:7 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runInvalidSelectorTestQuery@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:247:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:85:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Universal selector, matching all children of the specified reference element (with no refNodes): >* - context.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Universal selector, matching all children of the specified reference element (with no refNodes): >* - context.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Universal selector, matching all children of the specified reference element (with refNode Element): >* - root.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Universal selector, matching all children of the specified reference element (with refNode Element): >* - root.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Universal selector, matching all grandchildren of the specified reference element (with no refNodes): >*>* - context.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Universal selector, matching all grandchildren of the specified reference element (with no refNodes): >*>* - context.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Universal selector, matching all grandchildren of the specified reference element (with refNode Element): >*>* - root.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Universal selector, matching all grandchildren of the specified reference element (with refNode Element): >*>* - root.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Universal selector, matching all descendants of the specified reference element (with no refNodes): * - context.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Universal selector, matching all descendants of the specified reference element (with no refNodes): * - context.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Universal selector, matching all descendants of the specified reference element (with refNode Element): * - root.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Universal selector, matching all descendants of the specified reference element (with refNode Element): * - root.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching align attribute with value (with no refNodes): .attr-presence-div1[align] - context.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching align attribute with value (with no refNodes): .attr-presence-div1[align] - context.query is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:21 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching align attribute with value (with refNode Element): .attr-presence-div1[align] - root.queryAll is not a function 20:19:21 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:21 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:21 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:21 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:21 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching align attribute with value (with refNode Element): .attr-presence-div1[align] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching align attribute with empty value (with no refNodes): .attr-presence-div2[align] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching align attribute with empty value (with no refNodes): .attr-presence-div2[align] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching align attribute with empty value (with refNode Element): .attr-presence-div2[align] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching align attribute with empty value (with refNode Element): .attr-presence-div2[align] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching title attribute, case insensitivity (with no refNodes): [TiTlE] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching title attribute, case insensitivity (with no refNodes): [TiTlE] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching title attribute, case insensitivity (with refNode Element): [TiTlE] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching title attribute, case insensitivity (with refNode Element): [TiTlE] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching custom data-* attribute (with no refNodes): [data-attr-presence] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching custom data-* attribute (with no refNodes): [data-attr-presence] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching custom data-* attribute (with refNode Element): [data-attr-presence] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching custom data-* attribute (with refNode Element): [data-attr-presence] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, not matching attribute with similar name (with no refNodes): .attr-presence-div3[align], .attr-presence-div4[align] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, not matching attribute with similar name (with no refNodes): .attr-presence-div3[align], .attr-presence-div4[align] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, not matching attribute with similar name (with refNode Element): .attr-presence-div3[align], .attr-presence-div4[align] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, not matching attribute with similar name (with refNode Element): .attr-presence-div3[align], .attr-presence-div4[align] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching attribute with non-ASCII characters (with no refNodes): ul[data-中文] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching attribute with non-ASCII characters (with no refNodes): ul[data-中文] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching attribute with non-ASCII characters (with refNode Element): ul[data-中文] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching attribute with non-ASCII characters (with refNode Element): ul[data-中文] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, not matching default option without selected attribute (with no refNodes): #attr-presence-select1 option[selected] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, not matching default option without selected attribute (with no refNodes): #attr-presence-select1 option[selected] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, not matching default option without selected attribute (with refNode Element): #attr-presence-select1 option[selected] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, not matching default option without selected attribute (with refNode Element): #attr-presence-select1 option[selected] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching option with selected attribute (with no refNodes): #attr-presence-select2 option[selected] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching option with selected attribute (with no refNodes): #attr-presence-select2 option[selected] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching option with selected attribute (with refNode Element): #attr-presence-select2 option[selected] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching option with selected attribute (with refNode Element): #attr-presence-select2 option[selected] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute presence selector, matching multiple options with selected attributes (with no refNodes): #attr-presence-select3 option[selected] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute presence selector, matching multiple options with selected attributes (with no refNodes): #attr-presence-select3 option[selected] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute presence selector, matching multiple options with selected attributes (with refNode Element): #attr-presence-select3 option[selected] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute presence selector, matching multiple options with selected attributes (with refNode Element): #attr-presence-select3 option[selected] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, matching align attribute with value (with no refNodes): [align="center"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, matching align attribute with value (with no refNodes): [align="center"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, matching align attribute with value (with refNode Element): [align="center"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, matching align attribute with value (with refNode Element): [align="center"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, matching align attribute with empty value (with no refNodes): [align=""] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, matching align attribute with empty value (with no refNodes): [align=""] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, matching align attribute with empty value (with refNode Element): [align=""] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, matching align attribute with empty value (with refNode Element): [align=""] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, not matching align attribute with partial value (with no refNodes): [align="c"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, not matching align attribute with partial value (with no refNodes): [align="c"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, not matching align attribute with partial value (with refNode Element): [align="c"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, not matching align attribute with partial value (with refNode Element): [align="c"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, not matching align attribute with incorrect value (with no refNodes): [align="centera"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, not matching align attribute with incorrect value (with no refNodes): [align="centera"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, not matching align attribute with incorrect value (with refNode Element): [align="centera"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, not matching align attribute with incorrect value (with refNode Element): [align="centera"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, matching custom data-* attribute with unicode escaped value (with no refNodes): [data-attr-value="\e9"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, matching custom data-* attribute with unicode escaped value (with no refNodes): [data-attr-value="\e9"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, matching custom data-* attribute with unicode escaped value (with refNode Element): [data-attr-value="\e9"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, matching custom data-* attribute with unicode escaped value (with refNode Element): [data-attr-value="\e9"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, matching custom data-* attribute with escaped character (with no refNodes): [data-attr-value_foo="\e9"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, matching custom data-* attribute with escaped character (with no refNodes): [data-attr-value_foo="\e9"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, matching custom data-* attribute with escaped character (with refNode Element): [data-attr-value_foo="\e9"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, matching custom data-* attribute with escaped character (with refNode Element): [data-attr-value_foo="\e9"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes (with no refNodes): input[type='hidden'],#attr-value input[type='radio'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector with single-quoted value, matching multiple inputs with type attributes (with no refNodes): input[type='hidden'],#attr-value input[type='radio'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes (with refNode Element): input[type='hidden'],#attr-value input[type='radio'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector with single-quoted value, matching multiple inputs with type attributes (with refNode Element): input[type='hidden'],#attr-value input[type='radio'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes (with no refNodes): input[type="hidden"],#attr-value input[type='radio'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector with double-quoted value, matching multiple inputs with type attributes (with no refNodes): input[type="hidden"],#attr-value input[type='radio'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes (with refNode Element): input[type="hidden"],#attr-value input[type='radio'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector with double-quoted value, matching multiple inputs with type attributes (with refNode Element): input[type="hidden"],#attr-value input[type='radio'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes (with no refNodes): input[type=hidden],#attr-value input[type=radio] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector with unquoted value, matching multiple inputs with type attributes (with no refNodes): input[type=hidden],#attr-value input[type=radio] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes (with refNode Element): input[type=hidden],#attr-value input[type=radio] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector with unquoted value, matching multiple inputs with type attributes (with refNode Element): input[type=hidden],#attr-value input[type=radio] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute value selector, matching attribute with value using non-ASCII characters (with no refNodes): [data-attr-value=中文] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute value selector, matching attribute with value using non-ASCII characters (with no refNodes): [data-attr-value=中文] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute value selector, matching attribute with value using non-ASCII characters (with refNode Element): [data-attr-value=中文] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute value selector, matching attribute with value using non-ASCII characters (with refNode Element): [data-attr-value=中文] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, matching class attribute with value (with no refNodes): [class~="div1"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, matching class attribute with value (with no refNodes): [class~="div1"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, matching class attribute with value (with refNode Element): [class~="div1"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, matching class attribute with value (with refNode Element): [class~="div1"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, not matching class attribute with empty value (with no refNodes): [class~=""] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, not matching class attribute with empty value (with no refNodes): [class~=""] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, not matching class attribute with empty value (with refNode Element): [class~=""] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, not matching class attribute with empty value (with refNode Element): [class~=""] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, not matching class attribute with partial value (with no refNodes): [data-attr-whitespace~="div"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, not matching class attribute with partial value (with no refNodes): [data-attr-whitespace~="div"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, not matching class attribute with partial value (with refNode Element): [data-attr-whitespace~="div"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, not matching class attribute with partial value (with refNode Element): [data-attr-whitespace~="div"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value (with no refNodes): [data-attr-whitespace~="\0000e9"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value (with no refNodes): [data-attr-whitespace~="\0000e9"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value (with refNode Element): [data-attr-whitespace~="\0000e9"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value (with refNode Element): [data-attr-whitespace~="\0000e9"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character (with no refNodes): [data-attr-whitespace_foo~="\e9"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character (with no refNodes): [data-attr-whitespace_foo~="\e9"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character (with refNode Element): [data-attr-whitespace_foo~="\e9"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character (with refNode Element): [data-attr-whitespace_foo~="\e9"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes (with no refNodes): a[rel~='bookmark'], #attr-whitespace a[rel~='nofollow'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes (with no refNodes): a[rel~='bookmark'], #attr-whitespace a[rel~='nofollow'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes (with refNode Element): a[rel~='bookmark'], #attr-whitespace a[rel~='nofollow'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes (with refNode Element): a[rel~='bookmark'], #attr-whitespace a[rel~='nofollow'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes (with no refNodes): a[rel~="bookmark"],#attr-whitespace a[rel~='nofollow'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes (with no refNodes): a[rel~="bookmark"],#attr-whitespace a[rel~='nofollow'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes (with refNode Element): a[rel~="bookmark"],#attr-whitespace a[rel~='nofollow'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes (with refNode Element): a[rel~="bookmark"],#attr-whitespace a[rel~='nofollow'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes (with no refNodes): a[rel~=bookmark], #attr-whitespace a[rel~=nofollow] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes (with no refNodes): a[rel~=bookmark], #attr-whitespace a[rel~=nofollow] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes (with refNode Element): a[rel~=bookmark], #attr-whitespace a[rel~=nofollow] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes (with refNode Element): a[rel~=bookmark], #attr-whitespace a[rel~=nofollow] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space (with no refNodes): a[rel~="book mark"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector with double-quoted value, not matching value with space (with no refNodes): a[rel~="book mark"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector with double-quoted value, not matching value with space (with refNode Element): a[rel~="book mark"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector with double-quoted value, not matching value with space (with refNode Element): a[rel~="book mark"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters (with no refNodes): [title~=中文] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters (with no refNodes): [title~=中文] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters (with refNode Element): [title~=中文] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters (with refNode Element): [title~=中文] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute (with no refNodes): #attr-hyphen-div1[lang|="en"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute hyphen-separated list selector, not matching unspecified lang attribute (with no refNodes): #attr-hyphen-div1[lang|="en"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute hyphen-separated list selector, not matching unspecified lang attribute (with refNode Element): #attr-hyphen-div1[lang|="en"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute hyphen-separated list selector, not matching unspecified lang attribute (with refNode Element): #attr-hyphen-div1[lang|="en"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute hyphen-separated list selector, matching lang attribute with exact value (with no refNodes): #attr-hyphen-div2[lang|="fr"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute hyphen-separated list selector, matching lang attribute with exact value (with no refNodes): #attr-hyphen-div2[lang|="fr"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute hyphen-separated list selector, matching lang attribute with exact value (with refNode Element): #attr-hyphen-div2[lang|="fr"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute hyphen-separated list selector, matching lang attribute with exact value (with refNode Element): #attr-hyphen-div2[lang|="fr"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute hyphen-separated list selector, matching lang attribute with partial value (with no refNodes): #attr-hyphen-div3[lang|="en"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute hyphen-separated list selector, matching lang attribute with partial value (with no refNodes): #attr-hyphen-div3[lang|="en"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute hyphen-separated list selector, matching lang attribute with partial value (with refNode Element): #attr-hyphen-div3[lang|="en"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute hyphen-separated list selector, matching lang attribute with partial value (with refNode Element): #attr-hyphen-div3[lang|="en"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute hyphen-separated list selector, not matching incorrect value (with no refNodes): #attr-hyphen-div4[lang|="es-AR"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute hyphen-separated list selector, not matching incorrect value (with no refNodes): #attr-hyphen-div4[lang|="es-AR"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute hyphen-separated list selector, not matching incorrect value (with refNode Element): #attr-hyphen-div4[lang|="es-AR"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute hyphen-separated list selector, not matching incorrect value (with refNode Element): #attr-hyphen-div4[lang|="es-AR"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector, matching href attributes beginning with specified substring (with no refNodes): a[href^="http://www"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector, matching href attributes beginning with specified substring (with no refNodes): a[href^="http://www"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector, matching href attributes beginning with specified substring (with refNode Element): a[href^="http://www"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector, matching href attributes beginning with specified substring (with refNode Element): a[href^="http://www"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector, matching lang attributes beginning with specified substring, (with no refNodes): [lang^="en-"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector, matching lang attributes beginning with specified substring, (with no refNodes): [lang^="en-"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector, matching lang attributes beginning with specified substring, (with refNode Element): [lang^="en-"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector, matching lang attributes beginning with specified substring, (with refNode Element): [lang^="en-"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector, not matching class attribute not beginning with specified substring (with no refNodes): [class^=apple] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector, not matching class attribute not beginning with specified substring (with no refNodes): [class^=apple] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector, not matching class attribute not beginning with specified substring (with refNode Element): [class^=apple] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector, not matching class attribute not beginning with specified substring (with refNode Element): [class^=apple] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class^=' apple'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class^=' apple'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class^=' apple'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class^=' apple'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class^=" apple"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class^=" apple"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class^=" apple"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class^=" apple"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring (with no refNodes): [class^= apple] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring (with no refNodes): [class^= apple] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring (with refNode Element): [class^= apple] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute begins with selector with unquoted value, not matching class attribute not beginning with specified substring (with refNode Element): [class^= apple] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector, matching href attributes ending with specified substring (with no refNodes): a[href$=".org"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector, matching href attributes ending with specified substring (with no refNodes): a[href$=".org"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector, matching href attributes ending with specified substring (with refNode Element): a[href$=".org"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector, matching href attributes ending with specified substring (with refNode Element): a[href$=".org"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector, matching lang attributes ending with specified substring, (with no refNodes): [lang$="-CH"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector, matching lang attributes ending with specified substring, (with no refNodes): [lang$="-CH"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector, matching lang attributes ending with specified substring, (with refNode Element): [lang$="-CH"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector, matching lang attributes ending with specified substring, (with refNode Element): [lang$="-CH"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector, not matching class attribute not ending with specified substring (with no refNodes): [class$=apple] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector, not matching class attribute not ending with specified substring (with no refNodes): [class$=apple] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector, not matching class attribute not ending with specified substring (with refNode Element): [class$=apple] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector, not matching class attribute not ending with specified substring (with refNode Element): [class$=apple] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring (with no refNodes): [class$='apple '] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring (with no refNodes): [class$='apple '] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring (with refNode Element): [class$='apple '] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring (with refNode Element): [class$='apple '] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring (with no refNodes): [class$="apple "] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring (with no refNodes): [class$="apple "] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring (with refNode Element): [class$="apple "] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring (with refNode Element): [class$="apple "] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring (with no refNodes): [class$=apple ] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring (with no refNodes): [class$=apple ] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring (with refNode Element): [class$=apple ] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute ends with selector with unquoted value, not matching class attribute not ending with specified substring (with refNode Element): [class$=apple ] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector, matching href attributes beginning with specified substring (with no refNodes): a[href*="http://www"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector, matching href attributes beginning with specified substring (with no refNodes): a[href*="http://www"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector, matching href attributes beginning with specified substring (with refNode Element): a[href*="http://www"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector, matching href attributes beginning with specified substring (with refNode Element): a[href*="http://www"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector, matching href attributes ending with specified substring (with no refNodes): a[href*=".org"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector, matching href attributes ending with specified substring (with no refNodes): a[href*=".org"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector, matching href attributes ending with specified substring (with refNode Element): a[href*=".org"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector, matching href attributes ending with specified substring (with refNode Element): a[href*=".org"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector, matching href attributes containing specified substring (with no refNodes): a[href*=".example."] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector, matching href attributes containing specified substring (with no refNodes): a[href*=".example."] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector, matching href attributes containing specified substring (with refNode Element): a[href*=".example."] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector, matching href attributes containing specified substring (with refNode Element): a[href*=".example."] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector, matching lang attributes beginning with specified substring, (with no refNodes): [lang*="en-"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector, matching lang attributes beginning with specified substring, (with no refNodes): [lang*="en-"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector, matching lang attributes beginning with specified substring, (with refNode Element): [lang*="en-"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector, matching lang attributes beginning with specified substring, (with refNode Element): [lang*="en-"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector, matching lang attributes ending with specified substring, (with no refNodes): [lang*="-CH"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector, matching lang attributes ending with specified substring, (with no refNodes): [lang*="-CH"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector, matching lang attributes ending with specified substring, (with refNode Element): [lang*="-CH"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector, matching lang attributes ending with specified substring, (with refNode Element): [lang*="-CH"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class*=' apple'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class*=' apple'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class*=' apple'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class*=' apple'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring (with no refNodes): [class*='orange '] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring (with no refNodes): [class*='orange '] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring (with refNode Element): [class*='orange '] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring (with refNode Element): [class*='orange '] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring (with no refNodes): [class*='ple banana ora'] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with single-quoted value, matching class attribute containing specified substring (with no refNodes): [class*='ple banana ora'] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring (with refNode Element): [class*='ple banana ora'] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with single-quoted value, matching class attribute containing specified substring (with refNode Element): [class*='ple banana ora'] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class*=" apple"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring (with no refNodes): [class*=" apple"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class*=" apple"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring (with refNode Element): [class*=" apple"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring (with no refNodes): [class*="orange "] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring (with no refNodes): [class*="orange "] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring (with refNode Element): [class*="orange "] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring (with refNode Element): [class*="orange "] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring (with no refNodes): [class*="ple banana ora"] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with double-quoted value, matching class attribute containing specified substring (with no refNodes): [class*="ple banana ora"] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring (with refNode Element): [class*="ple banana ora"] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with double-quoted value, matching class attribute containing specified substring (with refNode Element): [class*="ple banana ora"] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring (with no refNodes): [class*= apple] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring (with no refNodes): [class*= apple] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring (with refNode Element): [class*= apple] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring (with refNode Element): [class*= apple] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring (with no refNodes): [class*=orange ] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with unquoted value, matching class attribute ending with specified substring (with no refNodes): [class*=orange ] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring (with refNode Element): [class*=orange ] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with unquoted value, matching class attribute ending with specified substring (with refNode Element): [class*=orange ] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring (with no refNodes): [class*= banana ] - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: Attribute contains selector with unquoted value, matching class attribute containing specified substring (with no refNodes): [class*= banana ] - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring (with refNode Element): [class*= banana ] - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: Attribute contains selector with unquoted value, matching class attribute containing specified substring (with refNode Element): [class*= banana ] - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :root pseudo-class selector, matching document root element (with no refNodes): :root - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :root pseudo-class selector, matching document root element (with no refNodes): :root - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :root pseudo-class selector, not matching document root element (with no refNodes): :root - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :root pseudo-class selector, not matching document root element (with no refNodes): :root - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :root pseudo-class selector, not matching document root element (with refNode Element): :root - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :root pseudo-class selector, not matching document root element (with refNode Element): :root - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-child selector, matching the third child element (with no refNodes): :nth-child(3) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-child selector, matching the third child element (with no refNodes): :nth-child(3) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-child selector, matching the third child element (with refNode Element): :nth-child(3) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-child selector, matching the third child element (with refNode Element): :nth-child(3) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-child selector, matching every third child element (with no refNodes): li:nth-child(3n) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-child selector, matching every third child element (with no refNodes): li:nth-child(3n) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-child selector, matching every third child element (with refNode Element): li:nth-child(3n) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-child selector, matching every third child element (with refNode Element): li:nth-child(3n) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-child selector, matching every second child element, starting from the fourth (with no refNodes): li:nth-child(2n+4) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-child selector, matching every second child element, starting from the fourth (with no refNodes): li:nth-child(2n+4) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-child selector, matching every second child element, starting from the fourth (with refNode Element): li:nth-child(2n+4) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-child selector, matching every second child element, starting from the fourth (with refNode Element): li:nth-child(2n+4) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-child selector, matching every fourth child element, starting from the third (with no refNodes): :nth-child(4n-1) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-child selector, matching every fourth child element, starting from the third (with no refNodes): :nth-child(4n-1) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-child selector, matching every fourth child element, starting from the third (with refNode Element): :nth-child(4n-1) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-child selector, matching every fourth child element, starting from the third (with refNode Element): :nth-child(4n-1) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-child selector, matching the third last child element (with no refNodes): :nth-last-child(3) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-child selector, matching the third last child element (with no refNodes): :nth-last-child(3) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-child selector, matching the third last child element (with refNode Element): :nth-last-child(3) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-child selector, matching the third last child element (with refNode Element): :nth-last-child(3) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-child selector, matching every third child element from the end (with no refNodes): li:nth-last-child(3n) - context is null 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:13 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-child selector, matching every third child element from the end (with no refNodes): li:nth-last-child(3n) - context is null 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:13 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-child selector, matching every third child element from the end (with refNode Element): li:nth-last-child(3n) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-child selector, matching every third child element from the end (with refNode Element): li:nth-last-child(3n) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last (with no refNodes): li:nth-last-child(2n+4) - context is null 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:13 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-child selector, matching every second child element from the end, starting from the fourth last (with no refNodes): li:nth-last-child(2n+4) - context is null 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:13 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last (with refNode Element): li:nth-last-child(2n+4) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-child selector, matching every second child element from the end, starting from the fourth last (with refNode Element): li:nth-last-child(2n+4) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last (with no refNodes): :nth-last-child(4n-1) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-child selector, matching every fourth element from the end, starting from the third last (with no refNodes): :nth-last-child(4n-1) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last (with refNode Element): :nth-last-child(4n-1) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-child selector, matching every fourth element from the end, starting from the third last (with refNode Element): :nth-last-child(4n-1) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-of-type selector, matching the third em element (with no refNodes): em:nth-of-type(3) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-of-type selector, matching the third em element (with no refNodes): em:nth-of-type(3) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-of-type selector, matching the third em element (with refNode Element): em:nth-of-type(3) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-of-type selector, matching the third em element (with refNode Element): em:nth-of-type(3) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-of-type selector, matching every second element of their type (with no refNodes): :nth-of-type(2n) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-of-type selector, matching every second element of their type (with no refNodes): :nth-of-type(2n) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-of-type selector, matching every second element of their type (with refNode Element): :nth-of-type(2n) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-of-type selector, matching every second element of their type (with refNode Element): :nth-of-type(2n) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first (with no refNodes): span:nth-of-type(2n-1) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-of-type selector, matching every second elemetn of their type, starting from the first (with no refNodes): span:nth-of-type(2n-1) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first (with refNode Element): span:nth-of-type(2n-1) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-of-type selector, matching every second elemetn of their type, starting from the first (with refNode Element): span:nth-of-type(2n-1) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-of-type selector, matching the thrid last em element (with no refNodes): em:nth-last-of-type(3) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-of-type selector, matching the thrid last em element (with no refNodes): em:nth-last-of-type(3) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-of-type selector, matching the thrid last em element (with refNode Element): em:nth-last-of-type(3) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-of-type selector, matching the thrid last em element (with refNode Element): em:nth-last-of-type(3) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-of-type selector, matching every second last element of their type (with no refNodes): :nth-last-of-type(2n) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-of-type selector, matching every second last element of their type (with no refNodes): :nth-last-of-type(2n) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-of-type selector, matching every second last element of their type (with refNode Element): :nth-last-of-type(2n) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-of-type selector, matching every second last element of their type (with refNode Element): :nth-last-of-type(2n) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last (with no refNodes): span:nth-last-of-type(2n-1) - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :nth-last-of-type selector, matching every second last element of their type, starting from the last (with no refNodes): span:nth-last-of-type(2n-1) - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last (with refNode Element): span:nth-last-of-type(2n-1) - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :nth-last-of-type selector, matching every second last element of their type, starting from the last (with refNode Element): span:nth-last-of-type(2n-1) - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-of-type selector, matching the first em element (with no refNodes): em:first-of-type - context.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-of-type selector, matching the first em element (with no refNodes): em:first-of-type - context.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-of-type selector, matching the first em element (with refNode Element): em:first-of-type - root.queryAll is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:22 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:22 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:22 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-of-type selector, matching the first em element (with refNode Element): em:first-of-type - root.query is not a function 20:19:22 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:22 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:22 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-of-type selector, matching the first of every type of element (with no refNodes): :first-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-of-type selector, matching the first of every type of element (with no refNodes): :first-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-of-type selector, matching the first of every type of element (with refNode Element): :first-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-of-type selector, matching the first of every type of element (with refNode Element): :first-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-of-type selector, matching the first td element in each table row (with no refNodes): tr :first-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-of-type selector, matching the first td element in each table row (with no refNodes): tr :first-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-of-type selector, matching the first td element in each table row (with refNode Element): tr :first-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-of-type selector, matching the first td element in each table row (with refNode Element): tr :first-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-of-type selector, matching the last em elemnet (with no refNodes): em:last-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-of-type selector, matching the last em elemnet (with no refNodes): em:last-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-of-type selector, matching the last em elemnet (with refNode Element): em:last-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-of-type selector, matching the last em elemnet (with refNode Element): em:last-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-of-type selector, matching the last of every type of element (with no refNodes): :last-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-of-type selector, matching the last of every type of element (with no refNodes): :last-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-of-type selector, matching the last of every type of element (with refNode Element): :last-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-of-type selector, matching the last of every type of element (with refNode Element): :last-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-of-type selector, matching the last td element in each table row (with no refNodes): tr :last-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-of-type selector, matching the last td element in each table row (with no refNodes): tr :last-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-of-type selector, matching the last td element in each table row (with refNode Element): tr :last-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-of-type selector, matching the last td element in each table row (with refNode Element): tr :last-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-child pseudo-class selector, matching first child div element (with no refNodes): div:first-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-child pseudo-class selector, matching first child div element (with no refNodes): div:first-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-child pseudo-class selector, matching first child div element (with refNode Element): div:first-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-child pseudo-class selector, matching first child div element (with refNode Element): div:first-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-child pseudo-class selector, doesn't match non-first-child elements (with no refNodes): .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-child pseudo-class selector, doesn't match non-first-child elements (with no refNodes): .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-child pseudo-class selector, doesn't match non-first-child elements (with refNode Element): .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-child pseudo-class selector, doesn't match non-first-child elements (with refNode Element): .pseudo-first-child-div2:first-child, .pseudo-first-child-div3:first-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :first-child pseudo-class selector, matching first-child of multiple elements (with no refNodes): span:first-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :first-child pseudo-class selector, matching first-child of multiple elements (with no refNodes): span:first-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :first-child pseudo-class selector, matching first-child of multiple elements (with refNode Element): span:first-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :first-child pseudo-class selector, matching first-child of multiple elements (with refNode Element): span:first-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-child pseudo-class selector, matching last child div element (with no refNodes): div:last-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-child pseudo-class selector, matching last child div element (with no refNodes): div:last-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-child pseudo-class selector, matching last child div element (with refNode Element): div:last-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-child pseudo-class selector, matching last child div element (with refNode Element): div:last-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-child pseudo-class selector, doesn't match non-last-child elements (with no refNodes): .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-child pseudo-class selector, doesn't match non-last-child elements (with no refNodes): .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-child pseudo-class selector, doesn't match non-last-child elements (with refNode Element): .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-child pseudo-class selector, doesn't match non-last-child elements (with refNode Element): .pseudo-last-child-div1:last-child, .pseudo-last-child-div2:first-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :last-child pseudo-class selector, matching first-child of multiple elements (with no refNodes): span:last-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :last-child pseudo-class selector, matching first-child of multiple elements (with no refNodes): span:last-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :last-child pseudo-class selector, matching first-child of multiple elements (with refNode Element): span:last-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :last-child pseudo-class selector, matching first-child of multiple elements (with refNode Element): span:last-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :pseudo-only-child pseudo-class selector, matching all only-child elements (with no refNodes): :only-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :pseudo-only-child pseudo-class selector, matching all only-child elements (with no refNodes): :only-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :pseudo-only-child pseudo-class selector, matching all only-child elements (with refNode Element): :only-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :pseudo-only-child pseudo-class selector, matching all only-child elements (with refNode Element): :only-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :pseudo-only-child pseudo-class selector, matching only-child em elements (with no refNodes): em:only-child - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :pseudo-only-child pseudo-class selector, matching only-child em elements (with no refNodes): em:only-child - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :pseudo-only-child pseudo-class selector, matching only-child em elements (with refNode Element): em:only-child - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :pseudo-only-child pseudo-class selector, matching only-child em elements (with refNode Element): em:only-child - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type (with no refNodes): :only-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type (with no refNodes): :only-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type (with refNode Element): :only-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type (with refNode Element): :only-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type (with no refNodes): em:only-of-type - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type (with no refNodes): em:only-of-type - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type (with refNode Element): em:only-of-type - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type (with refNode Element): em:only-of-type - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :empty pseudo-class selector, matching empty p elements (with no refNodes): p:empty - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :empty pseudo-class selector, matching empty p elements (with no refNodes): p:empty - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :empty pseudo-class selector, matching empty p elements (with refNode Element): p:empty - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :empty pseudo-class selector, matching empty p elements (with refNode Element): p:empty - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :empty pseudo-class selector, matching all empty elements (with no refNodes): :empty - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :empty pseudo-class selector, matching all empty elements (with no refNodes): :empty - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :empty pseudo-class selector, matching all empty elements (with refNode Element): :empty - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :empty pseudo-class selector, matching all empty elements (with refNode Element): :empty - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes (with no refNodes): :link, #pseudo-link :visited - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :link and :visited pseudo-class selectors, matching a and area elements with href attributes (with no refNodes): :link, #pseudo-link :visited - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes (with refNode Element): :link, #pseudo-link :visited - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :link and :visited pseudo-class selectors, matching a and area elements with href attributes (with refNode Element): :link, #pseudo-link :visited - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].queryAll: :link and :visited pseudo-class selectors, matching link elements with href attributes (with no refNodes): :link, #head :visited - context.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:160:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:159:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Context Element].query: :link and :visited pseudo-class selectors, matching link elements with href attributes (with no refNodes): :link, #head :visited - context.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:165:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:164:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].queryAll: :link and :visited pseudo-class selectors, matching link elements with href attributes (with refNode Element): :link, #head :visited - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:170:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:169:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document [Root Node].query: :link and :visited pseudo-class selectors, matching link elements with href attributes (with refNode Element): :link, #head :visited - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:175:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:174:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier (with no refNodes): :target - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :target pseudo-class selector, matching the element referenced by the URL fragment identifier (with no refNodes): :target - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :lang pseudo-class selector, matching inherited language (1) (with no refNodes): #pseudo-lang-div1:lang(en) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :lang pseudo-class selector, matching inherited language (1) (with no refNodes): #pseudo-lang-div1:lang(en) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :lang pseudo-class selector, matching specified language with exact value (1) (with no refNodes): #pseudo-lang-div2:lang(fr) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :lang pseudo-class selector, matching specified language with exact value (1) (with no refNodes): #pseudo-lang-div2:lang(fr) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :lang pseudo-class selector, matching specified language with partial value (1) (with no refNodes): #pseudo-lang-div3:lang(en) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :lang pseudo-class selector, matching specified language with partial value (1) (with no refNodes): #pseudo-lang-div3:lang(en) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :lang pseudo-class selector, not matching incorrect language (with no refNodes): #pseudo-lang-div4:lang(es-AR) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :lang pseudo-class selector, not matching incorrect language (with no refNodes): #pseudo-lang-div4:lang(es-AR) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :enabled pseudo-class selector, matching all enabled form controls (1) (with no refNodes): #pseudo-ui :enabled - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :enabled pseudo-class selector, matching all enabled form controls (1) (with no refNodes): #pseudo-ui :enabled - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :enabled pseudo-class selector, matching all disabled form controls (1) (with no refNodes): #pseudo-ui :disabled - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :enabled pseudo-class selector, matching all disabled form controls (1) (with no refNodes): #pseudo-ui :disabled - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes (1) (with no refNodes): #pseudo-ui :checked - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :checked pseudo-class selector, matching checked radio buttons and checkboxes (1) (with no refNodes): #pseudo-ui :checked - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :not pseudo-class selector, matching (1) (with no refNodes): #not>:not(div) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :not pseudo-class selector, matching (1) (with no refNodes): #not>:not(div) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :not pseudo-class selector, matching (1) (with no refNodes): #not * :not(:first-child) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :not pseudo-class selector, matching (1) (with no refNodes): #not * :not(:first-child) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :not pseudo-class selector, matching nothing (with no refNodes): :not(*) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :not pseudo-class selector, matching nothing (with no refNodes): :not(*) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :not pseudo-class selector, matching nothing (with no refNodes): :not(*|*) - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :not pseudo-class selector, matching nothing (with no refNodes): :not(*|*) - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:first-line - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :first-line pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:first-line - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::first-line - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::first-line - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:first-letter - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:first-letter - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::first-letter - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::first-letter - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :before pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:before - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :before pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:before - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ::before pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::before - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ::before pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::before - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: :after pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:after - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: :after pseudo-element (one-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element:after - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ::after pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::after - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ::after pseudo-element (two-colon syntax) selector, not matching any elements (with no refNodes): #pseudo-element::after - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, matching element with specified class (1) (with no refNodes): .class-p - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, matching element with specified class (1) (with no refNodes): .class-p - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, chained, matching only elements with all specified classes (1) (with no refNodes): #class .apple.orange.banana - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, chained, matching only elements with all specified classes (1) (with no refNodes): #class .apple.orange.banana - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class Selector, chained, with type selector (1) (with no refNodes): div.apple.banana.orange - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class Selector, chained, with type selector (1) (with no refNodes): div.apple.banana.orange - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, matching element with class value using non-ASCII characters (2) (with no refNodes): .台北Táiběi - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, matching element with class value using non-ASCII characters (2) (with no refNodes): .台北Táiběi - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, matching multiple elements with class value using non-ASCII characters (1) (with no refNodes): .台北 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, matching multiple elements with class value using non-ASCII characters (1) (with no refNodes): .台北 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, chained, matching element with multiple class values using non-ASCII characters (2) (with no refNodes): .台北Táiběi.台北 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, chained, matching element with multiple class values using non-ASCII characters (2) (with no refNodes): .台北Táiběi.台北 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, matching element with class with escaped character (1) (with no refNodes): .foo\:bar - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, matching element with class with escaped character (1) (with no refNodes): .foo\:bar - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Class selector, matching element with class with escaped character (1) (with no refNodes): .test\.foo\[5\]bar - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Class selector, matching element with class with escaped character (1) (with no refNodes): .test\.foo\[5\]bar - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching element with specified id (1) (with no refNodes): #id #id-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching element with specified id (1) (with no refNodes): #id #id-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, chained, matching element with specified id (1) (with no refNodes): #id-div1, #id-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, chained, matching element with specified id (1) (with no refNodes): #id-div1, #id-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, chained, matching element with specified id (1) (with no refNodes): #id-div1, #id-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, chained, matching element with specified id (1) (with no refNodes): #id-div1, #id-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID Selector, chained, with type selector (1) (with no refNodes): div#id-div1, div#id-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID Selector, chained, with type selector (1) (with no refNodes): div#id-div1, div#id-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, not matching non-existent descendant (with no refNodes): #id #none - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, not matching non-existent descendant (with no refNodes): #id #none - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, not matching non-existent ancestor (with no refNodes): #none #id-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, not matching non-existent ancestor (with no refNodes): #none #id-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching multiple elements with duplicate id (1) (with no refNodes): #id-li-duplicate - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching multiple elements with duplicate id (1) (with no refNodes): #id-li-duplicate - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching id value using non-ASCII characters (3) (with no refNodes): #台北Táiběi - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching id value using non-ASCII characters (3) (with no refNodes): #台北Táiběi - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching id value using non-ASCII characters (4) (with no refNodes): #台北 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching id value using non-ASCII characters (4) (with no refNodes): #台北 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching id values using non-ASCII characters (2) (with no refNodes): #台北Táiběi, #台北 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching id values using non-ASCII characters (2) (with no refNodes): #台北Táiběi, #台北 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching element with id with escaped character (with no refNodes): #\#foo\:bar - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching element with id with escaped character (with no refNodes): #\#foo\:bar - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: ID selector, matching element with id with escaped character (with no refNodes): #test\.foo\[5\]bar - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: ID selector, matching element with id with escaped character (with no refNodes): #test\.foo\[5\]bar - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Namespace selector, matching element with any namespace (with no refNodes): #any-namespace *|div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Namespace selector, matching element with any namespace (with no refNodes): #any-namespace *|div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Namespace selector, matching div elements in no namespace only (with no refNodes): #no-namespace |div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Namespace selector, matching div elements in no namespace only (with no refNodes): #no-namespace |div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Namespace selector, matching any elements in no namespace only (with no refNodes): #no-namespace |* - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Namespace selector, matching any elements in no namespace only (with no refNodes): #no-namespace |* - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element that is a descendant of an element with id (1) (with no refNodes): #descendant div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element that is a descendant of an element with id (1) (with no refNodes): #descendant div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element with id that is a descendant of an element (1) (with no refNodes): body #descendant-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element with id that is a descendant of an element (1) (with no refNodes): body #descendant-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element with id that is a descendant of an element (1) (with no refNodes): div #descendant-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element with id that is a descendant of an element (1) (with no refNodes): div #descendant-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element with id that is a descendant of an element with id (1) (with no refNodes): #descendant #descendant-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element with id that is a descendant of an element with id (1) (with no refNodes): #descendant #descendant-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element with class that is a descendant of an element with id (1) (with no refNodes): #descendant .descendant-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element with class that is a descendant of an element with id (1) (with no refNodes): #descendant .descendant-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, matching element with class that is a descendant of an element with class (1) (with no refNodes): .descendant-div1 .descendant-div3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, matching element with class that is a descendant of an element with class (1) (with no refNodes): .descendant-div1 .descendant-div3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, not matching element with id that is not a descendant of an element with id (with no refNodes): #descendant-div1 #descendant-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, not matching element with id that is not a descendant of an element with id (with no refNodes): #descendant-div1 #descendant-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Descendant combinator, whitespace characters (1) (with no refNodes): #descendant 20:19:23 INFO - #descendant-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Descendant combinator, whitespace characters (1) (with no refNodes): #descendant 20:19:23 INFO - #descendant-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, matching element that is a child of an element with id (1) (with no refNodes): #child>div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, matching element that is a child of an element with id (1) (with no refNodes): #child>div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, matching element with id that is a child of an element (1) (with no refNodes): div>#child-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, matching element with id that is a child of an element (1) (with no refNodes): div>#child-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, matching element with id that is a child of an element with id (1) (with no refNodes): #child>#child-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, matching element with id that is a child of an element with id (1) (with no refNodes): #child>#child-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, matching element with id that is a child of an element with class (1) (with no refNodes): #child-div1>.child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, matching element with id that is a child of an element with class (1) (with no refNodes): #child-div1>.child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, matching element with class that is a child of an element with class (1) (with no refNodes): .child-div1>.child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, matching element with class that is a child of an element with class (1) (with no refNodes): .child-div1>.child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, not matching element with id that is not a child of an element with id (with no refNodes): #child>#child-div3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, not matching element with id that is not a child of an element with id (with no refNodes): #child>#child-div3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, not matching element with id that is not a child of an element with class (with no refNodes): #child-div1>.child-div3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, not matching element with id that is not a child of an element with class (with no refNodes): #child-div1>.child-div3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, not matching element with class that is not a child of an element with class (with no refNodes): .child-div1>.child-div3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, not matching element with class that is not a child of an element with class (with no refNodes): .child-div1>.child-div3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, surrounded by whitespace (1) (with no refNodes): #child-div1 20:19:23 INFO - > 20:19:23 INFO - #child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, surrounded by whitespace (1) (with no refNodes): #child-div1 20:19:23 INFO - > 20:19:23 INFO - #child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, whitespace after (1) (with no refNodes): #child-div1> 20:19:23 INFO - #child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, whitespace after (1) (with no refNodes): #child-div1> 20:19:23 INFO - #child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, whitespace before (1) (with no refNodes): #child-div1 20:19:23 INFO - >#child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, whitespace before (1) (with no refNodes): #child-div1 20:19:23 INFO - >#child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Child combinator, no whitespace (1) (with no refNodes): #child-div1>#child-div2 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Child combinator, no whitespace (1) (with no refNodes): #child-div1>#child-div2 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element (1) (with no refNodes): div+#adjacent-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element (1) (with no refNodes): div+#adjacent-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+#adjacent-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+#adjacent-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+.adjacent-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id (1) (with no refNodes): #adjacent-div2+.adjacent-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class (1) (with no refNodes): .adjacent-div2+.adjacent-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class (1) (with no refNodes): .adjacent-div2+.adjacent-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element (1) (with no refNodes): #adjacent div+p - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element (1) (with no refNodes): #adjacent div+p - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id (with no refNodes): #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, not matching element with id that is not an adjacent sibling of an element with id (with no refNodes): #adjacent-div2+#adjacent-p2, #adjacent-div2+#adjacent-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, surrounded by whitespace (1) (with no refNodes): #adjacent-p2 20:19:23 INFO - + 20:19:23 INFO - #adjacent-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, surrounded by whitespace (1) (with no refNodes): #adjacent-p2 20:19:23 INFO - + 20:19:23 INFO - #adjacent-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, whitespace after (1) (with no refNodes): #adjacent-p2+ 20:19:23 INFO - #adjacent-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, whitespace after (1) (with no refNodes): #adjacent-p2+ 20:19:23 INFO - #adjacent-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, whitespace before (1) (with no refNodes): #adjacent-p2 20:19:23 INFO - +#adjacent-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, whitespace before (1) (with no refNodes): #adjacent-p2 20:19:23 INFO - +#adjacent-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Adjacent sibling combinator, no whitespace (1) (with no refNodes): #adjacent-p2+#adjacent-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Adjacent sibling combinator, no whitespace (1) (with no refNodes): #adjacent-p2+#adjacent-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, matching element that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, matching element that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, matching element with id that is a sibling of an element (1) (with no refNodes): div~#sibling-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, matching element with id that is a sibling of an element (1) (with no refNodes): div~#sibling-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, matching element with id that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~#sibling-div4 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, matching element with id that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~#sibling-div4 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, matching element with class that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~.sibling-div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, matching element with class that is a sibling of an element with id (1) (with no refNodes): #sibling-div2~.sibling-div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, matching p element that is a sibling of a div element (1) (with no refNodes): #sibling div~p - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, matching p element that is a sibling of a div element (1) (with no refNodes): #sibling div~p - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, not matching element with id that is not a sibling after a p element (1) (with no refNodes): #sibling>p~div - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, not matching element with id that is not a sibling after a p element (1) (with no refNodes): #sibling>p~div - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, not matching element with id that is not a sibling after an element with id (with no refNodes): #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, not matching element with id that is not a sibling after an element with id (with no refNodes): #sibling-div2~#sibling-div3, #sibling-div2~#sibling-div1 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, surrounded by whitespace (1) (with no refNodes): #sibling-p2 20:19:23 INFO - ~ 20:19:23 INFO - #sibling-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, surrounded by whitespace (1) (with no refNodes): #sibling-p2 20:19:23 INFO - ~ 20:19:23 INFO - #sibling-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, whitespace after (1) (with no refNodes): #sibling-p2~ 20:19:23 INFO - #sibling-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, whitespace after (1) (with no refNodes): #sibling-p2~ 20:19:23 INFO - #sibling-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, whitespace before (1) (with no refNodes): #sibling-p2 20:19:23 INFO - ~#sibling-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, whitespace before (1) (with no refNodes): #sibling-p2 20:19:23 INFO - ~#sibling-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: General sibling combinator, no whitespace (1) (with no refNodes): #sibling-p2~#sibling-p3 - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: General sibling combinator, no whitespace (1) (with no refNodes): #sibling-p2~#sibling-p3 - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Syntax, group of selectors separator, surrounded by whitespace (1) (with no refNodes): #group em 20:19:23 INFO - 20:19:23 INFO - , 20:19:23 INFO - 20:19:23 INFO - #group strong - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Syntax, group of selectors separator, surrounded by whitespace (1) (with no refNodes): #group em 20:19:23 INFO - 20:19:23 INFO - , 20:19:23 INFO - 20:19:23 INFO - #group strong - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Syntax, group of selectors separator, whitespace after (1) (with no refNodes): #group em, 20:19:23 INFO - #group strong - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Syntax, group of selectors separator, whitespace after (1) (with no refNodes): #group em, 20:19:23 INFO - #group strong - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Syntax, group of selectors separator, whitespace before (1) (with no refNodes): #group em 20:19:23 INFO - ,#group strong - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Syntax, group of selectors separator, whitespace before (1) (with no refNodes): #group em 20:19:23 INFO - ,#group strong - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.queryAll: Syntax, group of selectors separator, no whitespace (1) (with no refNodes): #group em,#group strong - root.queryAll is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:217:24 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:216:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-FAIL | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | In-document.query: Syntax, group of selectors separator, no whitespace (1) (with no refNodes): #group em,#group strong - root.query is not a function 20:19:23 INFO - runValidSelectorTest/<@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:222:21 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:23 INFO - runValidSelectorTest@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js:221:1 20:19:23 INFO - init@http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html:87:3 20:19:23 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:23 INFO - Test.prototype.step_func_done/<@http://web-platform.test:8000/resources/testharness.js:1422:1 20:19:23 INFO - TEST-OK | /selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html | took 6493ms 20:19:23 INFO - TEST-START | /selectors/attribute-selectors/attribute-case/cssom.html 20:19:24 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a80e6800 == 20 [pid = 8892] [id = 819] 20:19:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 45 (0x7fd8a47c9800) [pid = 8892] [serial = 2294] [outer = (nil)] 20:19:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 46 (0x7fd8a53a8c00) [pid = 8892] [serial = 2295] [outer = 0x7fd8a47c9800] 20:19:24 INFO - PROCESS | 8892 | 1459567164243 Marionette INFO loaded listener.js 20:19:24 INFO - PROCESS | 8892 | ++DOMWINDOW == 47 (0x7fd8b6c9f400) [pid = 8892] [serial = 2296] [outer = 0x7fd8a47c9800] 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ insertRule 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ getting CSSRule#cssText 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ setting CSSRule#cssText - assert_equals: expected "[foo=\"bar\"]" but got "before_set " 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ getting CSSStyleRule#selectorText 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ setting CSSStyleRule#selectorText - assert_equals: expected "[foo=\"bar\"]" but got "foobar" 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ insertRule in @media 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ getting CSSRule#cssText in @media 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ setting CSSRule#cssText in @media - assert_equals: expected "[foo=\"bar\"]" but got "before_set " 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ getting CSSStyleRule#selectorText in @media 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"] /* sanity check */ setting CSSStyleRule#selectorText in @media - assert_equals: expected "[foo=\"bar\"]" but got "foobar" 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] insertRule - An invalid or illegal string was specified 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] getting CSSRule#cssText - An invalid or illegal string was specified 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] setting CSSRule#cssText - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] getting CSSStyleRule#selectorText - An invalid or illegal string was specified 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] setting CSSStyleRule#selectorText - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] insertRule in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:25 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:25 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] getting CSSRule#cssText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:25 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:25 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] setting CSSRule#cssText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] getting CSSStyleRule#selectorText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" i] setting CSSStyleRule#selectorText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] insertRule - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] getting CSSRule#cssText - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] setting CSSRule#cssText - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] getting CSSStyleRule#selectorText - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] setting CSSStyleRule#selectorText - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] insertRule in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] getting CSSRule#cssText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] setting CSSRule#cssText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] getting CSSStyleRule#selectorText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar" /**/ i] setting CSSStyleRule#selectorText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] insertRule - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] getting CSSRule#cssText - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] setting CSSRule#cssText - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] getting CSSStyleRule#selectorText - An invalid or illegal string was specified 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] setting CSSStyleRule#selectorText - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] insertRule in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:34:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:32:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] getting CSSRule#cssText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:40:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:38:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] setting CSSRule#cssText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "before_set { " 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:48:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:44:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] getting CSSStyleRule#selectorText in @media - Component returned failure code: 0x8053000c [nsIDOMCSSMediaRule.insertRule] 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:53:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:51:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/cssom.html | [foo="bar"/**/i] setting CSSStyleRule#selectorText in @media - assert_equals: expected "[foo=\"bar\" i]" but got "foobar" 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:61:7 20:19:26 INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1382:20 20:19:26 INFO - test@http://web-platform.test:8000/resources/testharness.js:496:9 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:57:1 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:31:3 20:19:26 INFO - @http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html:28:1 20:19:26 INFO - TEST-OK | /selectors/attribute-selectors/attribute-case/cssom.html | took 2276ms 20:19:26 INFO - TEST-START | /selectors/attribute-selectors/attribute-case/semantics.html 20:19:26 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d82800 == 21 [pid = 8892] [id = 820] 20:19:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 48 (0x7fd8a4dae400) [pid = 8892] [serial = 2297] [outer = (nil)] 20:19:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 49 (0x7fd8a53bd800) [pid = 8892] [serial = 2298] [outer = 0x7fd8a4dae400] 20:19:26 INFO - PROCESS | 8892 | 1459567166769 Marionette INFO loaded listener.js 20:19:26 INFO - PROCESS | 8892 | ++DOMWINDOW == 50 (0x7fd8a6e1a400) [pid = 8892] [serial = 2299] [outer = 0x7fd8a4dae400] 20:19:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4709000 == 22 [pid = 8892] [id = 821] 20:19:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 51 (0x7fd8a73c0400) [pid = 8892] [serial = 2300] [outer = (nil)] 20:19:27 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d86800 == 23 [pid = 8892] [id = 822] 20:19:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 52 (0x7fd8a73c6800) [pid = 8892] [serial = 2301] [outer = (nil)] 20:19:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 53 (0x7fd8a53c6800) [pid = 8892] [serial = 2302] [outer = 0x7fd8a73c6800] 20:19:27 INFO - PROCESS | 8892 | ++DOMWINDOW == 54 (0x7fd8a780e800) [pid = 8892] [serial = 2303] [outer = 0x7fd8a73c0400] 20:19:27 INFO - PROCESS | 8892 | --DOMWINDOW == 53 (0x7fd8a47d0c00) [pid = 8892] [serial = 2263] [outer = (nil)] [url = http://web-platform.test:8000/selection/test-iframe.html] 20:19:27 INFO - PROCESS | 8892 | --DOMWINDOW == 52 (0x7fd8a698e800) [pid = 8892] [serial = 2265] [outer = (nil)] [url = about:blank] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d88000 == 22 [pid = 8892] [id = 805] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6c60800 == 21 [pid = 8892] [id = 809] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a51a6800 == 20 [pid = 8892] [id = 814] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b78ab800 == 19 [pid = 8892] [id = 813] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6d41800 == 18 [pid = 8892] [id = 812] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b641f000 == 17 [pid = 8892] [id = 807] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b6c5a800 == 16 [pid = 8892] [id = 811] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d93000 == 15 [pid = 8892] [id = 810] 20:19:28 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8b5dee000 == 14 [pid = 8892] [id = 806] 20:19:28 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='BAR'] /* sanity check (match) */
in standards mode 20:19:28 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='BAR'] /* sanity check (match) */
with querySelector in standards mode 20:19:28 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='bar' i]
in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode 20:19:28 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [missingattr] /* sanity check (no match) */
with querySelector in standards mode 20:19:28 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='' i]
in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in standards mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in standards mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode 20:19:28 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='BAR'] /* sanity check (match) */
with querySelector in quirks mode 20:19:28 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='bar' i]
in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:28 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:28 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode 20:19:29 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [missingattr] /* sanity check (no match) */
with querySelector in quirks mode 20:19:29 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='' i]
in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in quirks mode - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in quirks mode - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML 20:19:29 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='BAR'] /* sanity check (match) */
with querySelector in XML 20:19:29 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='bar' i]
in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML 20:19:29 INFO - TEST-PASS | /selectors/attribute-selectors/attribute-case/semantics.html | [missingattr] /* sanity check (no match) */
with querySelector in XML 20:19:29 INFO - TEST-FAIL | /selectors/attribute-selectors/attribute-case/semantics.html | [foo='' i]
in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 2 but got 1 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/ in XML - assert_equals: rule didn't parse into CSSOM expected 1 but got 0 20:19:29 INFO - onload/ with querySelector in XML - An invalid or illegal string was specified 20:19:29 INFO - onload/RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:19:36 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 629 20:19:36 INFO - PROCESS | 8892 | [8892] WARNING: 'result.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 169 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add and Cache.addAll 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add called with no arguments - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add called with relative URL specified as a string - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add called with non-HTTP/HTTPS URL - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add called with Request object - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add called twice with the same Request object - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add with request that results in a status of 404 - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.add with request that results in a status of 500 - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll with no arguments - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll with a mix of valid and undefined arguments - {} 20:19:36 INFO - {} 20:19:36 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll with string URL arguments - {} 20:19:36 INFO - {} 20:19:37 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll with Request arguments - {} 20:19:37 INFO - {} 20:19:37 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll with a mix of succeeding and failing requests - {} 20:19:37 INFO - {} 20:19:37 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-add.https.html | Cache.addAll called with the same Request object specified twice - {} 20:19:37 INFO - {} 20:19:37 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-add.https.html | took 2938ms 20:19:37 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-delete.https.html 20:19:37 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8affc3800 == 20 [pid = 8892] [id = 828] 20:19:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 51 (0x7fd8a47c6800) [pid = 8892] [serial = 2318] [outer = (nil)] 20:19:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 52 (0x7fd8a73ba000) [pid = 8892] [serial = 2319] [outer = 0x7fd8a47c6800] 20:19:37 INFO - PROCESS | 8892 | 1459567177405 Marionette INFO loaded listener.js 20:19:37 INFO - PROCESS | 8892 | ++DOMWINDOW == 53 (0x7fd8af5c9c00) [pid = 8892] [serial = 2320] [outer = 0x7fd8a47c6800] 20:19:38 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:38 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:38 INFO - PROCESS | 8892 | 20:19:38 INFO - PROCESS | 8892 | ###!!! [Parent][OnMaybeDequeueOne] Error: Channel closing: too late to send/recv, messages will be lost 20:19:38 INFO - PROCESS | 8892 | 20:19:38 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:38 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-delete.https.html | Cache.delete 20:19:38 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-delete.https.html | Cache.delete with no arguments - {} 20:19:38 INFO - {} 20:19:38 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-delete.https.html | Cache.delete called with a string URL - {} 20:19:38 INFO - {} 20:19:38 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-delete.https.html | Cache.delete called with a Request object - {} 20:19:38 INFO - {} 20:19:38 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-delete.https.html | Cache.delete with a non-existent entry - {} 20:19:38 INFO - {} 20:19:38 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-delete.https.html | took 1570ms 20:19:38 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-match.https.html 20:19:39 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ac9800 == 21 [pid = 8892] [id = 829] 20:19:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 54 (0x7fd8a47ce400) [pid = 8892] [serial = 2321] [outer = (nil)] 20:19:39 INFO - PROCESS | 8892 | ++DOMWINDOW == 55 (0x7fd8a665d800) [pid = 8892] [serial = 2322] [outer = 0x7fd8a47ce400] 20:19:39 INFO - PROCESS | 8892 | 1459567179909 Marionette INFO loaded listener.js 20:19:40 INFO - PROCESS | 8892 | ++DOMWINDOW == 56 (0x7fd8a7353800) [pid = 8892] [serial = 2323] [outer = 0x7fd8a47ce400] 20:19:40 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:40 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8af3dd800 == 20 [pid = 8892] [id = 826] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd1000 == 19 [pid = 8892] [id = 824] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8adbd1800 == 18 [pid = 8892] [id = 825] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8ad8de000 == 17 [pid = 8892] [id = 823] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4709000 == 16 [pid = 8892] [id = 821] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d86800 == 15 [pid = 8892] [id = 822] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d82800 == 14 [pid = 8892] [id = 820] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a80e6800 == 13 [pid = 8892] [id = 819] 20:19:41 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a551c000 == 12 [pid = 8892] [id = 818] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 55 (0x7fd8a6985c00) [pid = 8892] [serial = 2271] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 54 (0x7fd8a8516800) [pid = 8892] [serial = 2274] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 53 (0x7fd8a8eafc00) [pid = 8892] [serial = 2276] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 52 (0x7fd8a73b9c00) [pid = 8892] [serial = 2285] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 51 (0x7fd8a759f000) [pid = 8892] [serial = 2282] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 50 (0x7fd8a82dc400) [pid = 8892] [serial = 2288] [outer = (nil)] [url = about:blank] 20:19:41 INFO - PROCESS | 8892 | --DOMWINDOW == 49 (0x7fd8a8556000) [pid = 8892] [serial = 2261] [outer = (nil)] [url = about:blank] 20:19:43 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match and Cache.matchAll 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with no matching entries - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with no matching entries - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with URL - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with URL - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with Request - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with Request - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with new Request - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with new Request - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with no search parameters) - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with ignoreSearch option (request with no search parameters) - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with search parameter) - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with ignoreSearch option (request with search parameter) - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with URL containing fragment - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with URL containing fragment - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with string fragment "http" as query - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with string fragment "http" as query - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with responses containing "Vary" header - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with responses containing "Vary" header - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.matchAll with "ignoreVary" parameter - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with Request and Response objects with different URLs - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match invoked multiple times for the same Request/Response - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-match.https.html | Cache.match with POST Request - {} 20:19:43 INFO - {} 20:19:43 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-match.https.html | took 4493ms 20:19:43 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-put.https.html 20:19:43 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ad9800 == 13 [pid = 8892] [id = 830] 20:19:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 50 (0x7fd8a4d9f400) [pid = 8892] [serial = 2324] [outer = (nil)] 20:19:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 51 (0x7fd8a53ab800) [pid = 8892] [serial = 2325] [outer = 0x7fd8a4d9f400] 20:19:43 INFO - PROCESS | 8892 | 1459567183531 Marionette INFO loaded listener.js 20:19:43 INFO - PROCESS | 8892 | ++DOMWINDOW == 52 (0x7fd8a7367400) [pid = 8892] [serial = 2326] [outer = 0x7fd8a4d9f400] 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rr->RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:19:44 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:44 INFO - PROCESS | 8892 | 20:19:44 INFO - PROCESS | 8892 | ###!!! [Parent][OnMaybeDequeueOne] Error: Channel closing: too late to send/recv, messages will be lost 20:19:44 INFO - PROCESS | 8892 | 20:19:45 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 51 (0x7fd8a53a8c00) [pid = 8892] [serial = 2295] [outer = (nil)] [url = about:blank] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 50 (0x7fd8a53bd800) [pid = 8892] [serial = 2298] [outer = (nil)] [url = about:blank] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 49 (0x7fd8a7810000) [pid = 8892] [serial = 2305] [outer = (nil)] [url = about:blank] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 48 (0x7fd8a734b400) [pid = 8892] [serial = 2313] [outer = (nil)] [url = about:blank] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 47 (0x7fd8a4dae400) [pid = 8892] [serial = 2297] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/semantics.html] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 46 (0x7fd8a73c6800) [pid = 8892] [serial = 2301] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/resources/semantics-xml.xhtml] 20:19:45 INFO - PROCESS | 8892 | --DOMWINDOW == 45 (0x7fd8a73c0400) [pid = 8892] [serial = 2300] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/resources/semantics-quirks.html] 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put called with simple Request and Response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put called with Request and Response from fetch() - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with Request without a body - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with Response without a body - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a Response containing an empty URL - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with an empty response body - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with HTTP 500 response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put called twice with matching Requests and different Responses - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put called twice with request URLs that differ only by a fragment - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a string request - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with an invalid response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a non-HTTP/HTTPS request - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a relative URL - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a non-GET request - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a null response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a POST request - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a used response body - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with a VARY:* Response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-put.https.html | Cache.put with an embedded VARY:* Response - {} 20:19:45 INFO - {} 20:19:45 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-put.https.html | took 2477ms 20:19:45 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-storage-keys.https.html 20:19:45 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5ce800 == 14 [pid = 8892] [id = 831] 20:19:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 46 (0x7fd8a6b88000) [pid = 8892] [serial = 2327] [outer = (nil)] 20:19:45 INFO - PROCESS | 8892 | ++DOMWINDOW == 47 (0x7fd8a73b9c00) [pid = 8892] [serial = 2328] [outer = 0x7fd8a6b88000] 20:19:45 INFO - PROCESS | 8892 | 1459567185939 Marionette INFO loaded listener.js 20:19:46 INFO - PROCESS | 8892 | ++DOMWINDOW == 48 (0x7fd8a7ba5000) [pid = 8892] [serial = 2329] [outer = 0x7fd8a6b88000] 20:19:46 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:46 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:46 INFO - PROCESS | 8892 | 20:19:46 INFO - PROCESS | 8892 | ###!!! [Parent][OnMaybeDequeueOne] Error: Channel closing: too late to send/recv, messages will be lost 20:19:46 INFO - PROCESS | 8892 | 20:19:46 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:46 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-keys.https.html | CacheStorage.keys 20:19:46 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-keys.https.html | CacheStorage keys - {} 20:19:46 INFO - {} 20:19:46 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-storage-keys.https.html | took 1175ms 20:19:46 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html 20:19:47 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aabaa000 == 15 [pid = 8892] [id = 832] 20:19:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 49 (0x7fd8a7ba6800) [pid = 8892] [serial = 2330] [outer = (nil)] 20:19:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 50 (0x7fd8a8025c00) [pid = 8892] [serial = 2331] [outer = 0x7fd8a7ba6800] 20:19:47 INFO - PROCESS | 8892 | 1459567187080 Marionette INFO loaded listener.js 20:19:47 INFO - PROCESS | 8892 | ++DOMWINDOW == 51 (0x7fd8a82e2c00) [pid = 8892] [serial = 2332] [outer = 0x7fd8a7ba6800] 20:19:47 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:47 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:48 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Manager.cpp, line 1118 20:19:48 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpParent.cpp, line 167 20:19:48 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpChild.cpp, line 100 20:19:48 INFO - PROCESS | 8892 | 20:19:48 INFO - PROCESS | 8892 | ###!!! [Parent][OnMaybeDequeueOne] Error: Channel closing: too late to send/recv, messages will be lost 20:19:48 INFO - PROCESS | 8892 | 20:19:48 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorage.match 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch with no cache name provided - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch from one of many caches - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch from one of many caches by name - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch a string request - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch with no cached entry - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | CacheStorageMatch with no caches available but name provided - {} 20:19:48 INFO - {} 20:19:48 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-storage-match.https.html | took 1649ms 20:19:48 INFO - TEST-START | /service-workers/cache-storage/serviceworker/cache-storage.https.html 20:19:48 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa5d3000 == 16 [pid = 8892] [id = 833] 20:19:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 52 (0x7fd8a6b84c00) [pid = 8892] [serial = 2333] [outer = (nil)] 20:19:48 INFO - PROCESS | 8892 | ++DOMWINDOW == 53 (0x7fd8a6e18800) [pid = 8892] [serial = 2334] [outer = 0x7fd8a6b84c00] 20:19:48 INFO - PROCESS | 8892 | 1459567188966 Marionette INFO loaded listener.js 20:19:49 INFO - PROCESS | 8892 | ++DOMWINDOW == 54 (0x7fd8a75a0c00) [pid = 8892] [serial = 2335] [outer = 0x7fd8a6b84c00] 20:19:49 INFO - PROCESS | 8892 | [8892] WARNING: '!newest', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 339 20:19:49 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/ServiceWorkerManager.cpp, line 2897 20:19:50 INFO - PROCESS | 8892 | [8892] WARNING: A control runnable was posted to a worker that is already shutting down!: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/workers/WorkerPrivate.cpp, line 2375 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.open - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.open with an empty name - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.open with no arguments - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.has with existing cache - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.has with nonexistent cache - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.open with existing cache - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.delete with existing cache - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage.delete with nonexistent cache - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-PASS | /service-workers/cache-storage/serviceworker/cache-storage.https.html | CacheStorage names are DOMStrings not USVStrings - {} 20:19:50 INFO - {} 20:19:50 INFO - TEST-OK | /service-workers/cache-storage/serviceworker/cache-storage.https.html | took 1691ms 20:19:50 INFO - TEST-START | /service-workers/cache-storage/window/cache-add.https.html 20:19:50 INFO - Clearing pref dom.serviceWorkers.interception.enabled 20:19:50 INFO - Clearing pref dom.serviceWorkers.enabled 20:19:50 INFO - Clearing pref dom.caches.enabled 20:19:50 INFO - Clearing pref dom.serviceWorkers.exemptFromPerDomainMax 20:19:50 INFO - Setting pref dom.caches.enabled (true) 20:19:50 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6ad800 == 17 [pid = 8892] [id = 834] 20:19:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 55 (0x7fd8a6b85c00) [pid = 8892] [serial = 2336] [outer = (nil)] 20:19:50 INFO - PROCESS | 8892 | ++DOMWINDOW == 56 (0x7fd8a802ac00) [pid = 8892] [serial = 2337] [outer = 0x7fd8a6b85c00] 20:19:50 INFO - PROCESS | 8892 | 1459567190964 Marionette INFO loaded listener.js 20:19:51 INFO - PROCESS | 8892 | ++DOMWINDOW == 57 (0x7fd8a9aaa800) [pid = 8892] [serial = 2338] [outer = 0x7fd8a6b85c00] 20:19:51 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestURL(url, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 316 20:19:52 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rr->RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:19:52 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 629 20:19:52 INFO - PROCESS | 8892 | [8892] WARNING: 'result.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 169 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add called with no arguments 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add called with relative URL specified as a string 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add called with non-HTTP/HTTPS URL 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add called with Request object 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add called twice with the same Request object 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add with request that results in a status of 404 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.add with request that results in a status of 500 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll with no arguments 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll with a mix of valid and undefined arguments 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll with string URL arguments 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll with Request arguments 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll with a mix of succeeding and failing requests 20:19:53 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-add.https.html | Cache.addAll called with the same Request object specified twice 20:19:53 INFO - TEST-OK | /service-workers/cache-storage/window/cache-add.https.html | took 2949ms 20:19:53 INFO - TEST-START | /service-workers/cache-storage/window/cache-delete.https.html 20:19:53 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ad1000 == 18 [pid = 8892] [id = 835] 20:19:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 58 (0x7fd8a4f30400) [pid = 8892] [serial = 2339] [outer = (nil)] 20:19:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 59 (0x7fd8a4f32800) [pid = 8892] [serial = 2340] [outer = 0x7fd8a4f30400] 20:19:53 INFO - PROCESS | 8892 | 1459567193618 Marionette INFO loaded listener.js 20:19:53 INFO - PROCESS | 8892 | ++DOMWINDOW == 60 (0x7fd8a4f3c400) [pid = 8892] [serial = 2341] [outer = 0x7fd8a4f30400] 20:19:54 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-delete.https.html | Cache.delete with no arguments 20:19:54 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-delete.https.html | Cache.delete called with a string URL 20:19:54 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-delete.https.html | Cache.delete called with a Request object 20:19:54 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-delete.https.html | Cache.delete with a non-existent entry 20:19:54 INFO - TEST-OK | /service-workers/cache-storage/window/cache-delete.https.html | took 1330ms 20:19:54 INFO - TEST-START | /service-workers/cache-storage/window/cache-match.https.html 20:19:54 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a4d77800 == 19 [pid = 8892] [id = 836] 20:19:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 61 (0x7fd8a4da3400) [pid = 8892] [serial = 2342] [outer = (nil)] 20:19:54 INFO - PROCESS | 8892 | ++DOMWINDOW == 62 (0x7fd8a4f3b400) [pid = 8892] [serial = 2343] [outer = 0x7fd8a4da3400] 20:19:54 INFO - PROCESS | 8892 | 1459567194941 Marionette INFO loaded listener.js 20:19:55 INFO - PROCESS | 8892 | ++DOMWINDOW == 63 (0x7fd8a53ccc00) [pid = 8892] [serial = 2344] [outer = 0x7fd8a4da3400] 20:19:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8affc3800 == 18 [pid = 8892] [id = 828] 20:19:55 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d7f800 == 17 [pid = 8892] [id = 827] 20:19:55 INFO - PROCESS | 8892 | --DOMWINDOW == 62 (0x7fd8a53c6800) [pid = 8892] [serial = 2302] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/resources/semantics-xml.xhtml] 20:19:55 INFO - PROCESS | 8892 | --DOMWINDOW == 61 (0x7fd8a780e800) [pid = 8892] [serial = 2303] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/resources/semantics-quirks.html] 20:19:55 INFO - PROCESS | 8892 | --DOMWINDOW == 60 (0x7fd8a6e1a400) [pid = 8892] [serial = 2299] [outer = (nil)] [url = about:blank] 20:19:55 INFO - PROCESS | 8892 | --DOMWINDOW == 59 (0x7fd8a9cee400) [pid = 8892] [serial = 2268] [outer = (nil)] [url = about:blank] 20:19:55 INFO - PROCESS | 8892 | --DOMWINDOW == 58 (0x7fd8b6c9f400) [pid = 8892] [serial = 2296] [outer = (nil)] [url = about:blank] 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with no matching entries 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with no matching entries 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with URL 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with URL 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with Request 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with Request 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with new Request 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with new Request 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with no search parameters) 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with ignoreSearch option (request with no search parameters) 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with search parameter) 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with ignoreSearch option (request with search parameter) 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with URL containing fragment 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with URL containing fragment 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with string fragment "http" as query 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with string fragment "http" as query 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with responses containing "Vary" header 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with responses containing "Vary" header 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.matchAll with "ignoreVary" parameter 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with Request and Response objects with different URLs 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match invoked multiple times for the same Request/Response 20:19:57 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-match.https.html | Cache.match with POST Request 20:19:57 INFO - TEST-OK | /service-workers/cache-storage/window/cache-match.https.html | took 3094ms 20:19:57 INFO - TEST-START | /service-workers/cache-storage/window/cache-put.https.html 20:19:57 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85c5000 == 18 [pid = 8892] [id = 837] 20:19:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 59 (0x7fd8a4f36800) [pid = 8892] [serial = 2345] [outer = (nil)] 20:19:57 INFO - PROCESS | 8892 | ++DOMWINDOW == 60 (0x7fd8a53dbc00) [pid = 8892] [serial = 2346] [outer = 0x7fd8a4f36800] 20:19:57 INFO - PROCESS | 8892 | 1459567197938 Marionette INFO loaded listener.js 20:19:58 INFO - PROCESS | 8892 | ++DOMWINDOW == 61 (0x7fd8a53e4000) [pid = 8892] [serial = 2347] [outer = 0x7fd8a4f36800] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 60 (0x7fd8a47d0800) [pid = 8892] [serial = 2312] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/common.https.html] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 59 (0x7fd8a73ba000) [pid = 8892] [serial = 2319] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 58 (0x7fd8a73b9c00) [pid = 8892] [serial = 2328] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 57 (0x7fd8a47cdc00) [pid = 8892] [serial = 2316] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 56 (0x7fd8a665d800) [pid = 8892] [serial = 2322] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 55 (0x7fd8a53ab800) [pid = 8892] [serial = 2325] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 54 (0x7fd8a8025c00) [pid = 8892] [serial = 2331] [outer = (nil)] [url = about:blank] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 53 (0x7fd8a47ce400) [pid = 8892] [serial = 2321] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-match.https.html] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 52 (0x7fd8a6b88000) [pid = 8892] [serial = 2327] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-storage-keys.https.html] 20:19:58 INFO - PROCESS | 8892 | --DOMWINDOW == 51 (0x7fd8a4d9f400) [pid = 8892] [serial = 2324] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-put.https.html] 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rr->RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:19:58 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put called with simple Request and Response 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put called with Request and Response from fetch() 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with Request without a body 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with Response without a body 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a Response containing an empty URL 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with an empty response body 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with HTTP 500 response 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put called twice with matching Requests and different Responses 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put called twice with request URLs that differ only by a fragment 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a string request 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with an invalid response 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a non-HTTP/HTTPS request 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a relative URL 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a non-GET request 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a null response 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a POST request 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a used response body 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with a VARY:* Response 20:19:59 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-put.https.html | Cache.put with an embedded VARY:* Response 20:19:59 INFO - TEST-OK | /service-workers/cache-storage/window/cache-put.https.html | took 1334ms 20:19:59 INFO - TEST-START | /service-workers/cache-storage/window/cache-storage-keys.https.html 20:19:59 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aa50d800 == 19 [pid = 8892] [id = 838] 20:19:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 52 (0x7fd8a53ecc00) [pid = 8892] [serial = 2348] [outer = (nil)] 20:19:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 53 (0x7fd8a53f0000) [pid = 8892] [serial = 2349] [outer = 0x7fd8a53ecc00] 20:19:59 INFO - PROCESS | 8892 | 1459567199259 Marionette INFO loaded listener.js 20:19:59 INFO - PROCESS | 8892 | ++DOMWINDOW == 54 (0x7fd8a53f9800) [pid = 8892] [serial = 2350] [outer = 0x7fd8a53ecc00] 20:20:00 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-keys.https.html | CacheStorage keys 20:20:00 INFO - TEST-OK | /service-workers/cache-storage/window/cache-storage-keys.https.html | took 982ms 20:20:00 INFO - TEST-START | /service-workers/cache-storage/window/cache-storage-match.https.html 20:20:00 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab9d800 == 20 [pid = 8892] [id = 839] 20:20:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 55 (0x7fd8a53f8c00) [pid = 8892] [serial = 2351] [outer = (nil)] 20:20:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 56 (0x7fd8a6990800) [pid = 8892] [serial = 2352] [outer = 0x7fd8a53f8c00] 20:20:00 INFO - PROCESS | 8892 | 1459567200284 Marionette INFO loaded listener.js 20:20:00 INFO - PROCESS | 8892 | ++DOMWINDOW == 57 (0x7fd8a69f6800) [pid = 8892] [serial = 2353] [outer = 0x7fd8a53f8c00] 20:20:01 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Manager.cpp, line 1118 20:20:01 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpParent.cpp, line 167 20:20:01 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpChild.cpp, line 100 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch with no cache name provided 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch from one of many caches 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch from one of many caches by name 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch a string request 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch with no cached entry 20:20:01 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage-match.https.html | CacheStorageMatch with no caches available but name provided 20:20:01 INFO - TEST-OK | /service-workers/cache-storage/window/cache-storage-match.https.html | took 1125ms 20:20:01 INFO - TEST-START | /service-workers/cache-storage/window/cache-storage.https.html 20:20:01 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af6a6000 == 21 [pid = 8892] [id = 840] 20:20:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 58 (0x7fd8a4da0000) [pid = 8892] [serial = 2354] [outer = (nil)] 20:20:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 59 (0x7fd8a6b90000) [pid = 8892] [serial = 2355] [outer = 0x7fd8a4da0000] 20:20:01 INFO - PROCESS | 8892 | 1459567201379 Marionette INFO loaded listener.js 20:20:01 INFO - PROCESS | 8892 | ++DOMWINDOW == 60 (0x7fd8a7356400) [pid = 8892] [serial = 2356] [outer = 0x7fd8a4da0000] 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.open 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.open with an empty name 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.open with no arguments 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.has with existing cache 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.has with nonexistent cache 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.open with existing cache 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.delete with existing cache 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage.delete with nonexistent cache 20:20:02 INFO - TEST-PASS | /service-workers/cache-storage/window/cache-storage.https.html | CacheStorage names are DOMStrings not USVStrings 20:20:02 INFO - TEST-OK | /service-workers/cache-storage/window/cache-storage.https.html | took 1332ms 20:20:02 INFO - TEST-START | /service-workers/cache-storage/window/sandboxed-iframes.https.html 20:20:02 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85cf000 == 22 [pid = 8892] [id = 841] 20:20:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 61 (0x7fd8a53bd800) [pid = 8892] [serial = 2357] [outer = (nil)] 20:20:02 INFO - PROCESS | 8892 | ++DOMWINDOW == 62 (0x7fd8a53cd000) [pid = 8892] [serial = 2358] [outer = 0x7fd8a53bd800] 20:20:02 INFO - PROCESS | 8892 | 1459567202909 Marionette INFO loaded listener.js 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 63 (0x7fd8a53da000) [pid = 8892] [serial = 2359] [outer = 0x7fd8a53bd800] 20:20:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab92000 == 23 [pid = 8892] [id = 842] 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 64 (0x7fd8a53e4800) [pid = 8892] [serial = 2360] [outer = (nil)] 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 65 (0x7fd8a53ee800) [pid = 8892] [serial = 2361] [outer = 0x7fd8a53e4800] 20:20:03 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8af975000 == 24 [pid = 8892] [id = 843] 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 66 (0x7fd8a53d0c00) [pid = 8892] [serial = 2362] [outer = (nil)] 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 67 (0x7fd8a53da400) [pid = 8892] [serial = 2363] [outer = 0x7fd8a53d0c00] 20:20:03 INFO - PROCESS | 8892 | ++DOMWINDOW == 68 (0x7fd8a53e7000) [pid = 8892] [serial = 2364] [outer = 0x7fd8a53d0c00] 20:20:04 INFO - PROCESS | 8892 | [8892] WARNING: CacheStorage has been disabled.: file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheStorage.cpp, line 157 20:20:04 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(mStatus)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheStorage.cpp, line 380 20:20:04 INFO - TEST-PASS | /service-workers/cache-storage/window/sandboxed-iframes.https.html | Sandboxed iframe with allow-same-origin is allowed access 20:20:04 INFO - TEST-PASS | /service-workers/cache-storage/window/sandboxed-iframes.https.html | Sandboxed iframe without allow-same-origin is denied access 20:20:04 INFO - TEST-OK | /service-workers/cache-storage/window/sandboxed-iframes.https.html | took 1580ms 20:20:04 INFO - TEST-START | /service-workers/cache-storage/worker/cache-add.https.html 20:20:04 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b016b000 == 25 [pid = 8892] [id = 844] 20:20:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 69 (0x7fd8a53dd400) [pid = 8892] [serial = 2365] [outer = (nil)] 20:20:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 70 (0x7fd8a53ea000) [pid = 8892] [serial = 2366] [outer = 0x7fd8a53dd400] 20:20:04 INFO - PROCESS | 8892 | 1459567204619 Marionette INFO loaded listener.js 20:20:04 INFO - PROCESS | 8892 | ++DOMWINDOW == 71 (0x7fd8a736dc00) [pid = 8892] [serial = 2367] [outer = 0x7fd8a53dd400] 20:20:05 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestURL(url, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 316 20:20:05 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rr->RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:20:06 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 629 20:20:06 INFO - PROCESS | 8892 | [8892] WARNING: 'result.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 169 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add called with no arguments - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add called with relative URL specified as a string - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add called with non-HTTP/HTTPS URL - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add called with Request object - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add called twice with the same Request object - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add with request that results in a status of 404 - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.add with request that results in a status of 500 - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll with no arguments - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll with a mix of valid and undefined arguments - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll with string URL arguments - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll with Request arguments - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll with a mix of succeeding and failing requests - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-add.https.html | Cache.addAll called with the same Request object specified twice - {} 20:20:06 INFO - {} 20:20:06 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-add.https.html | took 2235ms 20:20:06 INFO - TEST-START | /service-workers/cache-storage/worker/cache-delete.https.html 20:20:06 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8b045b000 == 26 [pid = 8892] [id = 845] 20:20:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 72 (0x7fd8a73ba000) [pid = 8892] [serial = 2368] [outer = (nil)] 20:20:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 73 (0x7fd8a7574800) [pid = 8892] [serial = 2369] [outer = 0x7fd8a73ba000] 20:20:06 INFO - PROCESS | 8892 | 1459567206820 Marionette INFO loaded listener.js 20:20:06 INFO - PROCESS | 8892 | ++DOMWINDOW == 74 (0x7fd8a7805000) [pid = 8892] [serial = 2370] [outer = 0x7fd8a73ba000] 20:20:08 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-delete.https.html | Cache.delete with no arguments - {} 20:20:08 INFO - {} 20:20:08 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-delete.https.html | Cache.delete called with a string URL - {} 20:20:08 INFO - {} 20:20:08 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-delete.https.html | Cache.delete called with a Request object - {} 20:20:08 INFO - {} 20:20:08 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-delete.https.html | Cache.delete with a non-existent entry - {} 20:20:08 INFO - {} 20:20:08 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-delete.https.html | took 2387ms 20:20:08 INFO - TEST-START | /service-workers/cache-storage/worker/cache-match.https.html 20:20:09 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a85b6800 == 27 [pid = 8892] [id = 846] 20:20:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 75 (0x7fd8a53d1800) [pid = 8892] [serial = 2371] [outer = (nil)] 20:20:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 76 (0x7fd8a53d6800) [pid = 8892] [serial = 2372] [outer = 0x7fd8a53d1800] 20:20:09 INFO - PROCESS | 8892 | 1459567209227 Marionette INFO loaded listener.js 20:20:09 INFO - PROCESS | 8892 | ++DOMWINDOW == 77 (0x7fd8a53dfc00) [pid = 8892] [serial = 2373] [outer = 0x7fd8a53d1800] 20:20:11 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ac7800 == 26 [pid = 8892] [id = 815] 20:20:11 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a4d78800 == 25 [pid = 8892] [id = 816] 20:20:11 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a78c9000 == 24 [pid = 8892] [id = 817] 20:20:11 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8aab92000 == 23 [pid = 8892] [id = 842] 20:20:11 INFO - PROCESS | 8892 | --DOCSHELL 0x7fd8a6ac9800 == 22 [pid = 8892] [id = 829] 20:20:11 INFO - PROCESS | 8892 | --DOMWINDOW == 76 (0x7fd8a7ba5000) [pid = 8892] [serial = 2329] [outer = (nil)] [url = about:blank] 20:20:11 INFO - PROCESS | 8892 | --DOMWINDOW == 75 (0x7fd8a7367400) [pid = 8892] [serial = 2326] [outer = (nil)] [url = about:blank] 20:20:11 INFO - PROCESS | 8892 | --DOMWINDOW == 74 (0x7fd8a7353800) [pid = 8892] [serial = 2323] [outer = (nil)] [url = about:blank] 20:20:11 INFO - PROCESS | 8892 | --DOMWINDOW == 73 (0x7fd8a7354400) [pid = 8892] [serial = 2314] [outer = (nil)] [url = about:blank] 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with no matching entries - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with no matching entries - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with URL - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with URL - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with Request - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with Request - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with new Request - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with new Request - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with no search parameters) - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with ignoreSearch option (request with no search parameters) - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with ignoreSearch option (request with search parameter) - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with ignoreSearch option (request with search parameter) - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with URL containing fragment - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with URL containing fragment - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with string fragment "http" as query - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with string fragment "http" as query - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with responses containing "Vary" header - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with responses containing "Vary" header - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.matchAll with "ignoreVary" parameter - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with Request and Response objects with different URLs - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match invoked multiple times for the same Request/Response - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-match.https.html | Cache.match with POST Request - {} 20:20:13 INFO - {} 20:20:13 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-match.https.html | took 4413ms 20:20:13 INFO - TEST-START | /service-workers/cache-storage/worker/cache-put.https.html 20:20:13 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a6ad7800 == 23 [pid = 8892] [id = 847] 20:20:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 74 (0x7fd8a4f39000) [pid = 8892] [serial = 2374] [outer = (nil)] 20:20:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 75 (0x7fd8a53be400) [pid = 8892] [serial = 2375] [outer = 0x7fd8a4f39000] 20:20:13 INFO - PROCESS | 8892 | 1459567213739 Marionette INFO loaded listener.js 20:20:13 INFO - PROCESS | 8892 | ++DOMWINDOW == 76 (0x7fd8a53e1400) [pid = 8892] [serial = 2376] [outer = 0x7fd8a4f39000] 20:20:14 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rr->RetargetDeliveryTo(sts))', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/fetch/FetchDriver.cpp, line 603 20:20:14 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: '!IsValidPutRequestMethod(aRequest, aRv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 384 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/TypeUtils.cpp, line 244 20:20:15 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Cache.cpp, line 397 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 75 (0x7fd8a4f7f400) [pid = 8892] [serial = 2292] [outer = (nil)] [url = http://web-platform.test:8000/dom/nodes/ParentNode-querySelector-All-content.html#target] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 74 (0x7fd8a53f8c00) [pid = 8892] [serial = 2351] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-storage-match.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 73 (0x7fd8a47d0400) [pid = 8892] [serial = 2266] [outer = (nil)] [url = http://web-platform.test:8000/selection/extend.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 72 (0x7fd8a47c6800) [pid = 8892] [serial = 2318] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-delete.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 71 (0x7fd8a6b84c00) [pid = 8892] [serial = 2333] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-storage.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 70 (0x7fd8a4da3400) [pid = 8892] [serial = 2342] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-match.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 69 (0x7fd8a53bb800) [pid = 8892] [serial = 2289] [outer = (nil)] [url = http://web-platform.test:8000/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 68 (0x7fd8a6b90000) [pid = 8892] [serial = 2355] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 67 (0x7fd8a53ecc00) [pid = 8892] [serial = 2348] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-storage-keys.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 66 (0x7fd8a7ba6800) [pid = 8892] [serial = 2330] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-storage-match.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 65 (0x7fd8a47c9800) [pid = 8892] [serial = 2294] [outer = (nil)] [url = http://web-platform.test:8000/selectors/attribute-selectors/attribute-case/cssom.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 64 (0x7fd8a4f36800) [pid = 8892] [serial = 2345] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-put.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 63 (0x7fd8a4f30400) [pid = 8892] [serial = 2339] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-delete.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 62 (0x7fd8a4da0000) [pid = 8892] [serial = 2354] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/window/cache-storage.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 61 (0x7fd8a47c4000) [pid = 8892] [serial = 2315] [outer = (nil)] [url = https://web-platform.test:8443/service-workers/cache-storage/serviceworker/cache-add.https.html] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 60 (0x7fd8a53dbc00) [pid = 8892] [serial = 2346] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 59 (0x7fd8a6e18800) [pid = 8892] [serial = 2334] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 58 (0x7fd8a802ac00) [pid = 8892] [serial = 2337] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 57 (0x7fd8a4f3b400) [pid = 8892] [serial = 2343] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 56 (0x7fd8a6990800) [pid = 8892] [serial = 2352] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 55 (0x7fd8a4f32800) [pid = 8892] [serial = 2340] [outer = (nil)] [url = about:blank] 20:20:15 INFO - PROCESS | 8892 | --DOMWINDOW == 54 (0x7fd8a53f0000) [pid = 8892] [serial = 2349] [outer = (nil)] [url = about:blank] 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put called with simple Request and Response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put called with Request and Response from fetch() - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with Request without a body - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with Response without a body - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a Response containing an empty URL - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with an empty response body - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with HTTP 500 response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put called twice with matching Requests and different Responses - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put called twice with request URLs that differ only by a fragment - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a string request - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with an invalid response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a non-HTTP/HTTPS request - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a relative URL - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a non-GET request - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a null response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a POST request - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a used response body - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with a VARY:* Response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-put.https.html | Cache.put with an embedded VARY:* Response - {} 20:20:15 INFO - {} 20:20:15 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-put.https.html | took 2483ms 20:20:15 INFO - TEST-START | /service-workers/cache-storage/worker/cache-storage-keys.https.html 20:20:16 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a9d43000 == 24 [pid = 8892] [id = 848] 20:20:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 55 (0x7fd8a53eac00) [pid = 8892] [serial = 2377] [outer = (nil)] 20:20:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 56 (0x7fd8a6991000) [pid = 8892] [serial = 2378] [outer = 0x7fd8a53eac00] 20:20:16 INFO - PROCESS | 8892 | 1459567216121 Marionette INFO loaded listener.js 20:20:16 INFO - PROCESS | 8892 | ++DOMWINDOW == 57 (0x7fd8a6e24000) [pid = 8892] [serial = 2379] [outer = 0x7fd8a53eac00] 20:20:16 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-keys.https.html | CacheStorage keys - {} 20:20:16 INFO - {} 20:20:16 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-storage-keys.https.html | took 1175ms 20:20:16 INFO - TEST-START | /service-workers/cache-storage/worker/cache-storage-match.https.html 20:20:17 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8aab8f000 == 25 [pid = 8892] [id = 849] 20:20:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 58 (0x7fd8a47cac00) [pid = 8892] [serial = 2380] [outer = (nil)] 20:20:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 59 (0x7fd8a7355000) [pid = 8892] [serial = 2381] [outer = 0x7fd8a47cac00] 20:20:17 INFO - PROCESS | 8892 | 1459567217278 Marionette INFO loaded listener.js 20:20:17 INFO - PROCESS | 8892 | ++DOMWINDOW == 60 (0x7fd8a7572c00) [pid = 8892] [serial = 2382] [outer = 0x7fd8a47cac00] 20:20:18 INFO - PROCESS | 8892 | [8892] WARNING: 'NS_FAILED(rv)', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/Manager.cpp, line 1118 20:20:18 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpParent.cpp, line 167 20:20:18 INFO - PROCESS | 8892 | [8892] WARNING: 'aRv.Failed()', file /builds/slave/m-rel-l64-d-000000000000000000/build/dom/cache/CacheOpChild.cpp, line 100 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch with no cache name provided - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch from one of many caches - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch from one of many caches by name - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch a string request - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch with no cached entry - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage-match.https.html | CacheStorageMatch with no caches available but name provided - {} 20:20:18 INFO - {} 20:20:18 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-storage-match.https.html | took 1686ms 20:20:18 INFO - TEST-START | /service-workers/cache-storage/worker/cache-storage.https.html 20:20:19 INFO - PROCESS | 8892 | ++DOCSHELL 0x7fd8a5518800 == 26 [pid = 8892] [id = 850] 20:20:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 61 (0x7fd8a4da3800) [pid = 8892] [serial = 2383] [outer = (nil)] 20:20:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 62 (0x7fd8a53bd000) [pid = 8892] [serial = 2384] [outer = 0x7fd8a4da3800] 20:20:19 INFO - PROCESS | 8892 | 1459567219110 Marionette INFO loaded listener.js 20:20:19 INFO - PROCESS | 8892 | ++DOMWINDOW == 63 (0x7fd8a69ef400) [pid = 8892] [serial = 2385] [outer = 0x7fd8a4da3800] 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.open - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.open with an empty name - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.open with no arguments - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.has with existing cache - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.has with nonexistent cache - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.open with existing cache - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.delete with existing cache - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage.delete with nonexistent cache - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-PASS | /service-workers/cache-storage/worker/cache-storage.https.html | CacheStorage names are DOMStrings not USVStrings - {} 20:20:20 INFO - {} 20:20:20 INFO - TEST-OK | /service-workers/cache-storage/worker/cache-storage.https.html | took 1630ms 20:20:21 WARNING - u'runner_teardown' () 20:20:21 INFO - No more tests 20:20:21 INFO - Got 0 unexpected results 20:20:21 INFO - SUITE-END | took 1223s 20:20:21 INFO - Closing logging queue 20:20:21 INFO - queue closed 20:20:21 INFO - Return code: 0 20:20:21 WARNING - # TBPL SUCCESS # 20:20:21 INFO - Running post-action listener: _resource_record_post_action 20:20:21 INFO - Running post-run listener: _resource_record_post_run 20:20:22 INFO - Total resource usage - Wall time: 1256s; CPU: 91.0%; Read bytes: 450560; Write bytes: 958021632; Read time: 92; Write time: 263084 20:20:22 INFO - pull - Wall time: 0s; CPU: Can't collect data; Read bytes: 0; Write bytes: 0; Read time: 0; Write time: 0 20:20:22 INFO - install - Wall time: 23s; CPU: 100.0%; Read bytes: 0; Write bytes: 7970816; Read time: 0; Write time: 1956 20:20:22 INFO - run-tests - Wall time: 1234s; CPU: 91.0%; Read bytes: 450560; Write bytes: 950050816; Read time: 92; Write time: 261128 20:20:22 INFO - Running post-run listener: _upload_blobber_files 20:20:22 INFO - Blob upload gear active. 20:20:22 INFO - Preparing to upload files from /builds/slave/test/build/blobber_upload_dir. 20:20:22 INFO - Files from /builds/slave/test/build/blobber_upload_dir are to be uploaded with branch at the following location(s): https://blobupload.elasticbeanstalk.com 20:20:22 INFO - Running command: ['/builds/slave/test/build/venv/bin/python', '/builds/slave/test/build/venv/bin/blobberc.py', '-u', 'https://blobupload.elasticbeanstalk.com', '-a', '/builds/slave/test/oauth.txt', '-b', 'mozilla-release', '-d', '/builds/slave/test/build/blobber_upload_dir', '--output-manifest', '/builds/slave/test/build/uploaded_files.json'] 20:20:22 INFO - Copy/paste: /builds/slave/test/build/venv/bin/python /builds/slave/test/build/venv/bin/blobberc.py -u https://blobupload.elasticbeanstalk.com -a /builds/slave/test/oauth.txt -b mozilla-release -d /builds/slave/test/build/blobber_upload_dir --output-manifest /builds/slave/test/build/uploaded_files.json 20:20:23 INFO - (blobuploader) - INFO - Open directory for files ... 20:20:23 INFO - (blobuploader) - INFO - Uploading /builds/slave/test/build/blobber_upload_dir/wpt_raw.log ... 20:20:24 INFO - (blobuploader) - INFO - Using https://blobupload.elasticbeanstalk.com 20:20:24 INFO - (blobuploader) - INFO - Uploading, attempt #1. 20:20:25 INFO - (blobuploader) - INFO - TinderboxPrint: wpt_raw.log: uploaded 20:20:25 INFO - (blobuploader) - INFO - Blobserver returned 202. File uploaded! 20:20:25 INFO - (blobuploader) - INFO - Done attempting. 20:20:25 INFO - (blobuploader) - INFO - Uploading /builds/slave/test/build/blobber_upload_dir/wpt_errorsummary.log ... 20:20:25 INFO - (blobuploader) - INFO - Using https://blobupload.elasticbeanstalk.com 20:20:25 INFO - (blobuploader) - INFO - Uploading, attempt #1. 20:20:26 INFO - (blobuploader) - INFO - TinderboxPrint: wpt_errorsummary.log: uploaded 20:20:26 INFO - (blobuploader) - INFO - Blobserver returned 202. File uploaded! 20:20:26 INFO - (blobuploader) - INFO - Done attempting. 20:20:26 INFO - (blobuploader) - INFO - Iteration through files over. 20:20:26 INFO - Return code: 0 20:20:26 INFO - rmtree: /builds/slave/test/build/uploaded_files.json 20:20:26 INFO - retry: Calling remove with args: ('/builds/slave/test/build/uploaded_files.json',), kwargs: {}, attempt #1 20:20:26 INFO - Setting buildbot property blobber_files to {"wpt_errorsummary.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/9a8f76db1f27414d493711bb8c5cf3dcc32ae3b5feae0f3fc3862cbefa24a18499bb13fc8a76ce3e13492171e116ee62c1e4901bbb1305107e9a4da49aee7a06", "wpt_raw.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/a732ba1256c846952ba3ba7ab3c5d052356136b92ea8c8869cf19b535b66de1657baec4fa1d2bf7a38f3bc7760dc378ef5327095fa0874913c3270114f4dc8a2"} 20:20:26 INFO - Writing buildbot properties ['blobber_files'] to /builds/slave/test/properties/blobber_files 20:20:26 INFO - Writing to file /builds/slave/test/properties/blobber_files 20:20:26 INFO - Contents: 20:20:26 INFO - blobber_files:{"wpt_errorsummary.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/9a8f76db1f27414d493711bb8c5cf3dcc32ae3b5feae0f3fc3862cbefa24a18499bb13fc8a76ce3e13492171e116ee62c1e4901bbb1305107e9a4da49aee7a06", "wpt_raw.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/a732ba1256c846952ba3ba7ab3c5d052356136b92ea8c8869cf19b535b66de1657baec4fa1d2bf7a38f3bc7760dc378ef5327095fa0874913c3270114f4dc8a2"} 20:20:26 INFO - Copying logs to upload dir... 20:20:26 INFO - mkdir: /builds/slave/test/build/upload/logs program finished with exit code 0 elapsedTime=1333.509399 ========= master_lag: 1.70 ========= ========= Finished '/tools/buildbot/bin/python scripts/scripts/web_platform_tests.py ...' (results: 0, elapsed: 22 mins, 15 secs) (at 2016-04-01 20:20:28.664182) ========= ========= Started set props: build_url blobber_files symbols_url (results: 0, elapsed: 0 secs) (at 2016-04-01 20:20:28.667069) ========= bash -c 'for file in `ls -1`; do cat $file; done' in dir /builds/slave/test/properties (timeout 1200 secs) watching logfiles {} argv: ['bash', '-c', 'for file in `ls -1`; do cat $file; done'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test/properties SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False blobber_files:{"wpt_errorsummary.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/9a8f76db1f27414d493711bb8c5cf3dcc32ae3b5feae0f3fc3862cbefa24a18499bb13fc8a76ce3e13492171e116ee62c1e4901bbb1305107e9a4da49aee7a06", "wpt_raw.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/a732ba1256c846952ba3ba7ab3c5d052356136b92ea8c8869cf19b535b66de1657baec4fa1d2bf7a38f3bc7760dc378ef5327095fa0874913c3270114f4dc8a2"} build_url:http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2 symbols_url:http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip program finished with exit code 0 elapsedTime=0.037193 build_url: 'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.tar.bz2' blobber_files: '{"wpt_errorsummary.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/9a8f76db1f27414d493711bb8c5cf3dcc32ae3b5feae0f3fc3862cbefa24a18499bb13fc8a76ce3e13492171e116ee62c1e4901bbb1305107e9a4da49aee7a06", "wpt_raw.log": "http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-release/sha512/a732ba1256c846952ba3ba7ab3c5d052356136b92ea8c8869cf19b535b66de1657baec4fa1d2bf7a38f3bc7760dc378ef5327095fa0874913c3270114f4dc8a2"}' symbols_url: 'http://archive.mozilla.org/pub/firefox/tinderbox-builds/mozilla-release-linux64-debug/1459564657/firefox-45.0.1.en-US.linux-x86_64.crashreporter-symbols.zip' ========= master_lag: 0.04 ========= ========= Finished set props: build_url blobber_files symbols_url (results: 0, elapsed: 0 secs) (at 2016-04-01 20:20:28.746138) ========= ========= Started 'rm -f ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 20:20:28.746660) ========= rm -f oauth.txt in dir /builds/slave/test/. (timeout 1200 secs) watching logfiles {} argv: ['rm', '-f', 'oauth.txt'] environment: HOME=/home/cltbld LANG=en_US.UTF-8 LOGNAME=cltbld MAIL=/var/mail/cltbld NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games PWD=/builds/slave/test SHELL=/bin/bash SHLVL=1 TERM=linux TMOUT=86400 USER=cltbld XDG_SESSION_COOKIE=9ca12473fbb1d023794ffd180000023c-1459565590.882077-817291602 _=/tools/buildbot/bin/python using PTY: False program finished with exit code 0 elapsedTime=0.023436 ========= master_lag: 0.05 ========= ========= Finished 'rm -f ...' (results: 0, elapsed: 0 secs) (at 2016-04-01 20:20:28.815810) ========= ========= Started reboot skipped (results: 3, elapsed: 0 secs) (at 2016-04-01 20:20:28.816254) ========= ========= Finished reboot skipped (results: 3, elapsed: 0 secs) (at 2016-04-01 20:20:28.816820) ========= ========= Total master_lag: 2.02 =========