Bug 1338173 Remove the service-worker version of get-host-info.sub.js. r=jgraham
authorBen Kelly <ben@wanderview.com>
Thu, 09 Feb 2017 12:35:24 -0500
changeset 388344 0a8eec8c332e7058b42db64d3f2329103a3fa23d
parent 388343 fe2fedb64403254e8c299d1df2e94521733d5c95
child 388345 b5f610c22132f1af5c816c70fe7036986c9b23c1
push id7198
push userjlorenzo@mozilla.com
push dateTue, 18 Apr 2017 12:07:49 +0000
treeherdermozilla-beta@d57aa49c3948 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjgraham
bugs1338173
milestone54.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1338173 Remove the service-worker version of get-host-info.sub.js. r=jgraham
testing/web-platform/meta/MANIFEST.json
testing/web-platform/tests/service-workers/service-worker/client-navigate.https.html
testing/web-platform/tests/service-workers/service-worker/clients-get-cross-origin.https.html
testing/web-platform/tests/service-workers/service-worker/clients-get.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-cors-xhr.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-csp.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-event-redirect.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-event.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-frame-resource.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-header-visibility.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-inscope.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-outscope.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-css-base-url.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-css-images.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-fallback.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-redirect.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-resources.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-request-xhr.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-response-xhr.https.html
testing/web-platform/tests/service-workers/service-worker/fetch-waits-for-activate.https.html
testing/web-platform/tests/service-workers/service-worker/getregistrations.https.html
testing/web-platform/tests/service-workers/service-worker/invalid-blobtype.https.html
testing/web-platform/tests/service-workers/service-worker/invalid-header.https.html
testing/web-platform/tests/service-workers/service-worker/navigate-window.https.html
testing/web-platform/tests/service-workers/service-worker/navigation-redirect.https.html
testing/web-platform/tests/service-workers/service-worker/postmessage-to-client.https.html
testing/web-platform/tests/service-workers/service-worker/referer.https.html
testing/web-platform/tests/service-workers/service-worker/register-closed-window.https.html
testing/web-platform/tests/service-workers/service-worker/resource-timing.https.html
testing/web-platform/tests/service-workers/service-worker/resources/client-navigate-worker.js
testing/web-platform/tests/service-workers/service-worker/resources/clients-get-other-origin.html
testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
testing/web-platform/tests/service-workers/service-worker/resources/fetch-canvas-tainting-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-cors-xhr-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-csp-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-header-visibility-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-inscope.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-outscope.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-css-base-url-worker.js
testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html
testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html
testing/web-platform/tests/service-workers/service-worker/resources/get-host-info.sub.js
testing/web-platform/tests/service-workers/service-worker/resources/navigation-redirect-other-origin.html
testing/web-platform/tests/service-workers/service-worker/resources/referer-iframe.html
testing/web-platform/tests/service-workers/service-worker/resources/service-worker-csp-worker.py
testing/web-platform/tests/service-workers/service-worker/resources/worker-interception-iframe.https.html
testing/web-platform/tests/service-workers/service-worker/resources/worker-load-interceptor.js
testing/web-platform/tests/service-workers/service-worker/websocket.https.html
testing/web-platform/tests/service-workers/service-worker/xhr.https.html
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -60036,21 +60036,16 @@
      {}
     ]
    ],
    "service-workers/service-worker/resources/frame-for-getregistrations.html": [
     [
      {}
     ]
    ],
-   "service-workers/service-worker/resources/get-host-info.sub.js": [
-    [
-     {}
-    ]
-   ],
    "service-workers/service-worker/resources/indexeddb-worker.js": [
     [
      {}
     ]
    ],
    "service-workers/service-worker/resources/install-event-type-worker.js": [
     [
      {}
@@ -138484,17 +138479,17 @@
    "22fd0012458685b4bce13e5f15cc650726482f26",
    "support"
   ],
   "common/form-submission.py": [
    "079aedef390e883d1a1815238f7a04c058dfb9bf",
    "support"
   ],
   "common/get-host-info.sub.js": [
-   "4feb5667d2093736391c71b8f0224f6d868c8cf4",
+   "eade85ef5ac0eb56ba5ecf8057ab7a4ea05a22e1",
    "support"
   ],
   "common/large.py": [
    "19d0b8d5fec34f080c37f1b1b837ea0c2401ad82",
    "support"
   ],
   "common/media.js": [
    "a575b8135e6ddb1501fc2a082d7544ee86011b7d",
@@ -177888,17 +177883,17 @@
    "febb81c38f530c81d9e9837df2c6d603225ecfd1",
    "testharness"
   ],
   "html/webappapis/idle-callbacks/callback-timeout.html": [
    "ba76964575cdf9b433f26c8a5d7a8183ab5c16e9",
    "testharness"
   ],
   "html/webappapis/idle-callbacks/cancel-invoked.html": [
-   "d0128b4d4b805a58926ad895f35b341321cf56ec",
+   "30787d765fa435c1392bd852559042bf3c2e2553",
    "testharness"
   ],
   "html/webappapis/idle-callbacks/idlharness.html": [
    "520ee58982b43875f3caa08d7f46b9c6311be0b6",
    "testharness"
   ],
   "html/webappapis/scripting/.gitkeep": [
    "da39a3ee5e6b4b0d3255bfef95601890afd80709",
@@ -198296,25 +198291,25 @@
    "72da19e038b6ab32ea04a0e91d117bc67d25a301",
    "testharness"
   ],
   "service-workers/service-worker/claim-using-registration.https.html": [
    "fb56cc3ae802669bb7898e76ac55e75ba6ac1441",
    "testharness"
   ],
   "service-workers/service-worker/client-navigate.https.html": [
-   "79904ed11a3c53c4559c8f44603fcc1cf0a05844",
+   "e0c704605ec008a29662e1804d512284899ddd6f",
    "testharness"
   ],
   "service-workers/service-worker/clients-get-cross-origin.https.html": [
-   "7e9d0cd022aa70a0f38b2f15f05919e9ff185728",
+   "21ed1eab21bb6f0b342895c8185ecb92afe93b79",
    "testharness"
   ],
   "service-workers/service-worker/clients-get.https.html": [
-   "54c7ac17c93881644c202dbacf36de2fc507a3f5",
+   "32ccf7734a7d0d40205c4fd30b393b175e6507bd",
    "testharness"
   ],
   "service-workers/service-worker/clients-matchall-client-types.https.html": [
    "576b4306b0976071ec1c7e085e016b99b5ab12cc",
    "testharness"
   ],
   "service-workers/service-worker/clients-matchall-include-uncontrolled.https.html": [
    "f3fbc439d4352a9c781290d80373fce8ff3e7c40",
@@ -198340,113 +198335,113 @@
    "fe5c4595f528af34d83a64bae1fe94a14483cde5",
    "testharness"
   ],
   "service-workers/service-worker/extendable-event-waituntil.https.html": [
    "9232c93bc437aa6c32a2a82db03e622b96d23395",
    "testharness"
   ],
   "service-workers/service-worker/fetch-canvas-tainting-cache.https.html": [
-   "3401c0848a63c619c618d4a2cf3c59f3928ff162",
+   "b3f8375bc412c99099ac886673fd80f6cb0a312b",
    "testharness"
   ],
   "service-workers/service-worker/fetch-canvas-tainting.https.html": [
-   "1f2d87f214450395472fe3dffcb2783e71ec0d52",
+   "9c2e160f95d2915a961bd7da840ac53779c9387d",
    "testharness"
   ],
   "service-workers/service-worker/fetch-cors-xhr.https.html": [
-   "5a35a77eb5575e181aee035ffa103f51152fda54",
+   "448c071ddeaaaf828800d8fad20d8ce672e56590",
    "testharness"
   ],
   "service-workers/service-worker/fetch-csp.https.html": [
-   "b9ff203833b7af8b0181eea9a1778b9e4d20ccb1",
+   "97fff975592937acda3e8f363685dc9a835c12be",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event-after-navigation-within-page.https.html": [
    "3071523401bd9147ac4dab89361e07de99babc9c",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event-async-respond-with.https.html": [
    "6ea721f98b2d145eeeb07b762901b9cfa1b51fbd",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event-network-error.https.html": [
    "ee1cd2ed2c3204af53422116289c558f5eff68d9",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event-redirect.https.html": [
-   "5d4efd3504c37f5b728eef4941266b3d1d8842e7",
+   "e322139b14149fe9b3f3aff76a9af8a58437e715",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event-respond-with-stops-propagation.https.html": [
    "2feaa5022ee31fb980f97075d932b0d87d6efe75",
    "testharness"
   ],
   "service-workers/service-worker/fetch-event.https.html": [
-   "9197ebb50014905e02645c5dc71d467be0e7604c",
+   "ce7785af8286cd371cc08092903c333332deb862",
    "testharness"
   ],
   "service-workers/service-worker/fetch-frame-resource.https.html": [
-   "e5996d90c4c383eda2947cc2bc39e734448b3bde",
+   "77709ff94cfaeec0b01e157714244d1b568c6b18",
    "testharness"
   ],
   "service-workers/service-worker/fetch-header-visibility.https.html": [
-   "c12941b5e391a520b20f227fd515089ac922f50e",
+   "054a581d2585cf34e4f0626870c2a093d53dc09b",
    "testharness"
   ],
   "service-workers/service-worker/fetch-mixed-content-to-inscope.https.html": [
-   "16bf962ab092624da480de9a75ac767cdc00c2c7",
+   "e3035bdf8cec65bb0322b5dfce10a3a827bd415e",
    "testharness"
   ],
   "service-workers/service-worker/fetch-mixed-content-to-outscope.https.html": [
-   "431348eba25f6db93684b39dcdc9eb29071e27f1",
+   "45a83eeeb922301fc399a4808bb4d1014a541733",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-css-base-url.https.html": [
-   "e9e6bc4ecfe69bf5f1c8fa718f15fe19ca612143",
+   "01a5220ff2abe5735d7b03c2ee3ccbe21c9a260e",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-css-images.https.html": [
-   "14c5ad1b9e3971c994ec9134989f03ff4a01962c",
+   "ca776bff1f106f9a1e2dfe4d25ff3618d99758b7",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-fallback.https.html": [
-   "11b3e5fe92d27ea1058f725a904a4ed8e448a2dd",
+   "60dcb3a4c3b3ca2e79adfc7b779724cbe3ffa1c4",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-no-freshness-headers.https.html": [
    "9631947d3cec78547bd4666b8ca970d037648cc8",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-redirect.https.html": [
-   "ffe217a363c6db265aaa2f45661bdc3a4289c9a0",
+   "e0c2c7752674bd8bb65ce09bc1d49b2f5d458d54",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-resources.https.html": [
-   "6676e514ba04f2759346eaa94f1c87c8290e44cd",
+   "5ae2d1ae4eec846002635d6ff8d9d7c9a2aebd3f",
    "testharness"
   ],
   "service-workers/service-worker/fetch-request-xhr.https.html": [
-   "760037db448b32b146c51ba8e7c453dd9c734a6e",
+   "840aafe30e5a0c8129c05e3b311084b8c00267a6",
    "testharness"
   ],
   "service-workers/service-worker/fetch-response-xhr.https.html": [
-   "b6fa000865a6961afabb592a09bbf686ee4302df",
+   "6d50c69d78a1eb077108209b94fdf0efe540883d",
    "testharness"
   ],
   "service-workers/service-worker/fetch-waits-for-activate.https.html": [
-   "9be9d969099e27be5edc15f6014ac2f06f81674c",
+   "04eeedc3f074aff32281a438acda62b7a6d86e2d",
    "testharness"
   ],
   "service-workers/service-worker/getregistration.https.html": [
    "989c30567eb1dd650dc7e2bf807e18961c991087",
    "testharness"
   ],
   "service-workers/service-worker/getregistrations.https.html": [
-   "8b66990c80dfb44f43a053829005dbca2264106c",
+   "d76c66c08bd5c1addbdb149447f2268ac52ffcb2",
    "testharness"
   ],
   "service-workers/service-worker/indexeddb.https.html": [
    "6b25a37ebe79c60e3645a1006e61f1f2c272ce86",
    "testharness"
   ],
   "service-workers/service-worker/install-event-type.https.html": [
    "55175d94a5d90a030c03d598c079455bb93c71c8",
@@ -198456,37 +198451,37 @@
    "dda1a1967e6e0be64b9bd2198a08aa0429e185ff",
    "testharness"
   ],
   "service-workers/service-worker/interfaces.https.html": [
    "9153cc6536203170ba8d2189d7646200a1ded72e",
    "testharness"
   ],
   "service-workers/service-worker/invalid-blobtype.https.html": [
-   "ff9dca8c16a3635b74a7dfbff8ae5061b89a86e5",
+   "ca29ab7c214d2fa4973cf7be633a7fb8507ae897",
    "testharness"
   ],
   "service-workers/service-worker/invalid-header.https.html": [
-   "559a924fa530f4a4082c306d5821d88f9d2ba064",
+   "393c3b3c393b58e74f82affecdd06c4e7be1787a",
    "testharness"
   ],
   "service-workers/service-worker/multiple-register.https.html": [
    "fe3fe5f2c11f721c8686553587534c2679f670ed",
    "testharness"
   ],
   "service-workers/service-worker/multiple-update.https.html": [
    "1cb6912164a02808f455538ea292f288b2f12ace",
    "testharness"
   ],
   "service-workers/service-worker/navigate-window.https.html": [
-   "fe503981bd965d0d424f4c2e404ab940a2d6db0b",
+   "669507683c98d99aa5dcfbddd71c23f8464b7c21",
    "testharness"
   ],
   "service-workers/service-worker/navigation-redirect.https.html": [
-   "919eb3d5d1203626cc6e23a5200033cb8a756347",
+   "7d9f8501624e1832170d427657d6dbf19253c989",
    "testharness"
   ],
   "service-workers/service-worker/onactivate-script-error.https.html": [
    "7c397361b27e4c4d90a84d92b16593ac40d443a9",
    "testharness"
   ],
   "service-workers/service-worker/oninstall-script-error.https.html": [
    "0497bf37f0e3b55a6a4745cae2ec700b6f963fd3",
@@ -198496,33 +198491,33 @@
    "23d9e3dc830b83370875387cd5d6e1d5e913452f",
    "testharness"
   ],
   "service-workers/service-worker/postmessage-msgport-to-client.https.html": [
    "21ae7fb96321dc75e7063c27b7e6838e6b9ff6c6",
    "testharness"
   ],
   "service-workers/service-worker/postmessage-to-client.https.html": [
-   "8a96689891c9e49456c48e47a09405fe2edb4cce",
+   "4f91d302091df45ca72567c2cedc1584ad9045a9",
    "testharness"
   ],
   "service-workers/service-worker/postmessage.https.html": [
    "5f713ca30ab26d1ee7f3e763911aeb41fcb660bb",
    "testharness"
   ],
   "service-workers/service-worker/ready.https.html": [
    "77199b966f0ef2d05fddaf33b975cc3e7c593546",
    "testharness"
   ],
   "service-workers/service-worker/referer.https.html": [
-   "3a78997f47e3f53bcb94f871032b0d6099361f10",
+   "a9e4073192f5b69984624ad7376ec7787101dfea",
    "testharness"
   ],
   "service-workers/service-worker/register-closed-window.https.html": [
-   "bc6e9bb358fdd6b66d49eaf99e9d5f2e111c874b",
+   "2e24c6664881449ab67f04b860a701c8b8ef93c1",
    "testharness"
   ],
   "service-workers/service-worker/register-default-scope.https.html": [
    "864f5435fc40124dbe2c1ffb0e1942fee58228d2",
    "testharness"
   ],
   "service-workers/service-worker/register-same-scope-different-script-url.https.html": [
    "7c32948fe5ff738a38b08ff2d2497ddb63f0a8ef",
@@ -198560,17 +198555,17 @@
    "785a18ac3c8001034f583a8e97195aa47093bd0d",
    "testharness"
   ],
   "service-workers/service-worker/request-end-to-end.https.html": [
    "751848110fcccb77528114424511fd53857e38ff",
    "testharness"
   ],
   "service-workers/service-worker/resource-timing.https.html": [
-   "003956c17576fa4e0f1c7a5cc7aaf6bb211510ff",
+   "587060940cb25ff8072fa83cb41d538a73320ca6",
    "testharness"
   ],
   "service-workers/service-worker/resources/404.py": [
    "567d0a7de3ef54adaa8339bb04632a2ecfcc57a5",
    "support"
   ],
   "service-workers/service-worker/resources/appcache-ordering.install.html": [
    "2fbe9f464383783774f08276b8e2cc7103fee83c",
@@ -198596,29 +198591,29 @@
    "2839599adca9049d31085e50504623576dc81643",
    "support"
   ],
   "service-workers/service-worker/resources/client-navigate-frame.html": [
    "ecad40948e5d00ca737ea91b702ebbecc268e53b",
    "support"
   ],
   "service-workers/service-worker/resources/client-navigate-worker.js": [
-   "28442dc3f2bb1b2761a17ae599b1300c50327a56",
+   "6b277e1dcde40babec32046f9e637a47830bf29b",
    "support"
   ],
   "service-workers/service-worker/resources/client-navigated-frame.html": [
    "efb9dd2b3468305396a3767fc780d07525bd8e61",
    "support"
   ],
   "service-workers/service-worker/resources/clients-get-frame.html": [
    "2a34fdfb584674ef7b534fb91b313fc630ac0ffa",
    "support"
   ],
   "service-workers/service-worker/resources/clients-get-other-origin.html": [
-   "2bcea64745be9b6aab7d91eb2c54774b8110bb6f",
+   "1b495621d4024d18579626cc5fd6049789bce115",
    "support"
   ],
   "service-workers/service-worker/resources/clients-get-worker.js": [
    "cab646738d3d9662756dcd337718ae02ea234313",
    "support"
   ],
   "service-workers/service-worker/resources/clients-matchall-client-types-iframe.html": [
    "3c8866699d99cfaf61c52ca7a5dafc058a8c349d",
@@ -198632,17 +198627,17 @@
    "e204fdb53a9ae84f1b463f4655d62d1182d77cd5",
    "support"
   ],
   "service-workers/service-worker/resources/dummy-shared-worker-interceptor.js": [
    "620e50059fabfdd4b5c61dbb3ed2d8dca872b9bf",
    "support"
   ],
   "service-workers/service-worker/resources/dummy-worker-interceptor.js": [
-   "5bad22ca85e049d9ccd1228cef98f58bbf21a16a",
+   "f631d35c4eed6be4a8e6d2cdc5258ac0b169e177",
    "support"
   ],
   "service-workers/service-worker/resources/dummy-worker-script.py": [
    "1cde5ac271154715f3e06139e594e6676746cfbe",
    "support"
   ],
   "service-workers/service-worker/resources/dummy.html": [
    "b15855240cf7dbc5df4ee30a544d7ff94935d146",
@@ -198688,25 +198683,25 @@
    "7603f015f115df4bc04e6c1b10d0d0b0abcd3f2d",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-access-control.py": [
    "fb2235ce343b51e958f73f7fc8d7ab7dbcc8f71e",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-canvas-tainting-iframe.html": [
-   "238c7a5082169f5a96160aa298d0450c9e1ed60b",
+   "04c234d3cc210d24962ce2b7cbbefcbd16d335e8",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-cors-xhr-iframe.html": [
-   "a95c7def61681468026031380425f03d3020d66a",
+   "bbed4c0dcae12d91bcda4241103e674a6ffc73b1",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-csp-iframe.html": [
-   "b84cb08bd5e4504dc5509f78ca3a4c07be702814",
+   "0c82ccc773dc644bac0cef39faadcb3280c0c6f4",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-csp-iframe.html.sub.headers": [
    "fba766f6fb555fbd8fde44e8c71ab26d3191e85f",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-event-after-navigation-within-page-iframe.html": [
    "f13e8a4322df20dba937c2658d2c9d9d354a34c2",
@@ -198732,41 +198727,41 @@
    "900fd1c2080fbb386589f7d6ee52c49da9d4fcb8",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-event-test-worker.js": [
    "ca79da139169762737411cb6cffb66b55b901d04",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-header-visibility-iframe.html": [
-   "99c91098d8df9e0b840699770d240bb0aa2ee715",
+   "f5975491b4c516cdfc62eaaba019ab546451d6e7",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-inscope.html": [
-   "7cf39eebde4a25c1af8690c28db50ef0a4b147cd",
+   "7485fa9c96fbbc4af9de634e0738957dd6ab2aa0",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-outscope.html": [
-   "623898c5d5975ae661f8b2375af2a1aaf2859c23",
+   "c9a7ec401f8db3416e73694370be0b711f04110e",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-mixed-content-iframe.html": [
-   "bb8ade5c70097997726faf2624b11581e4cfe2f1",
+   "1b7a67809f06e5a14ca77da10d9c43e94f5dc1f0",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-css-base-url-iframe.html": [
    "cb6f80953f58469e6c0048fb767d5e9561b0a19c",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-css-base-url-style.css": [
    "96f892f4359baa6c12bf8da068c4aeb76a60d657",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-css-base-url-worker.js": [
-   "4536000808809f0354c6b206380d92f4e2fddd0e",
+   "30e4285e144a5c9caa0dd48224cefc4b41973de1",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-fallback-iframe.html": [
    "a1202e192e51d625cc06c0f7a7e0a27efadc1f2d",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-fallback-worker.js": [
    "5195f7d76f6c77bd167c9192a0386c2f8b7863c1",
@@ -198788,25 +198783,25 @@
    "0023475ba862c10277efb63a18275a79facdd9c2",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-resources-worker.js": [
    "db66bb2ec1cb1b70e1dddc50748ff134e623e401",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html": [
-   "2a1cb00d377b6a3460daf9727828af0040756420",
+   "e28b416c027c2ed1a633c0804ef826cad99509ff",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-request-xhr-worker.js": [
    "fcbb50668ec1a3f7bdbd4331babda5b6e0295f2e",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html": [
-   "bdba81b06c43907a879b992ea20a77526a0e8810",
+   "8bef6d586f438fa912c7e40ac82a5aa73e05706a",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-response-xhr-worker.js": [
    "f94ad37a6f751b96a95c325b0787c1f0c28d2418",
    "support"
   ],
   "service-workers/service-worker/resources/fetch-rewrite-worker.js": [
    "e390cdc4fa2324db03069193e2b049dde82fbc2d",
@@ -198815,20 +198810,16 @@
   "service-workers/service-worker/resources/fetch-waits-for-activate-worker.js": [
    "a557b92d3119f43bbbe10d46effc240d7f11c784",
    "support"
   ],
   "service-workers/service-worker/resources/frame-for-getregistrations.html": [
    "c5f88c11333ff1faba5d57812a36553d174ab711",
    "support"
   ],
-  "service-workers/service-worker/resources/get-host-info.sub.js": [
-   "b9310fbd533b9382c3413bbcf2d49f778d4737dd",
-   "support"
-  ],
   "service-workers/service-worker/resources/indexeddb-worker.js": [
    "ed0ff45423ba74ad0b82e46debd865fdae2fbcb6",
    "support"
   ],
   "service-workers/service-worker/resources/install-event-type-worker.js": [
    "b6949fcd3d82a99595356448fce6ac830366200e",
    "support"
   ],
@@ -198884,17 +198875,17 @@
    "c99d267d5d819bebae13b1866671c9c2460b0104",
    "support"
   ],
   "service-workers/service-worker/resources/navigate-window-worker.js": [
    "4d3b80c17efd78bda66333ba01ffde1b8f6e976b",
    "support"
   ],
   "service-workers/service-worker/resources/navigation-redirect-other-origin.html": [
-   "a43dcad198cad8b1589de1963342c75a0b70d1e9",
+   "8c51024d8e369bc5ae21e94c486c59690df2de3e",
    "support"
   ],
   "service-workers/service-worker/resources/navigation-redirect-out-scope.py": [
    "b41d084ce18e177e59b7caa0d305fc11f37fd4d5",
    "support"
   ],
   "service-workers/service-worker/resources/navigation-redirect-scope1.py": [
    "b41d084ce18e177e59b7caa0d305fc11f37fd4d5",
@@ -198976,17 +198967,17 @@
    "4ccc1681cd016327aafed77210afe6ed1cc8c04a",
    "support"
   ],
   "service-workers/service-worker/resources/redirect.py": [
    "3c5cc6f523aff39bb50a5a9ea1f65e494b49b3f7",
    "support"
   ],
   "service-workers/service-worker/resources/referer-iframe.html": [
-   "f7dc2c960e0bbe78ea14d66d9ee76e7876c29b90",
+   "6b549d0a185a0fb76c230274a672ef4843d33a90",
    "support"
   ],
   "service-workers/service-worker/resources/register-closed-window-iframe.html": [
    "18ee27c8d6a5497bf16b3315ba9eee2b474154b5",
    "support"
   ],
   "service-workers/service-worker/resources/registration-worker.js": [
    "048f75fc0d193765d6264e7be132c29e56dd7bcb",
@@ -199008,17 +198999,17 @@
    "0fc85a13c536aad45a87fb073fdcebf371d4476d",
    "support"
   ],
   "service-workers/service-worker/resources/resource-timing-worker.js": [
    "ee7888f2e145700cf2590b6d6de9bab39088a979",
    "support"
   ],
   "service-workers/service-worker/resources/service-worker-csp-worker.py": [
-   "f91ff42d4a88961aeb4c29cce61db8ad32261f4e",
+   "f7c6bb3ba222dc35a09ef806a7c6d145339f9eb2",
    "support"
   ],
   "service-workers/service-worker/resources/shared-worker-controlled.js": [
    "9ae937c2e8499991432caa4587eb68fe2998f503",
    "support"
   ],
   "service-workers/service-worker/resources/shared-worker-import.js": [
    "700fc039f3115019ab536924985ed9280f39ff0a",
@@ -199096,21 +199087,21 @@
    "29d35c8ffdc89278c6771b47544375145e2b23d5",
    "support"
   ],
   "service-workers/service-worker/resources/websocket.js": [
    "dbf752f9a356f51f6ddf96053b39b5cd3515ddc8",
    "support"
   ],
   "service-workers/service-worker/resources/worker-interception-iframe.https.html": [
-   "06594aaad28018acf9e670b23eb97e8b0b7e1b98",
+   "b9fd4ea281b328c1f21573d1563c968dac52cf22",
    "support"
   ],
   "service-workers/service-worker/resources/worker-load-interceptor.js": [
-   "8e92e777917d2e39558a7609d34ec839f24e5fac",
+   "de9cfcbef6528a4b5e6b2552f260501e4d165ea4",
    "support"
   ],
   "service-workers/service-worker/resources/worker-testharness.js": [
    "8624b498e37d44bf3a3a74ccd46f928f7b0338cb",
    "support"
   ],
   "service-workers/service-worker/resources/xhr.js": [
    "bb913597a735c33caac7aee8cb8de76a38484ae4",
@@ -199204,25 +199195,25 @@
    "73c129838eda3c18365f384b8b0a5c32b5e9cf6d",
    "testharness"
   ],
   "service-workers/service-worker/waiting.https.html": [
    "6e3c7a4c12d90b10651653e680615185eaf270bc",
    "testharness"
   ],
   "service-workers/service-worker/websocket.https.html": [
-   "41a6008966629c84ffba592e038adae1050c947a",
+   "40ec7850c61a3ee7578f055d3eef87293cfad482",
    "testharness"
   ],
   "service-workers/service-worker/worker-interception.https.html": [
    "2c5e8cb2b7be6d394aaa1400158d3f14895909f3",
    "testharness"
   ],
   "service-workers/service-worker/xhr.https.html": [
-   "e306f2662c779b7fe2b3727e6ee9a27c7c95a151",
+   "f5d565c95c7a08da139b0f3b95bb0cfb0ae2b936",
    "testharness"
   ],
   "service-workers/specgen.json": [
    "0d98c8249e25cd4c7a4d88f722cfe8f235fb7a66",
    "support"
   ],
   "service-workers/stub-3.1-service-worker-obj.html": [
    "26e7afb8569cc3c997c6338dc86bfbe7232a8c0e",
@@ -218072,17 +218063,17 @@
    "554d027aac3a5bd022d284fcd8bcb126ecca2cc4",
    "testharness"
   ],
   "workers/data-url.html": [
    "c736022a55eff0593172a20023da80b13bb1f31f",
    "testharness"
   ],
   "workers/interfaces.idl": [
-   "8b1a9f8688e38a009fa82936610ca221541bafbc",
+   "d8961ea6af91a92a064bcf0e0da5b56781f6bc6b",
    "support"
   ],
   "workers/interfaces.worker.js": [
    "e35e0f6de69052f24340bd887da469b85833953b",
    "testharness"
   ],
   "workers/interfaces/DedicatedWorkerGlobalScope/EventTarget.worker.js": [
    "b613859a3c941384721e5331e39a3fc0931612ac",
--- a/testing/web-platform/tests/service-workers/service-worker/client-navigate.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/client-navigate.https.html
@@ -1,14 +1,14 @@
 <!doctype html>
 <meta charset=utf-8>
 <title>Service Worker: WindowClient.navigate</title>
 <script src=/resources/testharness.js></script>
 <script src=/resources/testharnessreport.js></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
   function wait_for_message(msg) {
     return new Promise(function(resolve, reject) {
       var get_message_data = function get_message_data(e) {
         window.removeEventListener("message", get_message_data);
         resolve(e.data);
       }
--- a/testing/web-platform/tests/service-workers/service-worker/clients-get-cross-origin.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/clients-get-cross-origin.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: Clients.get across origins</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
 var host_info = get_host_info();
 
 var scope = 'resources/blank.html?clients-get';
 var t = async_test('Test Clients.get() cross origin');
 var other_origin_iframe = host_info['HTTPS_REMOTE_ORIGIN'] + base_path() +
                           'resources/clients-get-other-origin.html';
--- a/testing/web-platform/tests/service-workers/service-worker/clients-get.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/clients-get.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: Clients.get</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
 var host_info = get_host_info();
 
 var scope = 'resources/clients-get-frame.html';
 var t = async_test('Test Clients.get()');
 var clientIds = [];
 var frame;
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: canvas tainting of the fetched image using cached responses</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <body>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-canvas-tainting-iframe.html?cache';
     var SCRIPT = 'resources/fetch-rewrite-worker.js';
     var host_info = get_host_info();
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-canvas-tainting.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: canvas tainting of the fetched image</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <body>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-canvas-tainting-iframe.html';
     var SCRIPT = 'resources/fetch-rewrite-worker.js';
     var host_info = get_host_info();
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-cors-xhr.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-cors-xhr.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: CORS XHR of fetch()</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <body>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-cors-xhr-iframe.html';
     var SCRIPT = 'resources/fetch-rewrite-worker.js';
     var host_info = get_host_info();
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-csp.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-csp.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: CSP control of fetch()</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-csp-iframe.html';
     var SCRIPT = 'resources/fetch-rewrite-worker.js';
     var host_info = get_host_info();
     service_worker_unregister_and_register(t, SCRIPT, SCOPE)
       .then(function(registration) {
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-event-redirect.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-event-redirect.https.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html>
 <title>Service Worker: Fetch Event Redirect Handling</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="resources/testharness-helpers.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 
 // ------------------------
 // Utilities for testing non-navigation requests that are intercepted with
 // a redirect.
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-event.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-event.https.html
@@ -1,12 +1,12 @@
 <!DOCTYPE html>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 var worker = 'resources/fetch-event-test-worker.js';
 
 async_test(function(t) {
     var scope = 'resources/simple.html?string';
     service_worker_unregister_and_register(t, worker, scope)
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-frame-resource.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-frame-resource.https.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html>
 <title>Service Worker: Fetch for the frame loading.</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 var worker = 'resources/fetch-rewrite-worker.js';
 var path = base_path() + 'resources/fetch-access-control.py';
 var host_info = get_host_info();
 
 if (window.testRunner) {
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-header-visibility.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-header-visibility.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: Visibility of headers during fetch.</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
   var worker = 'resources/fetch-rewrite-worker.js';
   var path = base_path() + 'resources/fetch-access-control.py';
   var host_info = get_host_info();
   var frame;
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-inscope.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-inscope.https.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html>
 <title>Service Worker: Mixed content of fetch()</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <body></body>
 <script>
 if (window.testRunner) {
   // In Chromium we need to change the setting to disallow displaying insecure
   // contents.
   testRunner.overridePreference('WebKitAllowDisplayingInsecureContent', false);
 }
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-outscope.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-mixed-content-to-outscope.https.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html>
 <title>Service Worker: Mixed content of fetch()</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <body></body>
 <script>
 if (window.testRunner) {
   // In Chromium we need to change the setting to disallow displaying insecure
   // contents.
   testRunner.overridePreference('WebKitAllowDisplayingInsecureContent', false);
 }
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-css-base-url.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-css-base-url.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: CSS's base URL must be the request URL even when fetched from other URL</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-request-css-base-url-iframe.html';
     var SCRIPT = 'resources/fetch-request-css-base-url-worker.js';
     var worker;
     var testDonePromise;
 
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-css-images.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-css-images.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: FetchEvent for css image</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 var SCOPE = 'resources/fetch-request-resources-iframe.https.html';
 var SCRIPT = 'resources/fetch-request-resources-worker.js';
 var host_info = get_host_info();
 var LOCAL_URL =
   host_info['HTTPS_ORIGIN'] + base_path() + 'resources/dummy?test';
 var REMOTE_URL =
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-fallback.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-fallback.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: the fallback behavior of FetchEvent</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 var expected_urls = [];
 
 function xhr_fail_test(frame, url) {
   expected_urls.push(url);
   return new Promise(function(resolve, reject) {
       frame.contentWindow.xhr(url)
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-redirect.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-redirect.https.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html>
 <title>Service Worker: FetchEvent for resources</title>
 <meta name="timeout" content="long">
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
 
 function assert_resolves(promise, description) {
   return promise.catch(function(reason) {
       throw new Error(description + ' - ' + reason.message);
   });
 }
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-resources.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-resources.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: FetchEvent for resources</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 var url_count = 0;
 var expected_results = {};
 
 function image_test(frame, url, cross_origin, expected_mode,
                     expected_credentials) {
   var actual_url = url + (++url_count);
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-request-xhr.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-request-xhr.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: the body of FetchEvent using XMLHttpRequest</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-request-xhr-iframe.https.html';
     var SCRIPT = 'resources/fetch-request-xhr-worker.js';
     var host_info = get_host_info();
     service_worker_unregister_and_register(t, SCRIPT, SCOPE)
       .then(function(registration) {
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-response-xhr.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-response-xhr.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: the response of FetchEvent using XMLHttpRequest</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/fetch-response-xhr-iframe.https.html';
     var SCRIPT = 'resources/fetch-response-xhr-worker.js';
     var host_info = get_host_info();
 
     window.addEventListener('message', t.step_func(on_message), false);
--- a/testing/web-platform/tests/service-workers/service-worker/fetch-waits-for-activate.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/fetch-waits-for-activate.https.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html>
 <title>Service Worker: Fetch Event Waits for Activate Event</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="resources/testharness-helpers.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 
 var worker = 'resources/fetch-waits-for-activate-worker.js';
 var expected_url = normalizeURL(worker);
 var scope = 'resources/fetch-waits-for-activate/';
 
--- a/testing/web-platform/tests/service-workers/service-worker/getregistrations.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/getregistrations.https.html
@@ -1,14 +1,14 @@
 <!DOCTYPE html>
 <title>Service Worker: getRegistrations()</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="../fetch/resources/fetch-test-helpers.sub.js"></script>
 <script>
 // Purge the existing registrations for the origin.
 // getRegistrations() is used in order to avoid adding additional complexity
 // e.g. adding an internal function.
 promise_test(function(t) {
     return navigator.serviceWorker.getRegistrations()
       .then(function(registrations) {
--- a/testing/web-platform/tests/service-workers/service-worker/invalid-blobtype.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/invalid-blobtype.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: respondWith with header value containing a null byte</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/invalid-blobtype-iframe.https.html';
     var SCRIPT = 'resources/invalid-blobtype-worker.js';
     var host_info = get_host_info();
     service_worker_unregister_and_register(t, SCRIPT, SCOPE)
       .then(function(registration) {
--- a/testing/web-platform/tests/service-workers/service-worker/invalid-header.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/invalid-header.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: respondWith with header value containing a null byte</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/invalid-header-iframe.https.html';
     var SCRIPT = 'resources/invalid-header-worker.js';
     var host_info = get_host_info();
     service_worker_unregister_and_register(t, SCRIPT, SCOPE)
       .then(function(registration) {
--- a/testing/web-platform/tests/service-workers/service-worker/navigate-window.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/navigate-window.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: Navigate a Window</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 var host_info = get_host_info();
 var BASE_URL = host_info['HTTPS_ORIGIN'] + base_path();
 
 function wait_for_message(msg) {
   return new Promise(function(resolve, reject) {
--- a/testing/web-platform/tests/service-workers/service-worker/navigation-redirect.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/navigation-redirect.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: Navigation redirection</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 var host_info = get_host_info();
 
 // This test registers three Service Workers at SCOPE1, SCOPE2 and
 // OTHER_ORIGIN_SCOPE. And checks the redirected page's URL and the requests
 // which are intercepted by Service Worker while loading redirect page.
--- a/testing/web-platform/tests/service-workers/service-worker/postmessage-to-client.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/postmessage-to-client.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: postMessage to Client</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
 var frame;
 var t = async_test('postMessage from ServiceWorker to Client');
 t.step(function() {
     var scope = 'resources/blank.html';
     var host_info = get_host_info();
     var sw;
--- a/testing/web-platform/tests/service-workers/service-worker/referer.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/referer.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: check referer of fetch()</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 async_test(function(t) {
     var SCOPE = 'resources/referer-iframe.html';
     var SCRIPT = 'resources/fetch-rewrite-worker.js';
     var host_info = get_host_info();
     service_worker_unregister_and_register(t, SCRIPT, SCOPE)
       .then(function(registration) {
--- a/testing/web-platform/tests/service-workers/service-worker/register-closed-window.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/register-closed-window.https.html
@@ -1,15 +1,15 @@
 <!DOCTYPE html>
 <title>Service Worker: Register() on Closed Window</title>
 <meta name=timeout content=long>
 <script src="/resources/testharness.js"></script>
 <script src="resources/testharness-helpers.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <body>
 <script>
 
 var host_info = get_host_info();
 var frameURL = host_info['HTTPS_ORIGIN'] + base_path() +
                'resources/register-closed-window-iframe.html';
 
--- a/testing/web-platform/tests/service-workers/service-worker/resource-timing.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resource-timing.https.html
@@ -1,12 +1,12 @@
 <!DOCTYPE html>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js"></script>
 <script>
 function resourceUrl(path) {
     return get_host_info()['HTTP_ORIGIN'] + base_path() + path;
 }
 
 function verify(performance, resource, description) {
     var entry = performance.getEntriesByName(resourceUrl(resource))[0];
--- a/testing/web-platform/tests/service-workers/service-worker/resources/client-navigate-worker.js
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/client-navigate-worker.js
@@ -1,11 +1,11 @@
 importScripts("worker-testharness.js");
 importScripts("test-helpers.sub.js");
-importScripts("get-host-info.sub.js")
+importScripts("/common/get-host-info.sub.js")
 importScripts("testharness-helpers.js")
 
 self.onfetch = function(e) {
   if (e.request.url.indexOf("client-navigate-frame.html") >= 0) {
     if (e.clientId === null) {
       e.respondWith(fetch(e.request));
     } else {
       e.respondWith(Response.error());
--- a/testing/web-platform/tests/service-workers/service-worker/resources/clients-get-other-origin.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/clients-get-other-origin.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html>
-<script src="get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js"></script>
 <script>
 var host_info = get_host_info();
 var SCOPE = 'blank.html?clients-get';
 var SCRIPT = 'clients-get-worker.js';
 
 var registration;
 var worker;
--- a/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/dummy-worker-interceptor.js
@@ -1,9 +1,9 @@
-importScripts('get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 
 var worker_text = 'postMessage("worker loading intercepted by service worker"); ';
 
 self.onfetch = function(event) {
   if (event.request.url.indexOf('synthesized') != -1) {
     event.respondWith(new Response(worker_text));
   } else if (event.request.url.indexOf('same-origin') != -1) {
     event.respondWith(fetch('dummy-worker-script.py'));
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-canvas-tainting-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-canvas-tainting-iframe.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var image_path = base_path() + 'fetch-access-control.py?PNGIMAGE';
 var host_info = get_host_info();
 var params = get_query_params(location.href);
 
 var NOT_TAINTED = 'NOT_TAINTED';
 var TAINTED = 'TAINTED';
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-cors-xhr-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-cors-xhr-iframe.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var path = base_path() + 'fetch-access-control.py';
 var host_info = get_host_info();
 var SUCCESS = 'SUCCESS';
 var FAIL = 'FAIL';
 
 function create_test_case_promise(url, with_credentials) {
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-csp-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-csp-iframe.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var image_path = base_path() + 'fetch-access-control.py?PNGIMAGE';
 var host_info = get_host_info();
 var results = '';
 var port = undefined;
 
 function test1() {
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-header-visibility-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-header-visibility-iframe.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
   var host_info = get_host_info();
   var uri = document.location + '?check-ua-header';
 
   var headers = new Headers();
   headers.set('User-Agent', 'custom_ua');
 
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-inscope.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-inscope.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var image_path = base_path() + 'fetch-access-control.py?PNGIMAGE';
 var host_info = get_host_info();
 var results = '';
 
 function test1() {
   var img = document.createElement('img');
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-outscope.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe-inscope-to-outscope.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var image_path = base_path() + 'fetch-access-control.py?PNGIMAGE';
 var host_info = get_host_info();
 var results = '';
 
 function test1() {
   var img = document.createElement('img');
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-mixed-content-iframe.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html>
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var params = get_query_params(location.href);
 var SCOPE = 'fetch-mixed-content-iframe-inscope-to-' + params['target'] + '.html';
 var URL = 'fetch-rewrite-worker.js';
 var host_info = get_host_info();
 
 window.addEventListener('message', on_message, false);
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-css-base-url-worker.js
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-css-base-url-worker.js
@@ -1,9 +1,9 @@
-importScripts('../resources/get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 importScripts('test-helpers.sub.js');
 
 var port = undefined;
 
 self.onmessage = function(e) {
   var message = e.data;
   if ('port' in message) {
     port = message.port;
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var port;
 var host_info = get_host_info();
 
 function assert_equals(a, b) {
   port.postMessage({results: 'equals', got: a, expected: b});
 }
--- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var host_info = get_host_info();
 
 function xhr_send(method, data) {
   return new Promise(function(resolve, reject) {
       var xhr = new XMLHttpRequest();
       xhr.onload = function() {
deleted file mode 100644
--- a/testing/web-platform/tests/service-workers/service-worker/resources/get-host-info.sub.js
+++ /dev/null
@@ -1,26 +0,0 @@
-function get_host_info() {
-  var ORIGINAL_HOST = '127.0.0.1';
-  var REMOTE_HOST = 'localhost';
-  var UNAUTHENTICATED_HOST = 'example.test';
-  var HTTP_PORT = 8000;
-  var HTTPS_PORT = 8443;
-  try {
-    // In W3C test, we can get the hostname and port number in config.json
-    // using wptserve's built-in pipe.
-    // http://wptserve.readthedocs.org/en/latest/pipes.html#built-in-pipes
-    HTTP_PORT = eval('{{ports[http][0]}}');
-    HTTPS_PORT = eval('{{ports[https][0]}}');
-    ORIGINAL_HOST = eval('\'{{host}}\'');
-    REMOTE_HOST = 'www1.' + ORIGINAL_HOST;
-  } catch (e) {
-  }
-  return {
-    HTTP_ORIGIN: 'http://' + ORIGINAL_HOST + ':' + HTTP_PORT,
-    HTTPS_ORIGIN: 'https://' + ORIGINAL_HOST + ':' + HTTPS_PORT,
-    HTTPS_ORIGIN_WITH_CREDS: 'https://foo:bar@' + ORIGINAL_HOST + ':' + HTTPS_PORT,
-    HTTP_REMOTE_ORIGIN: 'http://' + REMOTE_HOST + ':' + HTTP_PORT,
-    HTTPS_REMOTE_ORIGIN: 'https://' + REMOTE_HOST + ':' + HTTPS_PORT,
-    HTTPS_REMOTE_ORIGIN_WITH_CREDS: 'https://foo:bar@' + REMOTE_HOST + ':' + HTTPS_PORT,
-    UNAUTHENTICATED_ORIGIN: 'http://' + UNAUTHENTICATED_HOST + ':' + HTTP_PORT
-  };
-}
--- a/testing/web-platform/tests/service-workers/service-worker/resources/navigation-redirect-other-origin.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/navigation-redirect-other-origin.html
@@ -1,10 +1,10 @@
 <!DOCTYPE html>
-<script src="get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js"></script>
 <script>
 var host_info = get_host_info();
 var SCOPE = 'navigation-redirect-scope1.py';
 var SCRIPT = 'navigation-redirect-worker.js';
 
 var registration;
 var worker;
--- a/testing/web-platform/tests/service-workers/service-worker/resources/referer-iframe.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/referer-iframe.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js"></script>
 <script>
 function check_referer(url, expected_referer) {
   return fetch(url)
     .then(function(res) { return res.json(); })
     .then(function(headers) {
         if (headers['referer'] === expected_referer) {
           return Promise.resolve();
--- a/testing/web-platform/tests/service-workers/service-worker/resources/service-worker-csp-worker.py
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/service-worker-csp-worker.py
@@ -1,12 +1,12 @@
 bodyDefault = '''
 importScripts('worker-testharness.js');
 importScripts('test-helpers.sub.js');
-importScripts('../resources/get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 
 var host_info = get_host_info();
 
 test(function() {
     var import_script_failed = false;
     try {
       importScripts(host_info.HTTPS_REMOTE_ORIGIN +
         base_path() + 'empty.js');
@@ -42,17 +42,17 @@ async_test(function(t) {
           t.done();
         })
       .catch(unreached_rejection(t));
   }, 'Redirected fetch test for default-src');'''
 
 bodyScript = '''
 importScripts('worker-testharness.js');
 importScripts('test-helpers.sub.js');
-importScripts('../resources/get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 
 var host_info = get_host_info();
 
 test(function() {
     var import_script_failed = false;
     try {
       importScripts(host_info.HTTPS_REMOTE_ORIGIN +
         base_path() + 'empty.js');
@@ -88,17 +88,17 @@ async_test(function(t) {
           assert_unreached('Redirected fetch should not fail.');
         })
       .catch(unreached_rejection(t));
   }, 'Redirected fetch test for script-src');'''
 
 bodyConnect = '''
 importScripts('worker-testharness.js');
 importScripts('test-helpers.sub.js');
-importScripts('../resources/get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 
 var host_info = get_host_info();
 
 test(function() {
     var import_script_failed = false;
     try {
       importScripts(host_info.HTTPS_REMOTE_ORIGIN +
         base_path() + 'empty.js');
--- a/testing/web-platform/tests/service-workers/service-worker/resources/worker-interception-iframe.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/worker-interception-iframe.https.html
@@ -1,9 +1,9 @@
-<script src="../resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="test-helpers.sub.js?pipe=sub"></script>
 <script>
 var host_info = get_host_info();
 
 function boilerplate_test(msg) {
     return new Promise(function(resolve, reject) {
           var worker = new Worker("load_worker.js");
           worker.onmessage = function(e) { resolve(e.data) };
--- a/testing/web-platform/tests/service-workers/service-worker/resources/worker-load-interceptor.js
+++ b/testing/web-platform/tests/service-workers/service-worker/resources/worker-load-interceptor.js
@@ -1,9 +1,9 @@
-importScripts('get-host-info.sub.js');
+importScripts('/common/get-host-info.sub.js');
 
 var response_text = "This load was successfully intercepted.";
 var response_script = "postMessage(\"This load was successfully intercepted.\");";
 
 self.onfetch = function(event) {
     var url = event.request.url;
     if (url.indexOf("synthesized-response.txt") != -1) {
         event.respondWith(new Response(response_text));
--- a/testing/web-platform/tests/service-workers/service-worker/websocket.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/websocket.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: WebSocket handshake channel is not intercepted</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 
 async_test(function(t) {
     var path = new URL(".", window.location).pathname
     var url = 'resources/websocket.js';
     var scope = 'resources/blank.html?websocket';
     var host_info = get_host_info();
--- a/testing/web-platform/tests/service-workers/service-worker/xhr.https.html
+++ b/testing/web-platform/tests/service-workers/service-worker/xhr.https.html
@@ -1,13 +1,13 @@
 <!DOCTYPE html>
 <title>Service Worker: XHR doesn't exist</title>
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/get-host-info.sub.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
 <script src="resources/test-helpers.sub.js?pipe=sub"></script>
 <script>
 
 async_test(function(t) {
     var path = new URL(".", window.location).pathname
     var url = 'resources/xhr.js';
     var scope = 'resources/blank.html?xhr';
     var host_info = get_host_info();