Import wpt@f87b2c8df6e3a6835b099652f0d643c6c0a2c5b2
Using wpt-import in Chromium 6c3a8ff45b6714f4af8190ff723cf1c756f68e8a.
With Chromium commits locally applied on WPT:
dbbb2be5a4 "Clip inner border for local attachment background"
Note to sheriffs: This CL imports external tests and adds
expectations for those tests; if this CL is large and causes
a few new failures, please fix the failures by adding new
lines to TestExpectations rather than reverting. See:
https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md
Directory owners for changes in this CL:
asully@chromium.org, mek@chromium.org:
external/wpt/fs
asully@chromium.org, stevebe@microsoft.com:
external/wpt/file-system-access
domenic@chromium.org, ricea@chromium.org:
external/wpt/streams
jsbell@chromium.org, mek@chromium.org:
external/wpt/FileAPI
mek@chromium.org:
external/wpt/webmessaging
NOAUTOREVERT=true
R=rubber-stamper@appspot.gserviceaccount.com
No-Export: true
Cq-Include-Trybots: luci.chromium.try:linux-wpt-identity-fyi-rel,linux-wpt-input-fyi-rel,linux-blink-rel
Change-Id: I67f09d14e5cfc73792d08b896ef67bcf177d482c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4036864
Auto-Submit: WPT Autoroller <wpt-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1073460}
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index 7c59426..8873e57 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -3033,6 +3033,20 @@
crbug.com/626703 [ Win ] virtual/partitioned-cookies/http/tests/inspector-protocol/network/disabled-cache-navigation.js [ Failure ]
# ====== New tests from wpt-importer added here ======
+crbug.com/626703 [ Win10.20h2 ] external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.html [ Failure Timeout ]
+crbug.com/626703 [ Win11 ] external/wpt/credential-management/fedcm-network-requests.https.html [ Timeout ]
+crbug.com/626703 [ Mac11 ] external/wpt/fetch/private-network-access/iframe.tentative.https.window.html [ Timeout ]
+crbug.com/626703 [ Mac12 ] external/wpt/html/browsers/browsing-the-web/overlapping-navigations-and-traversals/same-document-traversal-cross-document-traversal.html [ Timeout ]
+crbug.com/626703 [ Mac11 ] external/wpt/mediacapture-record/MediaRecorder-mimetype.html [ Failure Timeout ]
+crbug.com/626703 [ Win11 ] external/wpt/speculation-rules/prerender/opt-out.html [ Failure Timeout ]
+crbug.com/626703 [ Mac11 ] external/wpt/webrtc-encoded-transform/RTCPeerConnection-insertable-streams-video.https.html [ Timeout ]
+crbug.com/626703 [ Mac12 ] external/wpt/webrtc-encoded-transform/RTCPeerConnection-insertable-streams-video.https.html [ Timeout ]
+crbug.com/626703 [ Win10.20h2 ] virtual/close-watcher/external/wpt/close-watcher/user-activation.html [ Timeout ]
+crbug.com/626703 [ Mac11 ] virtual/prerender/external/wpt/speculation-rules/prerender/opt-out.html [ Skip Timeout ]
+crbug.com/626703 [ Win11 ] virtual/web-bluetooth-new-permissions-backend/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.html [ Failure Timeout ]
+crbug.com/626703 [ Win10.20h2 ] virtual/web-bluetooth-new-permissions-backend/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.html [ Failure Timeout ]
+crbug.com/626703 [ Mac10.15 ] wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-start.https.html [ Failure Timeout ]
+crbug.com/626703 [ Win11 ] wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-stop.https.html [ Failure Timeout ]
crbug.com/626703 external/wpt/css/css-grid/subgrid/grid-gap-010.html [ Failure ]
crbug.com/626703 external/wpt/css/css-grid/subgrid/grid-gap-011.html [ Failure ]
crbug.com/626703 [ Win ] external/wpt/html/semantics/disabled-elements/event-propagate-disabled.tentative.html [ Failure Timeout ]
diff --git a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
index b0f78b4..917c286d 100644
--- a/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
+++ b/third_party/blink/web_tests/external/WPT_BASE_MANIFEST_8.json
@@ -13245,7 +13245,7 @@
]
],
"local_FileSystemDirectoryHandle-iteration-manual.https.html": [
- "8537ca02ba501ac022fc5dbf756be9233b07ed74",
+ "e8c293266c4f132d114474ec6965ae56886be621",
[
null,
{}
@@ -253486,7 +253486,20 @@
"struct": {
"reftests": {
"currentScale-change-repaint.html": [
- "bd2773b5902bb5e8ab5383526412337eaf45a31a",
+ "aa3939c1bef7778dd6bc7c420605582232d06e10",
+ [
+ null,
+ [
+ [
+ "/svg/struct/reftests/reference/green-100x100.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "currentScale.svg": [
+ "926117b6d5ae446dd801b7021ec7befc5b0565bd",
[
null,
[
@@ -257578,6 +257591,16 @@
}
},
"support": {
+ ".cache": {
+ "gitignore2.json": [
+ "7edd9b53df87ffdd019b739766aaa57b5aaaf757",
+ []
+ ],
+ "mtime.json": [
+ "e74844ae7f9db1a221511dafb37f67e004e5fa12",
+ []
+ ]
+ },
".gitignore": [
"d93e645d547894b50149d3726de2654957b6e06f",
[]
@@ -257785,7 +257808,7 @@
]
},
"sandboxed-iframe-expected.txt": [
- "5820516e0ae46767b132b8a0410acbb592da9755",
+ "f6c862bb23289428843c4f25ccc9234543ed45a9",
[]
],
"sandboxed-iframe.html.ini": [
@@ -259893,7 +259916,7 @@
[]
],
"bluetooth-test.js": [
- "fda52206b591597df50a92a1e1b67837bec8a113",
+ "7ad1b937e1f5d1ca4a1e20da410e969ba229227e",
[]
],
"health-thermometer-iframe.html": [
@@ -259903,7 +259926,7 @@
},
"script-tests": {
"base_test_js.template": [
- "e677f00f087d2d4bb4071543a2cee9a7da0ae851",
+ "04c7a70ba4f3b84a38a91d1be971f0ec0d4843ff",
[]
],
"characteristic": {
@@ -259960,11 +259983,11 @@
[]
],
"garbage-collection-ran-during-error.js": [
- "35e838e92e76f26024d0a11cbc24ee9e1a796f54",
+ "cf508a928ee72fbd97816d2f2f2b66004de9423c",
[]
],
"garbage-collection-ran-during-success.js": [
- "7976bbd990b24495b182608cb8259834a69488bc",
+ "bb472fcca4ef2437b03bed6762131ebfefa6c2da",
[]
],
"get-different-service-after-reconnection.js": [
@@ -260006,7 +260029,7 @@
[]
],
"garbage-collection-ran-during-error.js": [
- "33c61096794ca33e29a29da69c3e8f4ceca2c58a",
+ "7ed4aaa9622313c2479ac7ff9d6a9dd5c0cf6288",
[]
],
"get-same-object.js": [
@@ -260026,6 +260049,48 @@
[]
]
}
+ },
+ "server": {
+ "getPrimaryService": {
+ "gen-disconnect-called-before.https.window-expected.txt": [
+ "7c6f6f87ffed690282332b1787519e291dac6ae8",
+ []
+ ],
+ "gen-disconnect-invalidates-objects.https.window-expected.txt": [
+ "0679c29433efaadbf9d8c4c974545baa78e676aa",
+ []
+ ],
+ "gen-disconnected-device.https.window-expected.txt": [
+ "9e3396eb5e2c4cc316bdc431071c7bfca841587b",
+ []
+ ]
+ },
+ "getPrimaryServices": {
+ "gen-disconnect-called-before-with-uuid.https.window-expected.txt": [
+ "59a80a07b22d08f83e67ce23cd1c9db9f5e4e001",
+ []
+ ],
+ "gen-disconnect-called-before.https.window-expected.txt": [
+ "59a80a07b22d08f83e67ce23cd1c9db9f5e4e001",
+ []
+ ],
+ "gen-disconnect-invalidates-objects-with-uuid.https.window-expected.txt": [
+ "0679c29433efaadbf9d8c4c974545baa78e676aa",
+ []
+ ],
+ "gen-disconnect-invalidates-objects.https.window-expected.txt": [
+ "0679c29433efaadbf9d8c4c974545baa78e676aa",
+ []
+ ],
+ "gen-disconnected-device-with-uuid.https.window-expected.txt": [
+ "92f2b124cb2ebe1db7544b8dc170651399efe56e",
+ []
+ ],
+ "gen-disconnected-device.https.window-expected.txt": [
+ "92f2b124cb2ebe1db7544b8dc170651399efe56e",
+ []
+ ]
+ }
}
},
"clear-site-data": {
@@ -260889,6 +260954,10 @@
"911b54a0b488b9c148a29d5d1cd942d4fbca57b4",
[]
],
+ "gc.js": [
+ "ac43a4cfaf7735a08dfd1be177918167f815e800",
+ []
+ ],
"get-host-info.sub.js": [
"9b8c2b5de63f282663cab92231fe1c35184e6f02",
[]
@@ -264190,14 +264259,6 @@
"bd832bf21156a28b1665d46363dd12d92b1f06cc",
[]
],
- "get_all_cookies-default-samesite.html.ini": [
- "6219d6e45af9c605556167585e993cd8a2512698",
- []
- ],
- "get_named_cookie-default-samesite.html.ini": [
- "a08ca555f96e2e390e46c2d1aee306ce107c379c",
- []
- ],
"resources": {
"echo-cookies.html": [
"a1b29b9b03c198c46c4b1e78094acc4a2f0d157e",
@@ -277146,6 +277207,10 @@
"top-layer-dialog-backdrop-ref.html": [
"49c46974c9de23284852d302b57b0ad206158d0f",
[]
+ ],
+ "transition-style-change-event-002-expected.txt": [
+ "3b126fc6ba31c414db348249246bae0fdab850c4",
+ []
]
},
"content-visibility": {
@@ -319792,10 +319857,6 @@
"eaca3f49fd15840a3688a10a91b56524566893c5",
[]
],
- "garbage-collect.js": [
- "d2e3449c05e298836444c9e6fce903158bb0bed8",
- []
- ],
"my-custom-element-html-document.html": [
"b9bfdf90a2d9ae6f2731451b45554ecb70f366d6",
[]
@@ -327981,7 +328042,7 @@
[]
],
"test-helpers.js": [
- "7326fd0fe916145631163deeedbff358d0bbf32f",
+ "893cd198483ca46fd4431e84e8ca91315f34986b",
[]
]
},
@@ -329671,7 +329732,7 @@
[]
],
"test-helpers.js": [
- "20735664f11622dfc35aec23c130b23f0574a2b9",
+ "d2e09504d3f6116564ad2527f0ac476db04b6cf8",
[]
]
},
@@ -352247,7 +352308,7 @@
]
},
"lint.ignore": [
- "7ac79fc36ba68b7d02ae99fc482269a9e20f88e6",
+ "7267be72b0e043466379465325c560aceab1ed57",
[]
],
"loading": {
@@ -367285,7 +367346,7 @@
[]
],
"test-utils.js": [
- "b5da3c85bae0bccbf2b36614832dba15e015d1c0",
+ "5ff8fc8cec939a4de8a608077aa3c57af03b50c4",
[]
]
},
@@ -374022,7 +374083,7 @@
[]
],
"worker.js": [
- "df23072bc99f95d09f7cd1a6550595e43039e7b8",
+ "ee2d51a254256761626e9d3e7743dad89caf0233",
[]
]
}
@@ -375977,7 +376038,7 @@
[]
],
"usb-helpers.js": [
- "1197c43e44e6727b9f3c8fe709bc0fc7c6dd6b6f",
+ "cb6aaadf985a97f4bff3de882796d8d3b1a3d454",
[]
]
},
@@ -382030,7 +382091,7 @@
]
],
"Blob-stream.any.js": [
- "08cca8dbe687b8d5e31cbee6a877886ef9c09324",
+ "8f1d5c555aded300e240bf7873ce415cc51785d8",
[
"FileAPI/blob/Blob-stream.any.html",
{
@@ -382045,7 +382106,7 @@
],
[
"script",
- "../../streams/resources/test-utils.js"
+ "/common/gc.js"
]
]
}
@@ -382064,7 +382125,7 @@
],
[
"script",
- "../../streams/resources/test-utils.js"
+ "/common/gc.js"
]
]
}
@@ -382823,7 +382884,7 @@
]
],
"url-with-fetch.any.js": [
- "9b1699c0612b99d7e3d2b22babe015191d2ce069",
+ "54e6a3da5afe9e9283a7d2a9fe7b8dbda4dea761",
[
"FileAPI/url/url-with-fetch.any.html",
{
@@ -382831,6 +382892,10 @@
[
"script",
"resources/fetch-tests.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -382842,6 +382907,10 @@
[
"script",
"resources/fetch-tests.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -395740,7 +395809,7 @@
]
],
"removeTrack-after-setSinkId.https.html": [
- "393082052b10f5a63f19dda7151d25d27b7fe486",
+ "97db5f81e29ade84871f816a982724359da5e105",
[
null,
{
@@ -396696,7 +396765,7 @@
],
"getDescriptor": {
"detachedIframe.https.window.js": [
- "2722a153c8e6b72e1d7654fa8aadf62fa1e8f625",
+ "de7d0b0b7ce79ffc4391a1aa476b88beb8be2c27",
[
"bluetooth/characteristic/getDescriptor/detachedIframe.https.window.html",
{
@@ -396711,6 +396780,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396722,7 +396795,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "7789f4b7c4693a89c8f9a41e5d3c613ff43ba12a",
+ "9e48a7caabc29a610f72fef370cc4ee6571220ea",
[
"bluetooth/characteristic/getDescriptor/gen-characteristic-is-removed.https.window.html",
{
@@ -396737,6 +396810,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396748,7 +396825,7 @@
]
],
"gen-descriptor-get-same-object.https.window.js": [
- "01d4e8f30f82d7f87af7ee6ae5168e36d87bafcf",
+ "708f67da6a8c38738c6ddb2d1990b6440426627f",
[
"bluetooth/characteristic/getDescriptor/gen-descriptor-get-same-object.https.window.html",
{
@@ -396763,6 +396840,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396774,7 +396855,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "16b34dc09124ea7be5777fbd5040eb96b84171c7",
+ "c256050b0fc4dfe84ad174d1e62c54a0dfa49686",
[
"bluetooth/characteristic/getDescriptor/gen-service-is-removed.https.window.html",
{
@@ -396789,6 +396870,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396802,7 +396887,7 @@
},
"getDescriptors": {
"detachedIframe.https.window.js": [
- "73c5f3c9a0f432f39f92ef7f36fa6eac291ae702",
+ "45dd23752f2fd836b751c4700f910ddb1de26e2c",
[
"bluetooth/characteristic/getDescriptors/detachedIframe.https.window.html",
{
@@ -396817,6 +396902,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396828,7 +396917,7 @@
]
],
"gen-characteristic-is-removed-with-uuid.https.window.js": [
- "b924f052d37dc4ba1a91d41fa7605862543d2dc8",
+ "a0424c01106ac6f9ab921b0cbea3c2b960c8f938",
[
"bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed-with-uuid.https.window.html",
{
@@ -396843,6 +396932,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396854,7 +396947,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "ae8127c87b3c41f5dae6f3793e6ebdf5b5e05fcd",
+ "29325c3bb527996a7bbb8b7bdaff17f7dc39e256",
[
"bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed.https.window.html",
{
@@ -396869,6 +396962,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396880,7 +396977,7 @@
]
],
"gen-descriptor-get-same-object.https.window.js": [
- "11dd8bee80a77d132cc15c4662d81270fe1e513c",
+ "7f1001f3eee795307dfac2899f4dac78e2f2de23",
[
"bluetooth/characteristic/getDescriptors/gen-descriptor-get-same-object.https.window.html",
{
@@ -396895,6 +396992,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396906,7 +397007,7 @@
]
],
"gen-service-is-removed-with-uuid.https.window.js": [
- "13e2e3751a8843ca5054f48192aa92abf2a153c4",
+ "b7c4bff32d91b46e2f70c3181d617c8aac5d5480",
[
"bluetooth/characteristic/getDescriptors/gen-service-is-removed-with-uuid.https.window.html",
{
@@ -396921,6 +397022,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -396932,7 +397037,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "99056cf209a78f34732a64299b6feb871864a66b",
+ "22dc30f6d825736f0ed6a48e2e794fcb0bca4258",
[
"bluetooth/characteristic/getDescriptors/gen-service-is-removed.https.window.html",
{
@@ -396947,6 +397052,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397066,7 +397175,7 @@
]
],
"detachedIframe.https.window.js": [
- "a47ce231112e58d28b9b86578da2d2fa834f89fe",
+ "6e2510b58d6af5117144fb21b2e7049ad9120d02",
[
"bluetooth/characteristic/readValue/detachedIframe.https.window.html",
{
@@ -397081,6 +397190,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397118,7 +397231,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "e2599a16faec6c9cdcfa3b27a206f6488e1909d1",
+ "5bee6db1076bdbc57462ab9298c50c2542a0f702",
[
"bluetooth/characteristic/readValue/gen-characteristic-is-removed.https.window.html",
{
@@ -397133,6 +397246,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397276,7 +397393,7 @@
],
"startNotifications": {
"detachedIframe.https.window.js": [
- "6cb33772d32b005b401e3ab45767c9066f74fef7",
+ "f09c52d32822e1dc412e158c18e9cafa0a931e29",
[
"bluetooth/characteristic/startNotifications/detachedIframe.https.window.html",
{
@@ -397291,6 +397408,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397302,7 +397423,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "62d0d15d10b57992bdf2f60c5582cdb06e8f1673",
+ "c2a23d7f44191fc3a64a397aac447801f3c6ce47",
[
"bluetooth/characteristic/startNotifications/gen-characteristic-is-removed.https.window.html",
{
@@ -397317,6 +397438,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397330,7 +397455,7 @@
},
"stopNotifications": {
"detachedIframe.https.window.js": [
- "1f3e616e01d2102e5f1970191691af4a8f7f9152",
+ "a459a5b15d9fa7f87b27fda23f8edaa547584e71",
[
"bluetooth/characteristic/stopNotifications/detachedIframe.https.window.html",
{
@@ -397345,6 +397470,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397410,7 +397539,7 @@
]
],
"detachedIframe.https.window.js": [
- "7647a8734c873efda2db7f2d44bb827278b74c98",
+ "eb243a3508c3de75d29f3df91060040da231e1a6",
[
"bluetooth/characteristic/writeValue/detachedIframe.https.window.html",
{
@@ -397425,6 +397554,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397436,7 +397569,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "2ceeabdb145db08b4ad481eb3dbff94e36f3b6d0",
+ "5750cb82c7f848dba7fd4f3783f6a340636a3661",
[
"bluetooth/characteristic/writeValue/gen-characteristic-is-removed.https.window.html",
{
@@ -397451,6 +397584,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397568,7 +397705,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "05749943c1196bc63e113492324d06513b83dfe6",
+ "e202376da7c64fa3a906e6f169a76e61d1e6a916",
[
"bluetooth/characteristic/writeValueWithResponse/gen-characteristic-is-removed.https.window.html",
{
@@ -397583,6 +397720,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397700,7 +397841,7 @@
]
],
"gen-characteristic-is-removed.https.window.js": [
- "fea561c0fb7a1587f3333565144336af7364470c",
+ "b88246aae834f0ea54e72ec9a292c6b93eafb3cc",
[
"bluetooth/characteristic/writeValueWithoutResponse/gen-characteristic-is-removed.https.window.html",
{
@@ -397715,6 +397856,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397782,7 +397927,7 @@
"descriptor": {
"readValue": {
"detachedIframe.https.window.js": [
- "17bdbf1f1ddc176f6613df7db459902409823205",
+ "47765a13159b7facc753e7951b94377abc8b54b9",
[
"bluetooth/descriptor/readValue/detachedIframe.https.window.html",
{
@@ -397797,6 +397942,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397808,7 +397957,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "2c46b99fd1de291992ca8f4d13364bfad9f43b02",
+ "d6c73ba60e6a1e5d8d10c80796729baf039ee702",
[
"bluetooth/descriptor/readValue/gen-service-is-removed.https.window.html",
{
@@ -397823,6 +397972,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397888,7 +398041,7 @@
]
],
"detachedIframe.https.window.js": [
- "c198177fa3704c4d270fd90f8e99dd2cd95a9328",
+ "aa143ca8e53e993273a6887b67566ff3265992d4",
[
"bluetooth/descriptor/writeValue/detachedIframe.https.window.html",
{
@@ -397903,6 +398056,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397914,7 +398071,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "c681bcee419b33c6faa52ea40fc8ccf86c3f4113",
+ "c7f6d6efe3e3a19f5c954a3ca83aa87f0386c98c",
[
"bluetooth/descriptor/writeValue/gen-service-is-removed.https.window.html",
{
@@ -397929,6 +398086,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -397970,7 +398131,7 @@
]
],
"detachedIframe.https.window.js": [
- "c34a3c41f25099defe0f3c63b9f8a122add41a9c",
+ "f4803542fbb30c2aff401fd0951271e5e39bc999",
[
"bluetooth/device/forget/detachedIframe.https.window.html",
{
@@ -397985,6 +398146,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -398050,7 +398215,7 @@
]
],
"disconnected_gc.https.window.js": [
- "a2c20ea4620aa620b0b12cbef642a785f32285f2",
+ "0cf4973e2167766ece047cbcac8034d089482acc",
[
"bluetooth/device/gattserverdisconnected-event/disconnected_gc.https.window.html",
{
@@ -398065,6 +398230,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -398312,7 +398481,7 @@
]
],
"detachedIframe.https.window.js": [
- "6bee7292e024de980778c1797b2e73e98fda36c3",
+ "202a8dab7da3efdefc01089695f402cff7bb3309",
[
"bluetooth/device/watchAdvertisements/detachedIframe.https.window.html",
{
@@ -398327,6 +398496,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -399877,7 +400050,7 @@
]
],
"detachedIframe.https.window.js": [
- "1acd1562228abd75225983df843c94d85ba1a635",
+ "2332cef7070baddc84573120edb0f0dc1fc83efa",
[
"bluetooth/server/connect/detachedIframe.https.window.html",
{
@@ -399892,6 +400065,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -399903,7 +400080,7 @@
]
],
"garbage-collection-ran-during-success.https.window.js": [
- "bae9ff78f342832c77975a297ca358fb249333ba",
+ "2d2211dec30f87a988acf24fc4a283ed174405f8",
[
"bluetooth/server/connect/garbage-collection-ran-during-success.https.window.html",
{
@@ -399918,6 +400095,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400009,7 +400190,7 @@
]
],
"detach-gc.https.window.js": [
- "4951fd07c5e92dced89408ba4b859d00951244d4",
+ "b934b3797325a255b77e5cf39011ab2803bbb90b",
[
"bluetooth/server/disconnect/detach-gc.https.window.html",
{
@@ -400024,6 +400205,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400035,7 +400220,7 @@
]
],
"detachedIframe.https.window.js": [
- "7a8f2aa0d727d06e8daeef4abe4006c101f476d1",
+ "04e0ca0117fcc2974e02bde54802ee8d279e234a",
[
"bluetooth/server/disconnect/detachedIframe.https.window.html",
{
@@ -400050,6 +400235,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400087,7 +400276,7 @@
]
],
"gc-detach.https.window.js": [
- "6f9055a73acf1ccce9365aaa7be7736ff20a9a61",
+ "1c062a775903bf0396a33592231851e2da2b7660",
[
"bluetooth/server/disconnect/gc-detach.https.window.html",
{
@@ -400102,6 +400291,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400115,7 +400308,7 @@
},
"getPrimaryService": {
"gen-disconnect-called-before.https.window.js": [
- "6f4f076110a8824c5bc1d5ce84f98b879d589e7e",
+ "631545a38542689762605f53af4ed7a7753a9134",
[
"bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.html",
{
@@ -400130,6 +400323,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400141,7 +400338,7 @@
]
],
"gen-disconnect-called-during-error.https.window.js": [
- "24184ea8ba48ca281b86931f5c5c51317bb1662b",
+ "bcf19665d5fcf2cd720717f3f602f9d9795a6a33",
[
"bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.https.window.html",
{
@@ -400156,6 +400353,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400167,7 +400368,7 @@
]
],
"gen-disconnect-called-during-success.https.window.js": [
- "8a8714bca579698346b6eb26694c30e343c98aac",
+ "0d2fc1044a5bbb4c205741db61a3946d5b37c724",
[
"bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.https.window.html",
{
@@ -400182,6 +400383,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400193,7 +400398,7 @@
]
],
"gen-disconnect-discovery-timeout.https.window.js": [
- "d060e32ba7c164c9f4dcaf3397bfd431b396b7b4",
+ "03b0c9d0f382c3462beed1ee282321a7d91d94f1",
[
"bluetooth/server/getPrimaryService/gen-disconnect-discovery-timeout.https.window.html",
{
@@ -400208,6 +400413,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400219,7 +400428,7 @@
]
],
"gen-disconnect-invalidates-objects.https.window.js": [
- "52699ee0a089ac5529164ca9ceedcb4016404da7",
+ "56468b24eabf2d99a3f4a10eef7cdbc0c2594ebc",
[
"bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window.html",
{
@@ -400234,6 +400443,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400245,7 +400458,7 @@
]
],
"gen-disconnected-device.https.window.js": [
- "e0a31f6136e46a0d7bcbd7cf4d52255caa0d0950",
+ "741b2db5ee82e8f268fca71143fd419bda0af87b",
[
"bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.html",
{
@@ -400260,6 +400473,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400271,7 +400488,7 @@
]
],
"gen-discovery-complete-no-permission-absent-service.https.window.js": [
- "52875b185489c50adb8c39fa78f8b4a694470258",
+ "e2f5c87630559a7a5fef08bf37b68e84d3356648",
[
"bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.https.window.html",
{
@@ -400286,6 +400503,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400297,7 +400518,7 @@
]
],
"gen-discovery-complete-service-not-found.https.window.js": [
- "56362f20bfc38d7012e87bd5e2b29274ec5f3452",
+ "8e9166b41a140832ccc121b6ec63415fccb5bbca",
[
"bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.https.window.html",
{
@@ -400312,6 +400533,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400323,7 +400548,7 @@
]
],
"gen-garbage-collection-ran-during-error.https.window.js": [
- "06d6a31eeb5ffc8b4bc9ff08cae550ee9fc17e87",
+ "df182fe8fff6b3001d355fe4c70b67b9b64bdc56",
[
"bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.https.window.html",
{
@@ -400338,6 +400563,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400349,7 +400578,7 @@
]
],
"gen-garbage-collection-ran-during-success.https.window.js": [
- "cd4a0d39f28ab582cf8dfca727f58cb2dd7b78f3",
+ "8e278af224234f1ab005e52cfff0fafcfe729537",
[
"bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.https.window.html",
{
@@ -400364,6 +400593,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400375,7 +400608,7 @@
]
],
"gen-get-different-service-after-reconnection.https.window.js": [
- "6cd60732879a502b147c0f3e1a835ea22e2d4ba8",
+ "d4557f67535001a64a0b7347e336f95db547fe6c",
[
"bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.https.window.html",
{
@@ -400390,6 +400623,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400401,7 +400638,7 @@
]
],
"gen-get-same-object.https.window.js": [
- "f05adce27b1e877223684e00fce45bdbf5c92361",
+ "b43cefb567f01d0b7cdb8b53bc3da40e785fe007",
[
"bluetooth/server/getPrimaryService/gen-get-same-object.https.window.html",
{
@@ -400416,6 +400653,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400427,7 +400668,7 @@
]
],
"gen-invalid-service-name.https.window.js": [
- "b30e4cc48f443d72e680ecc5420fe25eb1571758",
+ "cf4ab6c665d6a9605507b01e1e0c3e1a807376ba",
[
"bluetooth/server/getPrimaryService/gen-invalid-service-name.https.window.html",
{
@@ -400442,6 +400683,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400453,7 +400698,7 @@
]
],
"gen-no-permission-absent-service.https.window.js": [
- "6df58222e0aec9623433e9939295161a55d41362",
+ "3466ded4f9e910d30c3f5a55dd3e1172addeb3d8",
[
"bluetooth/server/getPrimaryService/gen-no-permission-absent-service.https.window.html",
{
@@ -400468,6 +400713,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400479,7 +400728,7 @@
]
],
"gen-no-permission-for-any-service.https.window.js": [
- "d6ae0b6dc8f001c95155024244d9db607722d196",
+ "6576ef20a3de120529c4bf2997b13b40d7ce3f26",
[
"bluetooth/server/getPrimaryService/gen-no-permission-for-any-service.https.window.html",
{
@@ -400494,6 +400743,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400505,7 +400758,7 @@
]
],
"gen-no-permission-present-service.https.window.js": [
- "e11ed9e41e210216b16412dd06e203dd557ef1bd",
+ "3d0b460bc33b9e246dfa59d30248edefd7d13d6a",
[
"bluetooth/server/getPrimaryService/gen-no-permission-present-service.https.window.html",
{
@@ -400520,6 +400773,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400531,7 +400788,7 @@
]
],
"gen-service-not-found.https.window.js": [
- "0b8419a8042b0706c941e259ae7c2eb6b85acb35",
+ "6e0d2c446ba90199f1bab1158e6147ed632deda6",
[
"bluetooth/server/getPrimaryService/gen-service-not-found.https.window.html",
{
@@ -400546,6 +400803,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400689,7 +400950,7 @@
]
],
"gen-disconnect-called-before-with-uuid.https.window.js": [
- "ea0c16160508aacf9845f45264c3e58ee6b9a895",
+ "21b561375dfed914f011a4de18148053087a6c4f",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.html",
{
@@ -400704,6 +400965,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400715,7 +400980,7 @@
]
],
"gen-disconnect-called-before.https.window.js": [
- "04dc61083b87c0297b79d012575738e8c335954d",
+ "8e5fea83ab4e53299ed6f5c78bd5d0322d2cf410",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window.html",
{
@@ -400730,6 +400995,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400741,7 +401010,7 @@
]
],
"gen-disconnect-called-during-error-with-uuid.https.window.js": [
- "3223049d2a8625ca0c10814053364371b3cfd05f",
+ "5c28716b90bf32e0e25e5e16ac37fc085f50fb9a",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.https.window.html",
{
@@ -400756,6 +401025,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400767,7 +401040,7 @@
]
],
"gen-disconnect-called-during-error.https.window.js": [
- "646db21586fe6d237ac6e7431695af4346391c15",
+ "ddc31247911d64f1995cdae41af9da15a11bb890",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.https.window.html",
{
@@ -400782,6 +401055,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400793,7 +401070,7 @@
]
],
"gen-disconnect-called-during-success-with-uuid.https.window.js": [
- "472eb991ece339dc64c59d7a100e50f2863b4de3",
+ "13e3806d313e40ffc1d69503ad9ebb18cf4630ba",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.https.window.html",
{
@@ -400808,6 +401085,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400819,7 +401100,7 @@
]
],
"gen-disconnect-called-during-success.https.window.js": [
- "86d56889325b2a139e624f60e94eac0a3f46e873",
+ "d6b31936c60a9a17af6a4764ac16b7580b3649a9",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.https.window.html",
{
@@ -400834,6 +401115,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400845,7 +401130,7 @@
]
],
"gen-disconnect-discovery-timeout-with-uuid.https.window.js": [
- "0eaf5d7119e003cc579933279764b31ec6ad7358",
+ "77f7bc81d99cc2f0b7f72e5a5866d0d89e625dce",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout-with-uuid.https.window.html",
{
@@ -400860,6 +401145,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400871,7 +401160,7 @@
]
],
"gen-disconnect-discovery-timeout.https.window.js": [
- "c95b13a409b2d4a85c42dcbda23ce8f3f7ecab6d",
+ "ea55b7b495259c58027ac24be4b918585cb44fed",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout.https.window.html",
{
@@ -400886,6 +401175,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400897,7 +401190,7 @@
]
],
"gen-disconnect-invalidates-objects-with-uuid.https.window.js": [
- "0a5e07310faf9efbf0eb1f2b2f05c3974d9662c7",
+ "8cdb83e3ad7a2fea327c45b67388082c4e58e09e",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window.html",
{
@@ -400912,6 +401205,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400923,7 +401220,7 @@
]
],
"gen-disconnect-invalidates-objects.https.window.js": [
- "e87339d59d07470f98eac4feb2d54619769119ba",
+ "9fd536f05161e0582e88ecbf2f5987a92214a4ba",
[
"bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window.html",
{
@@ -400938,6 +401235,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400949,7 +401250,7 @@
]
],
"gen-disconnected-device-with-uuid.https.window.js": [
- "bb440a7caa2d309468bb72eb9b27cd37b60986f0",
+ "e0393d5e69ca867e09b049576c33efbbc397866d",
[
"bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window.html",
{
@@ -400964,6 +401265,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -400975,7 +401280,7 @@
]
],
"gen-disconnected-device.https.window.js": [
- "26f3269a0c96d3fc029499adb952dff5dae38598",
+ "87d74c6ab14083fdd6ed32aa74d01e5b1206b53d",
[
"bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window.html",
{
@@ -400990,6 +401295,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401001,7 +401310,7 @@
]
],
"gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.js": [
- "b52dac0385f47c463d2302838e57425d0e8fc5c4",
+ "6e179dc5d9a373a6a10c17a8083116e464264658",
[
"bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.html",
{
@@ -401016,6 +401325,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401027,7 +401340,7 @@
]
],
"gen-discovery-complete-service-not-found-with-uuid.https.window.js": [
- "f944f72583ff6a9f4fbf1876246face6538486d9",
+ "66cfb491c078d7ca378cb4418d399a0b33a9d07b",
[
"bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.https.window.html",
{
@@ -401042,6 +401355,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401053,7 +401370,7 @@
]
],
"gen-garbage-collection-ran-during-error-with-uuid.https.window.js": [
- "455bd47a040727ceed3f435a6fc6b469c892c539",
+ "a235cf5d189bebdaf2d8e6b04e5796075fb34098",
[
"bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.https.window.html",
{
@@ -401068,6 +401385,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401079,7 +401400,7 @@
]
],
"gen-garbage-collection-ran-during-error.https.window.js": [
- "2e832d89e175d46c78d8468ddf6d3fb29bd0524a",
+ "f174d4aef98dbe1fb3fa148992cab34b8a475263",
[
"bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.https.window.html",
{
@@ -401094,6 +401415,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401105,7 +401430,7 @@
]
],
"gen-garbage-collection-ran-during-success-with-uuid.https.window.js": [
- "4555242ae823060dfcc56ea8965eb93b0af92242",
+ "cf5dfb246fbd12ef3a4597926cdbf877bae2cc4a",
[
"bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.https.window.html",
{
@@ -401120,6 +401445,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401131,7 +401460,7 @@
]
],
"gen-garbage-collection-ran-during-success.https.window.js": [
- "0eb78ba1b32de808f10450c04061254b397ab86b",
+ "f1c080a9463b79462bab70dbe611ee01ea6880b8",
[
"bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.https.window.html",
{
@@ -401146,6 +401475,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401157,7 +401490,7 @@
]
],
"gen-get-different-service-after-reconnection-with-uuid.https.window.js": [
- "11671cbf7b3aae978cd943485aa2197b1b560876",
+ "2e40d580f3399ddccd7b84d60f9ffa87b0fb2d51",
[
"bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.https.window.html",
{
@@ -401172,6 +401505,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401183,7 +401520,7 @@
]
],
"gen-get-different-service-after-reconnection.https.window.js": [
- "efda6cf4a4150ea58f895671d0e286105d7af883",
+ "ee1fc971bfa942e4f0c204acb80b055f311dc611",
[
"bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.https.window.html",
{
@@ -401198,6 +401535,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401209,7 +401550,7 @@
]
],
"gen-get-same-object-with-uuid.https.window.js": [
- "d84ca0aa7fc9b98dd3621d203b4d9e1050ffec23",
+ "b589056a23a9e67ad9673713bab2cd2e93c1b8f9",
[
"bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.https.window.html",
{
@@ -401224,6 +401565,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401235,7 +401580,7 @@
]
],
"gen-get-same-object.https.window.js": [
- "3f876f5b76b29df00b85a5ec1e44a2d74e8ff249",
+ "63739add912351f1da86a4cfdcd02d4cfd8567fa",
[
"bluetooth/server/getPrimaryServices/gen-get-same-object.https.window.html",
{
@@ -401250,6 +401595,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401261,7 +401610,7 @@
]
],
"gen-invalid-service-name.https.window.js": [
- "d26c0aa20a6f48073d71b2b63c252acbffbfdaee",
+ "a9b1262e6a181d1017ead79b1972ecd85e942098",
[
"bluetooth/server/getPrimaryServices/gen-invalid-service-name.https.window.html",
{
@@ -401276,6 +401625,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401287,7 +401640,7 @@
]
],
"gen-no-permission-absent-service-with-uuid.https.window.js": [
- "4aefb9955b384f6d5a762a2b6d09e1685a1f58a7",
+ "27ad9f008ee0d296dcbcf1c27199ce11a45e6fdd",
[
"bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.https.window.html",
{
@@ -401302,6 +401655,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401313,7 +401670,7 @@
]
],
"gen-no-permission-for-any-service-with-uuid.https.window.js": [
- "a5006e6da846c599297638ca0cfc04b9d8c7c91f",
+ "d5f06c23da6660566fbbbdbf8a5dccaaa14904fe",
[
"bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service-with-uuid.https.window.html",
{
@@ -401328,6 +401685,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401339,7 +401700,7 @@
]
],
"gen-no-permission-for-any-service.https.window.js": [
- "e7d20bd3f230b3e69d0d2720edb168ddf1f478f1",
+ "8aa730d2ed2d8de1868d705e026a6a8a2376ee27",
[
"bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service.https.window.html",
{
@@ -401354,6 +401715,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401365,7 +401730,7 @@
]
],
"gen-no-permission-present-service-with-uuid.https.window.js": [
- "8f4811fe08b2f12c5cb5a03c7dda72787e9f5373",
+ "a2047a0e8f0e2236cc968b309aa5340ee5b97a90",
[
"bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.https.window.html",
{
@@ -401380,6 +401745,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401391,7 +401760,7 @@
]
],
"gen-service-not-found-with-uuid.https.window.js": [
- "8bf9d8c0b6b43a13773a24d261ea60881cdc6b79",
+ "a2db1edc4b9f30d73b39eb530894983323135090",
[
"bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.https.window.html",
{
@@ -401406,6 +401775,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401498,7 +401871,7 @@
},
"service": {
"detachedIframe.https.window.js": [
- "d83e03737dd726b07f4d129e0bcf449a5d0adca4",
+ "f75fc225a791b57bff086fa8acad026521e22ce4",
[
"bluetooth/service/detachedIframe.https.window.html",
{
@@ -401513,6 +401886,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401603,7 +401980,7 @@
]
],
"detachedIframe.https.window.js": [
- "8bdf406273eda66bbba21272d2e26d517b261e74",
+ "ea8c96160ff9dfa2498fd9d51f167ddc80e4aa6a",
[
"bluetooth/service/getCharacteristic/detachedIframe.https.window.html",
{
@@ -401618,6 +401995,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401629,7 +402010,7 @@
]
],
"gen-blocklisted-characteristic.https.window.js": [
- "fb96df568ff19eb786ff92b39fb05e8e85c24f92",
+ "cce302d6504f51db4d67553d8f57b915d5ffc645",
[
"bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.window.html",
{
@@ -401644,6 +402025,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401655,7 +402040,7 @@
]
],
"gen-characteristic-not-found.https.window.js": [
- "c0987c68f5924f07442c52993487695935706ffd",
+ "2ed48eb5c68798e402193ca195c74c86dbf8909e",
[
"bluetooth/service/getCharacteristic/gen-characteristic-not-found.https.window.html",
{
@@ -401670,6 +402055,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401681,7 +402070,7 @@
]
],
"gen-garbage-collection-ran-during-error.https.window.js": [
- "1c429fc49451473332704f5a4b8863bf37bf5a76",
+ "1fd70c8fad4b454cb0687d48645117edb801c4de",
[
"bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-error.https.window.html",
{
@@ -401696,6 +402085,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401707,7 +402100,7 @@
]
],
"gen-get-same-object.https.window.js": [
- "636ba9de773a39cf033e04c4efe719278204e071",
+ "c5176cdc5e0a7a310c60e1d4ed15b07dbeb5e7bb",
[
"bluetooth/service/getCharacteristic/gen-get-same-object.https.window.html",
{
@@ -401722,6 +402115,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401733,7 +402130,7 @@
]
],
"gen-invalid-characteristic-name.https.window.js": [
- "2331f86c4ae418cdd9cc0a49ea5b4ef2cfb2c164",
+ "da0f5bda28080f7486e95a3f14ee1f8838c3bc62",
[
"bluetooth/service/getCharacteristic/gen-invalid-characteristic-name.https.window.html",
{
@@ -401748,6 +402145,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401759,7 +402160,7 @@
]
],
"gen-reconnect-during.https.window.js": [
- "bc96ce5eefd6b66a23cf2cdda03c5cdb3e0fb449",
+ "8801c152e931ef3e631cc7ec649c83254c59b3a2",
[
"bluetooth/service/getCharacteristic/gen-reconnect-during.https.window.html",
{
@@ -401774,6 +402175,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401785,7 +402190,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "d04967e3a8c611c1f6941770d1cac6986adbc449",
+ "bfeb318c46ea54136137f390adaae0a7322dd827",
[
"bluetooth/service/getCharacteristic/gen-service-is-removed.https.window.html",
{
@@ -401800,6 +402205,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401917,7 +402326,7 @@
]
],
"gen-blocklisted-characteristic-with-uuid.https.window.js": [
- "c39a29c845bf59d68a4c8754e0c34217ba259972",
+ "79cd01032b580debd840d885c350d44aa7b5e974",
[
"bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.window.html",
{
@@ -401932,6 +402341,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401943,7 +402356,7 @@
]
],
"gen-characteristic-not-found-with-uuid.https.window.js": [
- "ccaa7388e7e339bc223f57d90603fa1aa3fa512b",
+ "8a5e2ab4e4ac8e1534f0ccb3666fe5ee71645ec9",
[
"bluetooth/service/getCharacteristics/gen-characteristic-not-found-with-uuid.https.window.html",
{
@@ -401958,6 +402371,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401969,7 +402386,7 @@
]
],
"gen-garbage-collection-ran-during-error-with-uuid.https.window.js": [
- "ad4ab9f3f5067b8b042c3ec8a9225c39382beb57",
+ "683b93e352d0e59fce29c48585d419febd850fb6",
[
"bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error-with-uuid.https.window.html",
{
@@ -401984,6 +402401,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -401995,7 +402416,7 @@
]
],
"gen-garbage-collection-ran-during-error.https.window.js": [
- "844814508f927f91b46f2035c365737220eab62e",
+ "c964781ab44634e0677e5ce46ac5d5b816dff0be",
[
"bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error.https.window.html",
{
@@ -402010,6 +402431,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402021,7 +402446,7 @@
]
],
"gen-get-same-object-with-uuid.https.window.js": [
- "35d277e3839c8375190f7e65dd60214bdc2a6fef",
+ "64b53f4eb31f0740e0f5c8c591c183ded92ffa79",
[
"bluetooth/service/getCharacteristics/gen-get-same-object-with-uuid.https.window.html",
{
@@ -402036,6 +402461,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402047,7 +402476,7 @@
]
],
"gen-get-same-object.https.window.js": [
- "4326ee29079606daef6b6e1dda1eff08dec6c449",
+ "6aad17c1e689e7f910698a84f3505226dc77deff",
[
"bluetooth/service/getCharacteristics/gen-get-same-object.https.window.html",
{
@@ -402062,6 +402491,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402073,7 +402506,7 @@
]
],
"gen-invalid-characteristic-name.https.window.js": [
- "14b2e509be4f4941bc96f40cb6da3d3b08879765",
+ "c7d439e13affcbac37a872023cd76738a922dd13",
[
"bluetooth/service/getCharacteristics/gen-invalid-characteristic-name.https.window.html",
{
@@ -402088,6 +402521,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402099,7 +402536,7 @@
]
],
"gen-reconnect-during-with-uuid.https.window.js": [
- "34207a2f60d2af6dcb74e0e43f4c486d00f92226",
+ "db373fbca1581019eada6740e49c0e8fc624ea94",
[
"bluetooth/service/getCharacteristics/gen-reconnect-during-with-uuid.https.window.html",
{
@@ -402114,6 +402551,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402125,7 +402566,7 @@
]
],
"gen-reconnect-during.https.window.js": [
- "4354cfc0671e4f008c1702f8f727ee22cae47fdb",
+ "8b3ba7cc6baa1f6f3a37536aeb51fd066a682da0",
[
"bluetooth/service/getCharacteristics/gen-reconnect-during.https.window.html",
{
@@ -402140,6 +402581,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402151,7 +402596,7 @@
]
],
"gen-service-is-removed-with-uuid.https.window.js": [
- "8d0e7c2fc333c58b5fbbf3f25daad08a35208a8e",
+ "2d4db52822d7e44e50a38876747b989a4b5c5017",
[
"bluetooth/service/getCharacteristics/gen-service-is-removed-with-uuid.https.window.html",
{
@@ -402166,6 +402611,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -402177,7 +402626,7 @@
]
],
"gen-service-is-removed.https.window.js": [
- "dff0d3d93975b31f3698bf3c004f92e387489438",
+ "f922b45cdcca6844772681663fb303f3ba430051",
[
"bluetooth/service/getCharacteristics/gen-service-is-removed.https.window.html",
{
@@ -402192,6 +402641,10 @@
],
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"/bluetooth/resources/bluetooth-test.js"
],
[
@@ -412853,7 +413306,7 @@
]
],
"get_all_cookies-default-samesite.html": [
- "099ac5112e1cbfb105171dcbe06e967d5b87f0f2",
+ "3b1606b7f825bf377302f451a4479f97b0c88297",
[
null,
{
@@ -412862,7 +413315,7 @@
]
],
"get_named_cookie-default-samesite.html": [
- "405473cc3a891ea53b0a8f52d3a4c342a71e6299",
+ "2ee5d0f29ceb57f48853929284b9d78d115e115d",
[
null,
{
@@ -418633,6 +419086,13 @@
{}
]
],
+ "transition-style-change-event-002.html": [
+ "dc9297004d7c04ee86d2013272dc5c53b09c4b43",
+ [
+ null,
+ {}
+ ]
+ ],
"transition-style-change-event.html": [
"4cc1772979d2ff3c0a0628426ac7a109a5306497",
[
@@ -446863,7 +447323,7 @@
},
"custom-elements": {
"CustomElementRegistry-constructor-and-callbacks-are-held-strongly.html": [
- "5e741eba67e92b41105685ea14248df9b1b4b127",
+ "fb6af32fe1caa76ec09d88f009b21918c3b5e146",
[
null,
{}
@@ -447041,7 +447501,7 @@
]
],
"ElementInternals-target-element-is-held-strongly.html": [
- "7119d5f9ebe95eced4b550dd8c394f685103e7a8",
+ "a747c04c5c92b0ac681960a054f13b08cb846ddc",
[
null,
{}
@@ -482818,13 +483278,17 @@
]
],
"FileSystemDirectoryHandle-iteration.https.any.js": [
- "3961ea3ea86cd209d69485e8301850db193f5c8d",
+ "b337d61d76819b89b93be3cacbdc12bd0a8b0e5b",
[
"fs/FileSystemDirectoryHandle-iteration.https.any.html",
{
"script_metadata": [
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"resources/test-helpers.js"
],
[
@@ -482844,6 +483308,10 @@
"script_metadata": [
[
"script",
+ "/common/gc.js"
+ ],
+ [
+ "script",
"resources/test-helpers.js"
],
[
@@ -525416,7 +525884,7 @@
]
],
"popover-animated-hide-cleanup.tentative.html": [
- "ee1239e05f2c94d146d93442070e4d4faa99ced8",
+ "9310acc4ff209807a36b75c543edad64f4318f39",
[
null,
{
@@ -536432,7 +536900,7 @@
]
],
"get_all_cookies.sub.html": [
- "a145e5232d4d01e25ccbf93ae7cdab8ffb08c3f0",
+ "84f93af0a310de777baccb9038b11b5ce0e8c7b6",
[
null,
{
@@ -536441,7 +536909,7 @@
]
],
"get_all_cookies.sub.https.html": [
- "e340278031583032630624f264794befcad41181",
+ "e94167133b3aa852a54f06b49e850e66e2873f65",
[
null,
{
@@ -536450,7 +536918,7 @@
]
],
"get_named_cookie.sub.html": [
- "3cbc784f763fd7c2b8d3d1d1424e5db62382f81c",
+ "28950e253609f16ee8b345712ae309c87e785ca8",
[
null,
{
@@ -536459,7 +536927,7 @@
]
],
"get_named_cookie.sub.https.html": [
- "d0d8612ac23f003c35f37b9aaa37fa410c338fac",
+ "8e8f44338128b9f110c22861b067cd6af1ef2e09",
[
null,
{
@@ -542743,10 +543211,12 @@
]
],
"parallel-capture-requests.https.html": [
- "01b7f32e358e7cac8493f36096ded172a5896a4a",
+ "301515d1bd36ac294299f0a41e92b3abf01f1eb2",
[
null,
- {}
+ {
+ "testdriver": true
+ }
]
]
},
@@ -548005,15 +548475,22 @@
{}
]
],
+ "navigate-from-initial-about-blank-gc.html": [
+ "d35121ec819a7074ce3673a88f56e75f2007ec1b",
+ [
+ null,
+ {}
+ ]
+ ],
"navigate-from-initial-about-blank-src.html": [
- "2044b33cf027271bbedcff7462114c3b63e0d69b",
+ "8e54943669989d4c839ff74066d3c865bb99ec76",
[
null,
{}
]
],
"navigate-from-initial-about-blank.html": [
- "d494ec468cebf87a33ab9c5f1de6d0f3184a3879",
+ "00b2216166a6f904119546131041057cb6b32faf",
[
null,
{}
@@ -552529,7 +553006,7 @@
]
],
"permissions-cg.https.html": [
- "d8f63eba5eca3e80b1861259377cf99c8a03d2fa",
+ "7a2d8dcbb4d557196af1f8020ce212958d96985e",
[
null,
{
@@ -582897,7 +583374,7 @@
]
],
"garbage-collection.any.js": [
- "f7e2d06ae5cdf362591699f52a938da7c714ecd9",
+ "e578176777adafe6ec370be6dd88337af083b3f0",
[
"streams/readable-streams/garbage-collection.any.html",
{
@@ -582909,6 +583386,10 @@
[
"script",
"../resources/test-utils.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -582924,6 +583405,10 @@
[
"script",
"../resources/test-utils.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -582939,6 +583424,10 @@
[
"script",
"../resources/test-utils.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -582954,6 +583443,10 @@
[
"script",
"../resources/test-utils.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -604555,7 +605048,7 @@
},
"webmessaging": {
"Channel_postMessage_Blob.any.js": [
- "485dd23f5357a32b630099d2d64310215c3060ab",
+ "fce814f5887ad186789331d4cc071a06e03e2127",
[
"webmessaging/Channel_postMessage_Blob.any.html",
{
@@ -604563,6 +605056,10 @@
[
"title",
"postMessage() with a Blob"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -604574,6 +605071,10 @@
[
"title",
"postMessage() with a Blob"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -604924,7 +605425,7 @@
]
],
"blobs.html": [
- "1f0e2f1f1d6050136910c17e460a70ed15874aa5",
+ "ab5096b63c19b0792b60746ff416fda92a4bbed3",
[
null,
{}
@@ -605089,7 +605590,7 @@
]
],
"detached-iframe.window.js": [
- "c1effaf141b7246320883e293b58dabbc3572123",
+ "c19f50ff9317e2ecab65647a5da2b2464e295a52",
[
"webmessaging/message-channels/detached-iframe.window.html",
{
@@ -605101,6 +605602,10 @@
[
"script",
"/service-workers/service-worker/resources/test-helpers.sub.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
@@ -620606,7 +621111,7 @@
]
],
"usb-garbage-collection.https.window.js": [
- "26c99786c37ba23a7ceec7cbd514cd0103f4460b",
+ "5c153eb0a90abd3f937502eb80a4800b8687e5aa",
[
"webusb/usb-garbage-collection.https.window.html",
{
@@ -620622,6 +621127,10 @@
[
"script",
"/webusb/resources/usb-helpers.js"
+ ],
+ [
+ "script",
+ "/common/gc.js"
]
]
}
diff --git a/third_party/blink/web_tests/external/wpt/FileAPI/blob/Blob-stream.any.js b/third_party/blink/web_tests/external/wpt/FileAPI/blob/Blob-stream.any.js
index 08cca8db..8f1d5c5 100644
--- a/third_party/blink/web_tests/external/wpt/FileAPI/blob/Blob-stream.any.js
+++ b/third_party/blink/web_tests/external/wpt/FileAPI/blob/Blob-stream.any.js
@@ -1,6 +1,6 @@
// META: title=Blob Stream
// META: script=../support/Blob.js
-// META: script=../../streams/resources/test-utils.js
+// META: script=/common/gc.js
'use strict';
// Helper function that triggers garbage collection while reading a chunk
diff --git a/third_party/blink/web_tests/external/wpt/FileAPI/url/sandboxed-iframe-expected.txt b/third_party/blink/web_tests/external/wpt/FileAPI/url/sandboxed-iframe-expected.txt
index 5820516..f6c862bb 100644
--- a/third_party/blink/web_tests/external/wpt/FileAPI/url/sandboxed-iframe-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/FileAPI/url/sandboxed-iframe-expected.txt
@@ -36,7 +36,7 @@
PASS fetch with method "CUSTOM" should fail
PASS fetch should return Content-Type from Blob
FAIL Revoke blob URL after creating Request, will fetch promise_test: Unhandled rejection with value: object "TypeError: Failed to fetch"
-FAIL Revoke blob URL after creating Request, then clone Request, will fetch promise_test: Unhandled rejection with value: object "TypeError: Failed to fetch"
+FAIL Revoke blob URL after creating Request, then clone Request, will fetch promise_test: Unhandled rejection with value: object "ReferenceError: garbageCollect is not defined"
PASS Revoke blob URL after calling fetch, fetch should succeed
Harness: the test ran to completion.
diff --git a/third_party/blink/web_tests/external/wpt/FileAPI/url/url-with-fetch.any.js b/third_party/blink/web_tests/external/wpt/FileAPI/url/url-with-fetch.any.js
index 9b1699c..54e6a3da 100644
--- a/third_party/blink/web_tests/external/wpt/FileAPI/url/url-with-fetch.any.js
+++ b/third_party/blink/web_tests/external/wpt/FileAPI/url/url-with-fetch.any.js
@@ -1,21 +1,5 @@
// META: script=resources/fetch-tests.js
-
-function garbageCollect() {
- if (self.TestUtils?.gc) return TestUtils.gc();
- if (self.gc) return self.gc();
- // Present in some WebKit development environments
- if (self.GCController) return GCController.collect();
-
- for (var i = 0; i < 1000; i++) gcRec(10);
-
- function gcRec(n) {
- if (n < 1) return {};
- let temp = { i: "ab" + i + i / 100000 };
- temp += "foo";
- gcRec(n - 1);
- }
-}
-
+// META: script=/common/gc.js
function fetch_should_succeed(test, request) {
return fetch(request).then(response => response.text());
diff --git a/third_party/blink/web_tests/external/wpt/audio-output/removeTrack-after-setSinkId.https.html b/third_party/blink/web_tests/external/wpt/audio-output/removeTrack-after-setSinkId.https.html
index 3930820..97db5f81 100644
--- a/third_party/blink/web_tests/external/wpt/audio-output/removeTrack-after-setSinkId.https.html
+++ b/third_party/blink/web_tests/external/wpt/audio-output/removeTrack-after-setSinkId.https.html
@@ -7,6 +7,7 @@
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
+<script src="/common/gc.js"></script>
<script>
'use strict';
// This could be a crashtest, except that testdriver.bless() is not functional
@@ -20,7 +21,7 @@
audio.play();
await new Promise(r => t.step_timeout(r, 0));
audio.srcObject.removeTrack(audio.srcObject.getTracks()[0]);
- await TestUtils.gc();
+ await garbageCollect();
});
</script>
</html>
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/detachedIframe.https.window.js
index 2722a15..de7d0b0b 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.getDescriptor(user_description.name);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-characteristic-is-removed.https.window.js
index 7789f4b..9e48a7c 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-characteristic-is-removed.https.window.js
@@ -1,28 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptor(user_description.name),
- expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptor(user_description.name), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-descriptor-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-descriptor-get-same-object.https.window.js
index 01d4e8f30..708f67da 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-descriptor-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-descriptor-get-same-object.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,32 +8,29 @@
const test_desc = 'Calls to getDescriptor should return the same object.';
let characteristic;
-bluetooth_test(
- () => getMeasurementIntervalCharacteristic()
- .then(_ => ({characteristic} = _))
- .then(() => Promise.all([
- characteristic.getDescriptor(user_description.alias),
- characteristic.getDescriptor(user_description.name),
- characteristic.getDescriptor(user_description.uuid)
- ]))
- .then(descriptors_arrays => {
- assert_true(descriptors_arrays.length > 0)
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({characteristic} = _))
+ .then(() => Promise.all([
+ characteristic.getDescriptor(user_description.alias),
+ characteristic.getDescriptor(user_description.name),
+ characteristic.getDescriptor(user_description.uuid)
+ ]))
+ .then(descriptors_arrays => {
+ assert_true(descriptors_arrays.length > 0)
- // Convert to arrays if necessary.
- for (let i = 0; i < descriptors_arrays.length; i++) {
- descriptors_arrays[i] = [].concat(descriptors_arrays[i]);
- }
+ // Convert to arrays if necessary.
+ for (let i = 0; i < descriptors_arrays.length; i++) {
+ descriptors_arrays[i] = [].concat(descriptors_arrays[i]);
+ }
- for (let i = 1; i < descriptors_arrays.length; i++) {
- assert_equals(
- descriptors_arrays[0].length,
- descriptors_arrays[i].length);
- }
+ for (let i = 1; i < descriptors_arrays.length; i++) {
+ assert_equals(descriptors_arrays[0].length,
+ descriptors_arrays[i].length);
+ }
- let base_set = new Set(descriptors_arrays[0]);
- for (let descriptors of descriptors_arrays) {
- descriptors.forEach(
- descriptor => assert_true(base_set.has(descriptor)));
- }
- }),
- test_desc);
+ let base_set = new Set(descriptors_arrays[0]);
+ for (let descriptors of descriptors_arrays) {
+ descriptors.forEach(descriptor => assert_true(base_set.has(descriptor)));
+ }
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-service-is-removed.https.window.js
index 16b34dc0..c256050b 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptor/gen-service-is-removed.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,17 +8,17 @@
// characteristic functions.
'use strict';
const test_desc = 'Service is removed. Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let characteristic, fake_peripheral, fake_service;
-bluetooth_test(
- () => getMeasurementIntervalCharacteristic()
- .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptor(user_description.name),
- expected, 'Service got removed.')),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptor(user_description.name),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/detachedIframe.https.window.js
index 73c5f3c..45dd237 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.getDescriptors(user_description.name);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed-with-uuid.https.window.js
index b924f05..a0424c0 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed-with-uuid.https.window.js
@@ -1,28 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptors(user_description.name),
- expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptors(user_description.name), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed.https.window.js
index ae8127c8..29325c3bb 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptors(), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptors(), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-descriptor-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-descriptor-get-same-object.https.window.js
index 11dd8be..7f1001f 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-descriptor-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-descriptor-get-same-object.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,32 +8,29 @@
const test_desc = 'Calls to getDescriptors should return the same object.';
let characteristic;
-bluetooth_test(
- () => getMeasurementIntervalCharacteristic()
- .then(_ => ({characteristic} = _))
- .then(() => Promise.all([
- characteristic.getDescriptors(user_description.alias),
- characteristic.getDescriptors(user_description.name),
- characteristic.getDescriptors(user_description.uuid)
- ]))
- .then(descriptors_arrays => {
- assert_true(descriptors_arrays.length > 0)
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({characteristic} = _))
+ .then(() => Promise.all([
+ characteristic.getDescriptors(user_description.alias),
+ characteristic.getDescriptors(user_description.name),
+ characteristic.getDescriptors(user_description.uuid)
+ ]))
+ .then(descriptors_arrays => {
+ assert_true(descriptors_arrays.length > 0)
- // Convert to arrays if necessary.
- for (let i = 0; i < descriptors_arrays.length; i++) {
- descriptors_arrays[i] = [].concat(descriptors_arrays[i]);
- }
+ // Convert to arrays if necessary.
+ for (let i = 0; i < descriptors_arrays.length; i++) {
+ descriptors_arrays[i] = [].concat(descriptors_arrays[i]);
+ }
- for (let i = 1; i < descriptors_arrays.length; i++) {
- assert_equals(
- descriptors_arrays[0].length,
- descriptors_arrays[i].length);
- }
+ for (let i = 1; i < descriptors_arrays.length; i++) {
+ assert_equals(descriptors_arrays[0].length,
+ descriptors_arrays[i].length);
+ }
- let base_set = new Set(descriptors_arrays[0]);
- for (let descriptors of descriptors_arrays) {
- descriptors.forEach(
- descriptor => assert_true(base_set.has(descriptor)));
- }
- }),
- test_desc);
+ let base_set = new Set(descriptors_arrays[0]);
+ for (let descriptors of descriptors_arrays) {
+ descriptors.forEach(descriptor => assert_true(base_set.has(descriptor)));
+ }
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed-with-uuid.https.window.js
index 13e2e37..b7c4bff 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,17 +8,17 @@
// characteristic functions.
'use strict';
const test_desc = 'Service is removed. Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let characteristic, fake_peripheral, fake_service;
-bluetooth_test(
- () => getMeasurementIntervalCharacteristic()
- .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptors(user_description.uuid),
- expected, 'Service got removed.')),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptors(user_description.uuid),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed.https.window.js
index 99056cf..22dc30f 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/getDescriptors/gen-service-is-removed.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,17 +8,17 @@
// characteristic functions.
'use strict';
const test_desc = 'Service is removed. Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let characteristic, fake_peripheral, fake_service;
-bluetooth_test(
- () => getMeasurementIntervalCharacteristic()
- .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.getDescriptors(user_description.name),
- expected, 'Service got removed.')),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({characteristic, fake_peripheral, fake_service} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.getDescriptors(user_description.name),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/detachedIframe.https.window.js
index a47ce23..6e2510b 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.readValue();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/gen-characteristic-is-removed.https.window.js
index e2599a1..5bee6db 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/readValue/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.readValue(), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.readValue(), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/detachedIframe.https.window.js
index 6cb3377..f09c52d3 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.startNotifications();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/gen-characteristic-is-removed.https.window.js
index 62d0d15d..c2a23d7 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/startNotifications/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.startNotifications(), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.startNotifications(), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/stopNotifications/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/stopNotifications/detachedIframe.https.window.js
index 1f3e616..a459a5b 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/stopNotifications/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/stopNotifications/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.stopNotifications();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/detachedIframe.https.window.js
index 7647a87..eb243a3 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -18,7 +19,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await characteristic.writeValue(new DataView(new ArrayBuffer(2)));
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/gen-characteristic-is-removed.https.window.js
index 2ceeabd..5750cb82 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValue/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.writeValue(new Uint8Array(1)), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.writeValue(new Uint8Array(1)), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithResponse/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithResponse/gen-characteristic-is-removed.https.window.js
index 05749943..e202376 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithResponse/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithResponse/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.writeValueWithResponse(new Uint8Array(1)), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.writeValueWithResponse(new Uint8Array(1)), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithoutResponse/gen-characteristic-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithoutResponse/gen-characteristic-is-removed.https.window.js
index fea561c..b88246a 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithoutResponse/gen-characteristic-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/characteristic/writeValueWithoutResponse/gen-characteristic-is-removed.https.window.js
@@ -1,27 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Characteristic gets removed. Reject with InvalidStateError.';
-const expected = new DOMException(
- 'GATT Characteristic no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Characteristic no longer exists.',
+ 'InvalidStateError');
let fake_peripheral, characteristic, fake_characteristic;
-bluetooth_test(
- () =>
- getMeasurementIntervalCharacteristic()
- .then(
- _ => (
- {fake_peripheral, characteristic, fake_characteristic} = _))
- .then(() => characteristic.getDescriptor(user_description.name))
- .then(
- () => null,
- (e) => assert_unreached('Caught error unexpectedly.', e))
- .then(() => fake_characteristic.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- characteristic.writeValueWithoutResponse(new Uint8Array(1)), expected)),
+bluetooth_test(() => getMeasurementIntervalCharacteristic()
+ .then(_ => ({fake_peripheral, characteristic, fake_characteristic} = _))
+ .then(() => characteristic.getDescriptor(user_description.name))
+ .then(() => null, (e) => assert_unreached('Caught error unexpectedly.', e))
+ .then(() => fake_characteristic.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ characteristic.writeValueWithoutResponse(new Uint8Array(1)), expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/detachedIframe.https.window.js
index 17bdbf1f..47765a13 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -19,7 +20,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await descriptor.readValue();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/gen-service-is-removed.https.window.js
index 2c46b99..d6c73ba 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/readValue/gen-service-is-removed.https.window.js
@@ -1,21 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Service gets removed. Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let descriptor, fake_peripheral, fake_service;
-bluetooth_test(
- () =>
- getUserDescriptionDescriptor()
- .then(_ => ({descriptor, fake_peripheral, fake_service} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- descriptor.readValue(), expected, 'Service got removed.')),
+bluetooth_test(() => getUserDescriptionDescriptor()
+ .then(_ => ({descriptor, fake_peripheral, fake_service} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ descriptor.readValue(),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/detachedIframe.https.window.js
index c198177..aa143ca 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -19,7 +20,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await descriptor.writeValue(new ArrayBuffer(1 /* length */));
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/gen-service-is-removed.https.window.js
index c681bce..c7f6d6ef 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/descriptor/writeValue/gen-service-is-removed.https.window.js
@@ -1,21 +1,22 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Service gets removed. Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let descriptor, fake_peripheral, fake_service;
-bluetooth_test(
- () => getUserDescriptionDescriptor()
- .then(_ => ({descriptor, fake_peripheral, fake_service} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- descriptor.writeValue(new ArrayBuffer(1 /* length */)),
- expected, 'Service got removed.')),
+bluetooth_test(() => getUserDescriptionDescriptor()
+ .then(_ => ({descriptor, fake_peripheral, fake_service} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ descriptor.writeValue(new ArrayBuffer(1 /* length */)),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/device/forget/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/device/forget/detachedIframe.https.window.js
index c34a3c4..f4803542 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/device/forget/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/device/forget/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -12,7 +13,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await device.forget();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/device/gattserverdisconnected-event/disconnected_gc.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/device/gattserverdisconnected-event/disconnected_gc.https.window.js
index a2c20ea4..0cf4973 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/device/gattserverdisconnected-event/disconnected_gc.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/device/gattserverdisconnected-event/disconnected_gc.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
'use strict';
@@ -14,7 +15,7 @@
// 2. Run garbage collection.
fake_peripheral = undefined;
- await runGarbageCollection();
+ await garbageCollect();
// 3. Wait 50ms after the GC runs for the disconnection event to come back.
// There's nothing to assert other than that only valid memory is used.
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/device/watchAdvertisements/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/device/watchAdvertisements/detachedIframe.https.window.js
index 6bee729..202a8da 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/device/watchAdvertisements/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/device/watchAdvertisements/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -12,7 +13,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await device.watchAdvertisements();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/resources/bluetooth-test.js b/third_party/blink/web_tests/external/wpt/bluetooth/resources/bluetooth-test.js
index fda52206..7ad1b93 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/resources/bluetooth-test.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/resources/bluetooth-test.js
@@ -179,18 +179,6 @@
}
/**
- * Runs the garbage collection.
- * @returns {Promise<void>} Resolves when garbage collection has finished.
- */
-function runGarbageCollection() {
- // Run gc() as a promise.
- return new Promise(function(resolve, reject) {
- GCController.collect();
- step_timeout(resolve, 0);
- });
-}
-
-/**
* Helper class that can be created to check that an event has fired.
*/
class EventCatcher {
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/base_test_js.template b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/base_test_js.template
index e677f00..04c7a70 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/base_test_js.template
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/base_test_js.template
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-error.js b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-error.js
index 35e838e9..cf508a9 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-error.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-error.js
@@ -19,7 +19,7 @@
// Disconnect called to clear attributeInstanceMap and allow the
// object to get garbage collected.
device.gatt.disconnect();
- return runGarbageCollection();
+ return garbageCollect();
})
.then(() => promise),
test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-success.js b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
index 7976bbd99..bb472fc 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/server/garbage-collection-ran-during-success.js
@@ -18,7 +18,7 @@
getPrimaryServices('health_thermometer')[UUID]]),
expected);
device.gatt.disconnect();
- return runGarbageCollection();
+ return garbageCollect();
})
.then(() => promise),
test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/service/garbage-collection-ran-during-error.js b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/service/garbage-collection-ran-during-error.js
index 33c6109..7ed4aaa9 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/service/garbage-collection-ran-during-error.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/script-tests/service/garbage-collection-ran-during-error.js
@@ -19,6 +19,6 @@
// get garbage collected.
service.device.gatt.disconnect();
})
- .then(runGarbageCollection)
+ .then(garbageCollect)
.then(() => promise),
test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/detachedIframe.https.window.js
index 1acd156..2332cef7 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -12,7 +13,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await device.gatt.connect();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/garbage-collection-ran-during-success.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/garbage-collection-ran-during-success.https.window.js
index bae9ff78..2d2211de 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/garbage-collection-ran-during-success.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/connect/garbage-collection-ran-during-success.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
'use strict';
@@ -14,5 +15,5 @@
await fake_peripheral.setNextGATTConnectionResponse({code: HCI_SUCCESS});
connectPromise = device.gatt.connect();
}
- await Promise.all([connectPromise, runGarbageCollection()]);
+ await Promise.all([connectPromise, garbageCollect()]);
}, test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detach-gc.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detach-gc.https.window.js
index 4951fd0..b934b37 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detach-gc.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detach-gc.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
'use strict';
@@ -27,7 +28,7 @@
window. => {
assert_equals(messageEvent.data, 'Connected');
iframe.remove();
- runGarbageCollection().then(resolve);
+ garbageCollect().then(resolve);
}
})
}, test_desc)
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detachedIframe.https.window.js
index 7a8f2aa..04e0ca011 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -13,7 +14,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await device.gatt.disconnect();
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/gc-detach.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/gc-detach.https.window.js
index 6f9055a..1c062a7 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/gc-detach.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/disconnect/gc-detach.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
'use strict';
@@ -26,7 +27,7 @@
});
window. => {
assert_equals(messageEvent.data, 'Connected');
- runGarbageCollection().then(() => {
+ garbageCollect().then(() => {
iframe.remove();
resolve();
});
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window-expected.txt
new file mode 100644
index 0000000..7c6f6f8
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL disconnect() called before getPrimaryService. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryService' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.js
index 6f4f076..631545a 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-before.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,21 +8,19 @@
const test_desc = 'disconnect() called before getPrimaryService. ' +
'Reject with NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryService' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.disconnect())
- .then(
- () => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'),
- expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.disconnect())
+ .then(() => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.https.window.js
index 24184ea..bcf1966 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,16 +9,17 @@
'call that fails. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.', 'NetworkError');
let device;
-bluetooth_test(
- () =>
- getEmptyHealthThermometerDevice().then(_ => ({device} = _)).then(() => {
- let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'), expected)
- device.gatt.disconnect();
- return promise;
- }),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(_ => ({device} = _))
+ .then(() => {
+ let promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected)
+ device.gatt.disconnect();
+ return promise;
+ }),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.https.window.js
index 8a8714b..0d2fc104 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-called-during-success.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,17 +9,18 @@
'succeeds. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.',
+ 'NetworkError');
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- }).then(({device}) => {
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => {
let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'), expected);
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected);
device.gatt.disconnect();
return promise;
- }),
- test_desc);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-discovery-timeout.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-discovery-timeout.https.window.js
index d060e32b..03b0c9d0 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-discovery-timeout.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-discovery-timeout.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -32,9 +33,7 @@
// ... " prefix when disconnected state is reflected on the renderer
// side). The point of the test is no matter how race between them, the
// promise will be rejected as opposed to get stuck.
- promise_rejects_dom(
- t, 'NetworkError',
- device.gatt.getPrimaryService('health_thermometer')),
+ promise_rejects_dom(t, 'NetworkError', device.gatt.getPrimaryService('health_thermometer')),
]);
},
test_desc, '',
@@ -44,3 +43,4 @@
// simulateGATTDisconnection happens first. As a result explicitly skip
// all response consumed validation at the end of the test.
/*validate_response_consumed=*/ false);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window-expected.txt
new file mode 100644
index 0000000..0679c294
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Calls on services after we disconnect and connect again. Should reject with InvalidStateError. assert_equals: Unexpected Error Message: expected "Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting." but got "Failed to execute 'getCharacteristic' on 'BluetoothRemoteGATTService': Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window.js
index 52699ee0..56468b2 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnect-invalidates-objects.https.window.js
@@ -1,46 +1,43 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc = 'Calls on services after we disconnect and connect again. ' +
- 'Should reject with InvalidStateError.';
+const test_desc = 'Calls on services after we disconnect and connect again. '+
+ 'Should reject with InvalidStateError.';
let device, services;
-function createDOMException(func, uuid) {
- return new DOMException(
- `Failed to execute '${func}' on 'BluetoothRemoteGATTService': ` +
- `Service with UUID ${uuid} is no longer valid. Remember to retrieve ` +
- `the service again after reconnecting.`,
- 'InvalidStateError');
-}
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryService('health_thermometer'))
+ // Convert to array if necessary.
+ .then(s => services = [].concat(s))
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => {
+ let promises = Promise.resolve();
+ for (let service of services) {
+ let error = new DOMException(
+ `Service with UUID ${service.uuid} is no longer valid. Remember ` +
+ `to retrieve the service again after reconnecting.`,
+ 'InvalidStateError');
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristic('measurement_interval'),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics(),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics('measurement_interval'),
+ error));
+ }
+ return promises;
+ }), test_desc);
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryService('health_thermometer'))
- // Convert to array if necessary.
- .then(s => services = [].concat(s))
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => {
- let promises = Promise.resolve();
- for (let service of services) {
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristic('measurement_interval'),
- createDOMException('getCharacteristic' , service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics(),
- createDOMException('getCharacteristics' , service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics('measurement_interval'),
- createDOMException('getCharacteristics' , service.uuid)));
- }
- return promises;
- }),
- test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window-expected.txt
new file mode 100644
index 0000000..9e3396e
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL getPrimaryService called before connecting. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryService' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.js
index e0a31f6..741b2db 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-disconnected-device.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,18 +8,16 @@
const test_desc = 'getPrimaryService called before connecting. Reject with ' +
'NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryService' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
-bluetooth_test(
- () => getDiscoveredHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'),
- expected)),
+bluetooth_test(() => getDiscoveredHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.https.window.js
index 52875b18..e2f5c8763 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-no-permission-absent-service.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,21 +9,21 @@
'Reject with SecurityError even if services have been discovered already.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service ' +
- 'UUID to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
+ 'UUID to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
'SecurityError');
let device;
-bluetooth_test(
- () => getHealthThermometerDeviceWithServicesDiscovered(
- {filters: [{services: ['health_thermometer']}]})
- .then(_ => ({device} = _))
- .then(() => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.alias), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.name), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.uuid), expected)
- ])),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(_ => ({device} = _))
+ .then(() => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.https.window.js
index 56362f2..8e9166b4 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-discovery-complete-service-not-found.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,16 +8,13 @@
const test_desc = 'Request for absent service. Must reject with ' +
'NotFoundError even when the services have previously been discovered.';
-bluetooth_test(
- () => getHealthThermometerDeviceWithServicesDiscovered({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['glucose']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('glucose'),
- new DOMException(
- `No Services matching UUID ${
- glucose.uuid} found in Device.`,
- 'NotFoundError'))),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['glucose']})
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('glucose'),
+ new DOMException(
+ `No Services matching UUID ${glucose.uuid} found in Device.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.https.window.js
index 06d6a31..df182fe 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,20 +9,20 @@
'call that failed. Should not crash.'
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect first ' +
- 'with `device.gatt.connect`.',
+ 'with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getEmptyHealthThermometerDevice()
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'),
- expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected);
+ // Disconnect called to clear attributeInstanceMap and allow the
+ // object to get garbage collected.
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.https.window.js
index cd4a0d3..8e278af 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-garbage-collection-ran-during-success.https.window.js
@@ -1,27 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Garbage Collection ran during a getPrimaryService call that ' +
+const test_desc = 'Garbage Collection ran during a getPrimaryService call that ' +
'succeeds. Should not crash.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('health_thermometer'),
- expected);
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('health_thermometer'),
+ expected);
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.https.window.js
index 6cd6073..d4557f6 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-different-service-after-reconnection.https.window.js
@@ -1,43 +1,39 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Calls to getPrimaryService after a disconnection should return ' +
+const test_desc = 'Calls to getPrimaryService after a disconnection should return ' +
'a different object.';
let device, services_first_connection, services_second_connection;
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryService('health_thermometer'))
- .then(services => services_first_connection = services)
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => device.gatt.getPrimaryService('health_thermometer'))
- .then(services => services_second_connection = services)
- .then(() => {
- // Convert to arrays if necessary.
- services_first_connection =
- [].concat(services_first_connection);
- services_second_connection =
- [].concat(services_second_connection);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryService('health_thermometer'))
+ .then(services => services_first_connection = services)
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => device.gatt.getPrimaryService('health_thermometer'))
+ .then(services => services_second_connection = services)
+ .then(() => {
+ // Convert to arrays if necessary.
+ services_first_connection = [].concat(services_first_connection);
+ services_second_connection = [].concat(services_second_connection);
- assert_equals(
- services_first_connection.length,
- services_second_connection.length);
+ assert_equals(services_first_connection.length,
+ services_second_connection.length);
- let first_connection_set = new Set(services_first_connection);
- let second_connection_set = new Set(services_second_connection);
+ let first_connection_set = new Set(services_first_connection);
+ let second_connection_set = new Set(services_second_connection);
- // The two sets should be disjoint.
- let common_services = services_first_connection.filter(
- val => second_connection_set.has(val));
- assert_equals(common_services.length, 0);
- }),
- test_desc);
+ // The two sets should be disjoint.
+ let common_services = services_first_connection.filter(
+ val => second_connection_set.has(val));
+ assert_equals(common_services.length, 0);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-same-object.https.window.js
index f05adce2..b43cefb 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-get-same-object.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,34 +8,30 @@
const test_desc = 'Calls to getPrimaryService should return the same object.';
let device;
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(({device}) => Promise.all([
- device.gatt.getPrimaryService('health_thermometer'),
- device.gatt.getPrimaryService('health_thermometer')
- ]))
- .then(([services_first_call, services_second_call]) => {
- // Convert to arrays if necessary.
- services_first_call = [].concat(services_first_call);
- services_second_call = [].concat(services_second_call);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']})
+ .then(({device}) => Promise.all([
+ device.gatt.getPrimaryService('health_thermometer'),
+ device.gatt.getPrimaryService('health_thermometer')]))
+ .then(([services_first_call, services_second_call]) => {
+ // Convert to arrays if necessary.
+ services_first_call = [].concat(services_first_call);
+ services_second_call = [].concat(services_second_call);
- assert_equals(
- services_first_call.length, services_second_call.length);
+ assert_equals(services_first_call.length, services_second_call.length);
- let first_call_set = new Set(services_first_call);
- assert_equals(services_first_call.length, first_call_set.size);
- let second_call_set = new Set(services_second_call);
- assert_equals(
- services_second_call.length, second_call_set.size);
+ let first_call_set = new Set(services_first_call);
+ assert_equals(services_first_call.length, first_call_set.size);
+ let second_call_set = new Set(services_second_call);
+ assert_equals(services_second_call.length, second_call_set.size);
- services_first_call.forEach(
- service => {assert_true(second_call_set.has(service))});
+ services_first_call.forEach(service => {
+ assert_true(second_call_set.has(service))
+ });
- services_second_call.forEach(service => {
- assert_true(first_call_set.has(service));
- });
- }),
- test_desc);
+ services_second_call.forEach(service => {
+ assert_true(first_call_set.has(service));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-invalid-service-name.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-invalid-service-name.https.window.js
index b30e4cc..cf4ab6c 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-invalid-service-name.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-invalid-service-name.https.window.js
@@ -1,24 +1,26 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Wrong Service name. Reject with TypeError.';
const expected = new DOMException(
- 'Failed to execute \'getPrimaryService\' on ' +
- '\'BluetoothRemoteGATTServer\': Invalid Service name: ' +
- '\'wrong_name\'. It must be a valid UUID alias (e.g. 0x1234), ' +
- 'UUID (lowercase hex characters e.g. ' +
- '\'00001234-0000-1000-8000-00805f9b34fb\'), ' +
- 'or recognized standard name from ' +
- 'https://www.bluetooth.com/specifications/gatt/services' +
- ' e.g. \'alert_notification\'.',
+ "Failed to execute 'getPrimaryService' on " +
+ "'BluetoothRemoteGATTServer': Invalid Service name: " +
+ "'wrong_name'. It must be a valid UUID alias (e.g. 0x1234), " +
+ "UUID (lowercase hex characters e.g. " +
+ "'00001234-0000-1000-8000-00805f9b34fb'), " +
+ "or recognized standard name from " +
+ "https://www.bluetooth.com/specifications/gatt/services" +
+ " e.g. 'alert_notification'.",
'TypeError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice().then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('wrong_name'), expected,
- 'Wrong Service name passed.')),
+bluetooth_test(() => getConnectedHealthThermometerDevice()
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('wrong_name'),
+ expected,
+ 'Wrong Service name passed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-absent-service.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-absent-service.https.window.js
index 6df5822..3466ded 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-absent-service.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-absent-service.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,19 +9,19 @@
'Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service UUID ' +
- 'to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
+ 'to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
'SecurityError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.alias), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.name), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(glucose.uuid), expected)
- ])),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(glucose.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-for-any-service.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-for-any-service.https.window.js
index d6ae0b6d..6576ef20 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-for-any-service.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-for-any-service.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,13 +9,13 @@
'any service. Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access any service. Tip: Add the service ' +
- 'UUID to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
- 'SecurityError');
+ 'UUID to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
+ 'SecurityError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({acceptAllDevices: true})
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('heart_rate'), expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({acceptAllDevices: true})
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('heart_rate'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-present-service.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-present-service.https.window.js
index e11ed9e..3d0b460 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-present-service.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-no-permission-present-service.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,20 +9,18 @@
'Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service UUID ' +
- 'to \'optionalServices\' in requestDevice() options. https://goo.gl/HxfxSQ',
+ 'to \'optionalServices\' in requestDevice() options. https://goo.gl/HxfxSQ',
'SecurityError');
-bluetooth_test(
- () =>
- getConnectedHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(generic_access.alias),
- expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(generic_access.name), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryService(generic_access.uuid), expected)
- ])),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(generic_access.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(generic_access.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService(generic_access.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-service-not-found.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-service-not-found.https.window.js
index 0b8419a..6e0d2c4 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-service-not-found.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryService/gen-service-not-found.https.window.js
@@ -1,21 +1,20 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Request for absent service. Reject with NotFoundError.';
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['glucose']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryService('glucose'),
- new DOMException(
- `No Services matching UUID ${
- glucose.uuid} found in Device.`,
- 'NotFoundError'))),
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['glucose']
+ })
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryService('glucose'),
+ new DOMException(
+ `No Services matching UUID ${glucose.uuid} found in Device.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window-expected.txt
new file mode 100644
index 0000000..59a80a0
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL disconnect() called before getPrimaryServices. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.js
index ea0c161..21b56137 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,21 +8,19 @@
const test_desc = 'disconnect() called before getPrimaryServices. ' +
'Reject with NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.disconnect())
- .then(
- () => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'),
- expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.disconnect())
+ .then(() => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window-expected.txt
new file mode 100644
index 0000000..59a80a0
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL disconnect() called before getPrimaryServices. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window.js
index 04dc610..8e5fea8 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-before.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,20 +8,19 @@
const test_desc = 'disconnect() called before getPrimaryServices. ' +
'Reject with NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.disconnect())
- .then(
- () => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.disconnect())
+ .then(() => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.https.window.js
index 3223049..5c28716 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,16 +9,17 @@
'call that fails. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.', 'NetworkError');
let device;
-bluetooth_test(
- () =>
- getEmptyHealthThermometerDevice().then(_ => ({device} = _)).then(() => {
- let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'), expected)
- device.gatt.disconnect();
- return promise;
- }),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(_ => ({device} = _))
+ .then(() => {
+ let promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected)
+ device.gatt.disconnect();
+ return promise;
+ }),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.https.window.js
index 646db21..ddc3124 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,16 +9,17 @@
'call that fails. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.', 'NetworkError');
let device;
-bluetooth_test(
- () =>
- getEmptyHealthThermometerDevice().then(_ => ({device} = _)).then(() => {
- let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected)
- device.gatt.disconnect();
- return promise;
- }),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(_ => ({device} = _))
+ .then(() => {
+ let promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected)
+ device.gatt.disconnect();
+ return promise;
+ }),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.https.window.js
index 472eb99..13e3806 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,17 +9,18 @@
'succeeds. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.',
+ 'NetworkError');
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- }).then(({device}) => {
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => {
let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'), expected);
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected);
device.gatt.disconnect();
return promise;
- }),
- test_desc);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.https.window.js
index 86d5688..d6b3193 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-called-during-success.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,17 +9,18 @@
'succeeds. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
- 'first with `device.gatt.connect`.',
- 'NetworkError');
+ 'first with `device.gatt.connect`.',
+ 'NetworkError');
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- }).then(({device}) => {
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => {
let promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected);
+ device.gatt.getPrimaryServices(),
+ expected);
device.gatt.disconnect();
return promise;
- }),
- test_desc);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout-with-uuid.https.window.js
index 0eaf5d7..77f7bc8 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -32,9 +33,7 @@
// ... " prefix when disconnected state is reflected on the renderer
// side). The point of the test is no matter how race between them, the
// promise will be rejected as opposed to get stuck.
- promise_rejects_dom(
- t, 'NetworkError',
- device.gatt.getPrimaryServices('health_thermometer')),
+ promise_rejects_dom(t, 'NetworkError', device.gatt.getPrimaryServices('health_thermometer')),
]);
},
test_desc, '',
@@ -44,3 +43,4 @@
// simulateGATTDisconnection happens first. As a result explicitly skip
// all response consumed validation at the end of the test.
/*validate_response_consumed=*/ false);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout.https.window.js
index c95b13a4..ea55b7b 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-discovery-timeout.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -32,8 +33,7 @@
// ... " prefix when disconnected state is reflected on the renderer
// side). The point of the test is no matter how race between them, the
// promise will be rejected as opposed to get stuck.
- promise_rejects_dom(
- t, 'NetworkError', device.gatt.getPrimaryServices()),
+ promise_rejects_dom(t, 'NetworkError', device.gatt.getPrimaryServices()),
]);
},
test_desc, '',
@@ -43,3 +43,4 @@
// simulateGATTDisconnection happens first. As a result explicitly skip
// all response consumed validation at the end of the test.
/*validate_response_consumed=*/ false);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window-expected.txt
new file mode 100644
index 0000000..0679c294
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Calls on services after we disconnect and connect again. Should reject with InvalidStateError. assert_equals: Unexpected Error Message: expected "Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting." but got "Failed to execute 'getCharacteristic' on 'BluetoothRemoteGATTService': Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window.js
index 0a5e073..8cdb83e3 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects-with-uuid.https.window.js
@@ -1,46 +1,43 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc = 'Calls on services after we disconnect and connect again. ' +
- 'Should reject with InvalidStateError.';
+const test_desc = 'Calls on services after we disconnect and connect again. '+
+ 'Should reject with InvalidStateError.';
let device, services;
-function createDOMException(func, uuid) {
- return new DOMException(
- `Failed to execute '${func}' on 'BluetoothRemoteGATTService': ` +
- `Service with UUID ${uuid} is no longer valid. Remember to retrieve ` +
- `the service again after reconnecting.`,
- 'InvalidStateError');
-}
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryServices('health_thermometer'))
+ // Convert to array if necessary.
+ .then(s => services = [].concat(s))
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => {
+ let promises = Promise.resolve();
+ for (let service of services) {
+ let error = new DOMException(
+ `Service with UUID ${service.uuid} is no longer valid. Remember ` +
+ `to retrieve the service again after reconnecting.`,
+ 'InvalidStateError');
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristic('measurement_interval'),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics(),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics('measurement_interval'),
+ error));
+ }
+ return promises;
+ }), test_desc);
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryServices('health_thermometer'))
- // Convert to array if necessary.
- .then(s => services = [].concat(s))
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => {
- let promises = Promise.resolve();
- for (let service of services) {
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristic('measurement_interval'),
- createDOMException('getCharacteristic', service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics(),
- createDOMException('getCharacteristics', service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics('measurement_interval'),
- createDOMException('getCharacteristics', service.uuid)));
- }
- return promises;
- }),
- test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window-expected.txt
new file mode 100644
index 0000000..0679c294
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Calls on services after we disconnect and connect again. Should reject with InvalidStateError. assert_equals: Unexpected Error Message: expected "Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting." but got "Failed to execute 'getCharacteristic' on 'BluetoothRemoteGATTService': Service with UUID 00001809-0000-1000-8000-00805f9b34fb is no longer valid. Remember to retrieve the service again after reconnecting."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window.js
index e87339d..9fd536f 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnect-invalidates-objects.https.window.js
@@ -1,46 +1,43 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc = 'Calls on services after we disconnect and connect again. ' +
- 'Should reject with InvalidStateError.';
+const test_desc = 'Calls on services after we disconnect and connect again. '+
+ 'Should reject with InvalidStateError.';
let device, services;
-function createDOMException(func, uuid) {
- return new DOMException(
- `Failed to execute '${func}' on 'BluetoothRemoteGATTService': ` +
- `Service with UUID ${uuid} is no longer valid. Remember to retrieve ` +
- `the service again after reconnecting.`,
- 'InvalidStateError');
-}
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryServices())
+ // Convert to array if necessary.
+ .then(s => services = [].concat(s))
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => {
+ let promises = Promise.resolve();
+ for (let service of services) {
+ let error = new DOMException(
+ `Service with UUID ${service.uuid} is no longer valid. Remember ` +
+ `to retrieve the service again after reconnecting.`,
+ 'InvalidStateError');
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristic('measurement_interval'),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics(),
+ error));
+ promises = promises.then(() =>
+ assert_promise_rejects_with_message(
+ service.getCharacteristics('measurement_interval'),
+ error));
+ }
+ return promises;
+ }), test_desc);
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryServices())
- // Convert to array if necessary.
- .then(s => services = [].concat(s))
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => {
- let promises = Promise.resolve();
- for (let service of services) {
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristic('measurement_interval'),
- createDOMException('getCharacteristic', service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics(),
- createDOMException('getCharacteristics', service.uuid)));
- promises = promises.then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics('measurement_interval'),
- createDOMException('getCharacteristics', service.uuid)));
- }
- return promises;
- }),
- test_desc);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window-expected.txt
new file mode 100644
index 0000000..92f2b12
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL getPrimaryServices called before connecting. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window.js
index bb440a7..e0393d5 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,18 +8,16 @@
const test_desc = 'getPrimaryServices called before connecting. Reject with ' +
'NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
-bluetooth_test(
- () => getDiscoveredHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'),
- expected)),
+bluetooth_test(() => getDiscoveredHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window-expected.txt b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window-expected.txt
new file mode 100644
index 0000000..92f2b12
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL getPrimaryServices called before connecting. Reject with NetworkError. assert_equals: Unexpected Error Message: expected "GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`." but got "Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': GATT Server is disconnected. Cannot retrieve services. (Re)connect first with `device.gatt.connect`."
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window.js
index 26f3269..87d74c6 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-disconnected-device.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,17 +8,16 @@
const test_desc = 'getPrimaryServices called before connecting. Reject with ' +
'NetworkError.';
const expected = new DOMException(
- `Failed to execute 'getPrimaryServices' on 'BluetoothRemoteGATTServer': ` +
- `GATT Server is disconnected. Cannot retrieve services. (Re)connect ` +
- `first with \`device.gatt.connect\`.`,
+ 'GATT Server is disconnected. Cannot retrieve services. (Re)connect ' +
+ 'first with `device.gatt.connect`.',
'NetworkError');
-bluetooth_test(
- () => getDiscoveredHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected)),
+bluetooth_test(() => getDiscoveredHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.js
index b52dac0..6e179dc 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-no-permission-absent-service-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,21 +9,21 @@
'Reject with SecurityError even if services have been discovered already.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service ' +
- 'UUID to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
+ 'UUID to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
'SecurityError');
let device;
-bluetooth_test(
- () => getHealthThermometerDeviceWithServicesDiscovered(
- {filters: [{services: ['health_thermometer']}]})
- .then(_ => ({device} = _))
- .then(() => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.alias), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.name), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.uuid), expected)
- ])),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(_ => ({device} = _))
+ .then(() => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.https.window.js
index f944f72..66cfb49 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-discovery-complete-service-not-found-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,16 +8,13 @@
const test_desc = 'Request for absent service. Must reject with ' +
'NotFoundError even when the services have previously been discovered.';
-bluetooth_test(
- () => getHealthThermometerDeviceWithServicesDiscovered({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['glucose']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('glucose'),
- new DOMException(
- `No Services matching UUID ${
- glucose.uuid} found in Device.`,
- 'NotFoundError'))),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['glucose']})
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('glucose'),
+ new DOMException(
+ `No Services matching UUID ${glucose.uuid} found in Device.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
index 455bd47a..a235cf5 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,20 +9,20 @@
'call that failed. Should not crash.'
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect first ' +
- 'with `device.gatt.connect`.',
+ 'with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getEmptyHealthThermometerDevice()
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'),
- expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected);
+ // Disconnect called to clear attributeInstanceMap and allow the
+ // object to get garbage collected.
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.https.window.js
index 2e832d8..f174d4ae 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,19 +9,20 @@
'call that failed. Should not crash.'
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. (Re)connect first ' +
- 'with `device.gatt.connect`.',
+ 'with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getEmptyHealthThermometerDevice()
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getEmptyHealthThermometerDevice()
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected);
+ // Disconnect called to clear attributeInstanceMap and allow the
+ // object to get garbage collected.
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.https.window.js
index 4555242..cf5dfb2 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success-with-uuid.https.window.js
@@ -1,27 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Garbage Collection ran during a getPrimaryServices call that ' +
+const test_desc = 'Garbage Collection ran during a getPrimaryServices call that ' +
'succeeds. Should not crash.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('health_thermometer'),
- expected);
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('health_thermometer'),
+ expected);
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.https.window.js
index 0eb78ba..f1c080a9 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-garbage-collection-ran-during-success.https.window.js
@@ -1,26 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Garbage Collection ran during a getPrimaryServices call that ' +
+const test_desc = 'Garbage Collection ran during a getPrimaryServices call that ' +
'succeeds. Should not crash.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve services. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => {
- promise = assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected);
- device.gatt.disconnect();
- return runGarbageCollection();
- })
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => {
+ promise = assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected);
+ device.gatt.disconnect();
+ return garbageCollect();
+ })
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.https.window.js
index 11671cb..2e40d58 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection-with-uuid.https.window.js
@@ -1,43 +1,39 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Calls to getPrimaryServices after a disconnection should return ' +
+const test_desc = 'Calls to getPrimaryServices after a disconnection should return ' +
'a different object.';
let device, services_first_connection, services_second_connection;
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryServices('health_thermometer'))
- .then(services => services_first_connection = services)
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => device.gatt.getPrimaryServices('health_thermometer'))
- .then(services => services_second_connection = services)
- .then(() => {
- // Convert to arrays if necessary.
- services_first_connection =
- [].concat(services_first_connection);
- services_second_connection =
- [].concat(services_second_connection);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryServices('health_thermometer'))
+ .then(services => services_first_connection = services)
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => device.gatt.getPrimaryServices('health_thermometer'))
+ .then(services => services_second_connection = services)
+ .then(() => {
+ // Convert to arrays if necessary.
+ services_first_connection = [].concat(services_first_connection);
+ services_second_connection = [].concat(services_second_connection);
- assert_equals(
- services_first_connection.length,
- services_second_connection.length);
+ assert_equals(services_first_connection.length,
+ services_second_connection.length);
- let first_connection_set = new Set(services_first_connection);
- let second_connection_set = new Set(services_second_connection);
+ let first_connection_set = new Set(services_first_connection);
+ let second_connection_set = new Set(services_second_connection);
- // The two sets should be disjoint.
- let common_services = services_first_connection.filter(
- val => second_connection_set.has(val));
- assert_equals(common_services.length, 0);
- }),
- test_desc);
+ // The two sets should be disjoint.
+ let common_services = services_first_connection.filter(
+ val => second_connection_set.has(val));
+ assert_equals(common_services.length, 0);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.https.window.js
index efda6cf..ee1fc97 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-different-service-after-reconnection.https.window.js
@@ -1,43 +1,39 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
-const test_desc =
- 'Calls to getPrimaryServices after a disconnection should return ' +
+const test_desc = 'Calls to getPrimaryServices after a disconnection should return ' +
'a different object.';
let device, services_first_connection, services_second_connection;
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryServices())
- .then(services => services_first_connection = services)
- .then(() => device.gatt.disconnect())
- .then(() => device.gatt.connect())
- .then(() => device.gatt.getPrimaryServices())
- .then(services => services_second_connection = services)
- .then(() => {
- // Convert to arrays if necessary.
- services_first_connection =
- [].concat(services_first_connection);
- services_second_connection =
- [].concat(services_second_connection);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']
+ })
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryServices())
+ .then(services => services_first_connection = services)
+ .then(() => device.gatt.disconnect())
+ .then(() => device.gatt.connect())
+ .then(() => device.gatt.getPrimaryServices())
+ .then(services => services_second_connection = services)
+ .then(() => {
+ // Convert to arrays if necessary.
+ services_first_connection = [].concat(services_first_connection);
+ services_second_connection = [].concat(services_second_connection);
- assert_equals(
- services_first_connection.length,
- services_second_connection.length);
+ assert_equals(services_first_connection.length,
+ services_second_connection.length);
- let first_connection_set = new Set(services_first_connection);
- let second_connection_set = new Set(services_second_connection);
+ let first_connection_set = new Set(services_first_connection);
+ let second_connection_set = new Set(services_second_connection);
- // The two sets should be disjoint.
- let common_services = services_first_connection.filter(
- val => second_connection_set.has(val));
- assert_equals(common_services.length, 0);
- }),
- test_desc);
+ // The two sets should be disjoint.
+ let common_services = services_first_connection.filter(
+ val => second_connection_set.has(val));
+ assert_equals(common_services.length, 0);
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.https.window.js
index d84ca0aa..b589056a 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,34 +8,30 @@
const test_desc = 'Calls to getPrimaryServices should return the same object.';
let device;
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(({device}) => Promise.all([
- device.gatt.getPrimaryServices('health_thermometer'),
- device.gatt.getPrimaryServices('health_thermometer')
- ]))
- .then(([services_first_call, services_second_call]) => {
- // Convert to arrays if necessary.
- services_first_call = [].concat(services_first_call);
- services_second_call = [].concat(services_second_call);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']})
+ .then(({device}) => Promise.all([
+ device.gatt.getPrimaryServices('health_thermometer'),
+ device.gatt.getPrimaryServices('health_thermometer')]))
+ .then(([services_first_call, services_second_call]) => {
+ // Convert to arrays if necessary.
+ services_first_call = [].concat(services_first_call);
+ services_second_call = [].concat(services_second_call);
- assert_equals(
- services_first_call.length, services_second_call.length);
+ assert_equals(services_first_call.length, services_second_call.length);
- let first_call_set = new Set(services_first_call);
- assert_equals(services_first_call.length, first_call_set.size);
- let second_call_set = new Set(services_second_call);
- assert_equals(
- services_second_call.length, second_call_set.size);
+ let first_call_set = new Set(services_first_call);
+ assert_equals(services_first_call.length, first_call_set.size);
+ let second_call_set = new Set(services_second_call);
+ assert_equals(services_second_call.length, second_call_set.size);
- services_first_call.forEach(
- service => {assert_true(second_call_set.has(service))});
+ services_first_call.forEach(service => {
+ assert_true(second_call_set.has(service))
+ });
- services_second_call.forEach(service => {
- assert_true(first_call_set.has(service));
- });
- }),
- test_desc);
+ services_second_call.forEach(service => {
+ assert_true(first_call_set.has(service));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object.https.window.js
index 3f876f5..63739ad 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-get-same-object.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,33 +8,30 @@
const test_desc = 'Calls to getPrimaryServices should return the same object.';
let device;
-bluetooth_test(
- () =>
- getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['generic_access']
- })
- .then(({device}) => Promise.all([
- device.gatt.getPrimaryServices(), device.gatt.getPrimaryServices()
- ]))
- .then(([services_first_call, services_second_call]) => {
- // Convert to arrays if necessary.
- services_first_call = [].concat(services_first_call);
- services_second_call = [].concat(services_second_call);
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['generic_access']})
+ .then(({device}) => Promise.all([
+ device.gatt.getPrimaryServices(),
+ device.gatt.getPrimaryServices()]))
+ .then(([services_first_call, services_second_call]) => {
+ // Convert to arrays if necessary.
+ services_first_call = [].concat(services_first_call);
+ services_second_call = [].concat(services_second_call);
- assert_equals(
- services_first_call.length, services_second_call.length);
+ assert_equals(services_first_call.length, services_second_call.length);
- let first_call_set = new Set(services_first_call);
- assert_equals(services_first_call.length, first_call_set.size);
- let second_call_set = new Set(services_second_call);
- assert_equals(services_second_call.length, second_call_set.size);
+ let first_call_set = new Set(services_first_call);
+ assert_equals(services_first_call.length, first_call_set.size);
+ let second_call_set = new Set(services_second_call);
+ assert_equals(services_second_call.length, second_call_set.size);
- services_first_call.forEach(
- service => {assert_true(second_call_set.has(service))});
+ services_first_call.forEach(service => {
+ assert_true(second_call_set.has(service))
+ });
- services_second_call.forEach(service => {
- assert_true(first_call_set.has(service));
- });
- }),
- test_desc);
+ services_second_call.forEach(service => {
+ assert_true(first_call_set.has(service));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-invalid-service-name.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-invalid-service-name.https.window.js
index d26c0aa..a9b1262 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-invalid-service-name.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-invalid-service-name.https.window.js
@@ -1,24 +1,26 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Wrong Service name. Reject with TypeError.';
const expected = new DOMException(
- 'Failed to execute \'getPrimaryServices\' on ' +
- '\'BluetoothRemoteGATTServer\': Invalid Service name: ' +
- '\'wrong_name\'. It must be a valid UUID alias (e.g. 0x1234), ' +
- 'UUID (lowercase hex characters e.g. ' +
- '\'00001234-0000-1000-8000-00805f9b34fb\'), ' +
- 'or recognized standard name from ' +
- 'https://www.bluetooth.com/specifications/gatt/services' +
- ' e.g. \'alert_notification\'.',
+ "Failed to execute 'getPrimaryServices' on " +
+ "'BluetoothRemoteGATTServer': Invalid Service name: " +
+ "'wrong_name'. It must be a valid UUID alias (e.g. 0x1234), " +
+ "UUID (lowercase hex characters e.g. " +
+ "'00001234-0000-1000-8000-00805f9b34fb'), " +
+ "or recognized standard name from " +
+ "https://www.bluetooth.com/specifications/gatt/services" +
+ " e.g. 'alert_notification'.",
'TypeError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice().then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('wrong_name'), expected,
- 'Wrong Service name passed.')),
+bluetooth_test(() => getConnectedHealthThermometerDevice()
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('wrong_name'),
+ expected,
+ 'Wrong Service name passed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.https.window.js
index 4aefb9955..27ad9f0 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-absent-service-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,19 +9,19 @@
'Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service UUID ' +
- 'to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
+ 'to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
'SecurityError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.alias), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.name), expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(glucose.uuid), expected)
- ])),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(glucose.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service-with-uuid.https.window.js
index a5006e6d..d5f06c2 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,13 +9,13 @@
'any service. Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access any service. Tip: Add the service ' +
- 'UUID to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
- 'SecurityError');
+ 'UUID to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
+ 'SecurityError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({acceptAllDevices: true})
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('heart_rate'), expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({acceptAllDevices: true})
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('heart_rate'),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service.https.window.js
index e7d20bd..8aa730d 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-for-any-service.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,13 +9,13 @@
'any service. Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access any service. Tip: Add the service ' +
- 'UUID to \'optionalServices\' in requestDevice() options. ' +
- 'https://goo.gl/HxfxSQ',
- 'SecurityError');
+ 'UUID to \'optionalServices\' in requestDevice() options. ' +
+ 'https://goo.gl/HxfxSQ',
+ 'SecurityError');
-bluetooth_test(
- () => getConnectedHealthThermometerDevice({acceptAllDevices: true})
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(), expected)),
+bluetooth_test(() => getConnectedHealthThermometerDevice({acceptAllDevices: true})
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(),
+ expected)),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.https.window.js
index 8f4811f..a2047a0 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-no-permission-present-service-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,21 +9,18 @@
'Reject with SecurityError.';
const expected = new DOMException(
'Origin is not allowed to access the service. Tip: Add the service UUID ' +
- 'to \'optionalServices\' in requestDevice() options. https://goo.gl/HxfxSQ',
+ 'to \'optionalServices\' in requestDevice() options. https://goo.gl/HxfxSQ',
'SecurityError');
-bluetooth_test(
- () =>
- getConnectedHealthThermometerDevice(
- {filters: [{services: ['health_thermometer']}]})
- .then(({device}) => Promise.all([
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(generic_access.alias),
- expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(generic_access.name),
- expected),
- assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices(generic_access.uuid), expected)
- ])),
+bluetooth_test(() => getConnectedHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}]
+ })
+ .then(({device}) => Promise.all([
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(generic_access.alias), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(generic_access.name), expected),
+ assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices(generic_access.uuid), expected)])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.https.window.js
index 8bf9d8c..a2db1ed 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/server/getPrimaryServices/gen-service-not-found-with-uuid.https.window.js
@@ -1,21 +1,20 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Request for absent service. Reject with NotFoundError.';
-bluetooth_test(
- () => getHealthThermometerDevice({
- filters: [{services: ['health_thermometer']}],
- optionalServices: ['glucose']
- })
- .then(
- ({device}) => assert_promise_rejects_with_message(
- device.gatt.getPrimaryServices('glucose'),
- new DOMException(
- `No Services matching UUID ${
- glucose.uuid} found in Device.`,
- 'NotFoundError'))),
+bluetooth_test(() => getHealthThermometerDevice({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: ['glucose']
+ })
+ .then(({device}) => assert_promise_rejects_with_message(
+ device.gatt.getPrimaryServices('glucose'),
+ new DOMException(
+ `No Services matching UUID ${glucose.uuid} found in Device.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/detachedIframe.https.window.js
index d83e0373..f75fc22 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -11,7 +12,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await device.gatt.getPrimaryService(health_thermometer.name);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/detachedIframe.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/detachedIframe.https.window.js
index 8bdf406..ea8c961 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/detachedIframe.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/detachedIframe.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
@@ -16,7 +17,7 @@
iframe.remove();
// Set iframe to null to ensure that the GC cleans up as much as possible.
iframe = null;
- await runGarbageCollection();
+ await garbageCollect();
try {
await service.getCharacteristic(measurement_interval.alias);
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.window.js
index fb96df5..cce302d6 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-blocklisted-characteristic.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -10,14 +11,13 @@
'getCharacteristic(s) called with blocklisted UUID. https://goo.gl/4NeimX',
'SecurityError');
-bluetooth_test(
- () =>
- getHIDDevice({filters: [{services: ['device_information']}]})
- .then(
- ({device}) =>
- device.gatt.getPrimaryService('device_information'))
- .then(
- service => assert_promise_rejects_with_message(
- service.getCharacteristic('serial_number_string'), expected,
- 'Serial Number String characteristic is blocklisted.')),
+bluetooth_test(() => getHIDDevice({
+ filters: [{services: ['device_information']}]
+})
+ .then(({device}) => device.gatt.getPrimaryService('device_information'))
+ .then(service => assert_promise_rejects_with_message(
+ service.getCharacteristic('serial_number_string'),
+ expected,
+ 'Serial Number String characteristic is blocklisted.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-characteristic-not-found.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-characteristic-not-found.https.window.js
index c0987c6..2ed48eb5 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-characteristic-not-found.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-characteristic-not-found.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,13 +8,12 @@
const test_desc = 'Request for absent characteristics with UUID. ' +
'Reject with NotFoundError.';
-bluetooth_test(
- () => getEmptyHealthThermometerService().then(
- ({service}) => assert_promise_rejects_with_message(
- service.getCharacteristic('battery_level'),
- new DOMException(
- `No Characteristics matching UUID ${
- battery_level.uuid} found ` +
- `in Service with UUID ${health_thermometer.uuid}.`,
- 'NotFoundError'))),
+bluetooth_test(() => getEmptyHealthThermometerService()
+ .then(({service}) => assert_promise_rejects_with_message(
+ service.getCharacteristic('battery_level'),
+ new DOMException(
+ `No Characteristics matching UUID ${battery_level.uuid} found ` +
+ `in Service with UUID ${health_thermometer.uuid}.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-error.https.window.js
index 1c429fc4..1fd70c8f 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,20 +9,19 @@
'call that fails. Should not crash';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(({service}) => {
- promise = assert_promise_rejects_with_message(
- service.getCharacteristic('measurement_interval'),
- expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- service.device.gatt.disconnect();
- })
- .then(runGarbageCollection)
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => {
+ promise = assert_promise_rejects_with_message(
+ service.getCharacteristic('measurement_interval'), expected);
+ // Disconnect called to clear attributeInstanceMap and allow the object to
+ // get garbage collected.
+ service.device.gatt.disconnect();
+ })
+ .then(garbageCollect)
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-get-same-object.https.window.js
index 636ba9de7..c5176cd 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-get-same-object.https.window.js
@@ -1,35 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Calls to getCharacteristic should return the same object.';
-bluetooth_test(
- () =>
- getHealthThermometerService()
- .then(({service}) => Promise.all([
- service.getCharacteristic('measurement_interval'),
- service.getCharacteristic('measurement_interval')
- ]))
- .then(
- ([characteristics_first_call, characteristics_second_call]) => {
- // Convert to arrays if necessary.
- characteristics_first_call =
- [].concat(characteristics_first_call);
- characteristics_second_call =
- [].concat(characteristics_second_call);
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => Promise.all([
+ service.getCharacteristic('measurement_interval'),
+ service.getCharacteristic('measurement_interval')]))
+ .then(([characteristics_first_call, characteristics_second_call]) => {
+ // Convert to arrays if necessary.
+ characteristics_first_call = [].concat(characteristics_first_call);
+ characteristics_second_call = [].concat(characteristics_second_call);
- let first_call_set = new Set(characteristics_first_call);
- assert_equals(
- characteristics_first_call.length, first_call_set.size);
- let second_call_set = new Set(characteristics_second_call);
- assert_equals(
- characteristics_second_call.length, second_call_set.size);
+ let first_call_set = new Set(characteristics_first_call);
+ assert_equals(characteristics_first_call.length, first_call_set.size);
+ let second_call_set = new Set(characteristics_second_call);
+ assert_equals(characteristics_second_call.length, second_call_set.size);
- characteristics_first_call.forEach(characteristic => {
- assert_true(second_call_set.has(characteristic));
- });
- }),
- test_desc);
+ characteristics_first_call.forEach(characteristic => {
+ assert_true(second_call_set.has(characteristic));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-invalid-characteristic-name.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-invalid-characteristic-name.https.window.js
index 2331f86..da0f5bda 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-invalid-characteristic-name.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-invalid-characteristic-name.https.window.js
@@ -1,25 +1,27 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Wrong Characteristic name. Reject with TypeError.';
const expected = new DOMException(
- 'Failed to execute \'getCharacteristic\' on ' +
- '\'BluetoothRemoteGATTService\': Invalid Characteristic name: ' +
- '\'wrong_name\'. ' +
- 'It must be a valid UUID alias (e.g. 0x1234), ' +
- 'UUID (lowercase hex characters e.g. ' +
- '\'00001234-0000-1000-8000-00805f9b34fb\'), ' +
- 'or recognized standard name from ' +
- 'https://www.bluetooth.com/specifications/gatt/characteristics' +
- ' e.g. \'aerobic_heart_rate_lower_limit\'.',
+ "Failed to execute 'getCharacteristic' on " +
+ "'BluetoothRemoteGATTService': Invalid Characteristic name: " +
+ "'wrong_name'. " +
+ "It must be a valid UUID alias (e.g. 0x1234), " +
+ "UUID (lowercase hex characters e.g. " +
+ "'00001234-0000-1000-8000-00805f9b34fb'), " +
+ "or recognized standard name from " +
+ "https://www.bluetooth.com/specifications/gatt/characteristics" +
+ " e.g. 'aerobic_heart_rate_lower_limit'.",
'TypeError');
-bluetooth_test(
- () => getHealthThermometerService().then(
- ({service}) => assert_promise_rejects_with_message(
- service.getCharacteristic('wrong_name'), expected,
- 'Wrong Characteristic name passed.')),
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => assert_promise_rejects_with_message(
+ service.getCharacteristic('wrong_name'),
+ expected,
+ 'Wrong Characteristic name passed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-reconnect-during.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-reconnect-during.https.window.js
index bc96ce5..8801c152 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-reconnect-during.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-reconnect-during.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,34 +9,31 @@
'getCharacteristic. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () =>
- getHealthThermometerDeviceWithServicesDiscovered({
- filters: [{services: [health_thermometer.name]}],
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryService(health_thermometer.name))
- .then(service => Promise.all([
- // 1. Make a call to service.getCharacteristic, while the service
- // is still valid.
- assert_promise_rejects_with_message(
- service.getCharacteristic(measurement_interval.name),
- expected),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: [health_thermometer.name]}],
+})
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryService(health_thermometer.name))
+ .then(service => Promise.all([
+ // 1. Make a call to service.getCharacteristic, while the service is still
+ // valid.
+ assert_promise_rejects_with_message(service.getCharacteristic(measurement_interval.name), expected),
- // 2. disconnect() and connect before the initial call completes.
- // This is accomplished by making the calls without waiting for
- // the earlier promises to resolve. connect() guarantees on
- // OS-level connection, but disconnect() only disconnects the
- // current instance.
- // getHealthThermometerDeviceWithServicesDiscovered holds another
- // connection in an iframe, so disconnect() and connect() are
- // certain to reconnect. However, disconnect() will invalidate
- // the service object so the subsequent calls made to it will
- // fail, even after reconnecting.
- device.gatt.disconnect(), device.gatt.connect()
- ])),
+ // 2. disconnect() and connect before the initial call completes.
+ // This is accomplished by making the calls without waiting for the
+ // earlier promises to resolve.
+ // connect() guarantees on OS-level connection, but disconnect()
+ // only disconnects the current instance.
+ // getHealthThermometerDeviceWithServicesDiscovered holds another
+ // connection in an iframe, so disconnect() and connect() are certain to
+ // reconnect. However, disconnect() will invalidate the service object so
+ // the subsequent calls made to it will fail, even after reconnecting.
+ device.gatt.disconnect(),
+ device.gatt.connect()
+ ])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-service-is-removed.https.window.js
index d04967e..bfeb318c 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristic/gen-service-is-removed.https.window.js
@@ -1,22 +1,23 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Service is removed before getCharacteristic call. ' +
'Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let service, fake_service, fake_peripheral;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(_ => ({service, fake_service, fake_peripheral} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristic('measurement_interval'),
- expected, 'Service got removed.')),
+bluetooth_test(() => getHealthThermometerService()
+ .then(_ => ({service, fake_service, fake_peripheral} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ service.getCharacteristic('measurement_interval'),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.window.js
index c39a29c8..79cd010 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-blocklisted-characteristic-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -10,14 +11,13 @@
'getCharacteristic(s) called with blocklisted UUID. https://goo.gl/4NeimX',
'SecurityError');
-bluetooth_test(
- () => getHIDDevice({filters: [{services: ['device_information']}]})
- .then(
- ({device}) =>
- device.gatt.getPrimaryService('device_information'))
- .then(
- service => assert_promise_rejects_with_message(
- service.getCharacteristics('serial_number_string'),
- expected,
- 'Serial Number String characteristic is blocklisted.')),
+bluetooth_test(() => getHIDDevice({
+ filters: [{services: ['device_information']}]
+})
+ .then(({device}) => device.gatt.getPrimaryService('device_information'))
+ .then(service => assert_promise_rejects_with_message(
+ service.getCharacteristics('serial_number_string'),
+ expected,
+ 'Serial Number String characteristic is blocklisted.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-characteristic-not-found-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-characteristic-not-found-with-uuid.https.window.js
index ccaa738..8a5e2ab4 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-characteristic-not-found-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-characteristic-not-found-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -7,13 +8,12 @@
const test_desc = 'Request for absent characteristics with UUID. ' +
'Reject with NotFoundError.';
-bluetooth_test(
- () => getEmptyHealthThermometerService().then(
- ({service}) => assert_promise_rejects_with_message(
- service.getCharacteristics('battery_level'),
- new DOMException(
- `No Characteristics matching UUID ${
- battery_level.uuid} found ` +
- `in Service with UUID ${health_thermometer.uuid}.`,
- 'NotFoundError'))),
+bluetooth_test(() => getEmptyHealthThermometerService()
+ .then(({service}) => assert_promise_rejects_with_message(
+ service.getCharacteristics('battery_level'),
+ new DOMException(
+ `No Characteristics matching UUID ${battery_level.uuid} found ` +
+ `in Service with UUID ${health_thermometer.uuid}.`,
+ 'NotFoundError'))),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
index ad4ab9f..683b93e 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,20 +9,19 @@
'call that fails. Should not crash';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(({service}) => {
- promise = assert_promise_rejects_with_message(
- service.getCharacteristics('measurement_interval'),
- expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- service.device.gatt.disconnect();
- })
- .then(runGarbageCollection)
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => {
+ promise = assert_promise_rejects_with_message(
+ service.getCharacteristics('measurement_interval'), expected);
+ // Disconnect called to clear attributeInstanceMap and allow the object to
+ // get garbage collected.
+ service.device.gatt.disconnect();
+ })
+ .then(garbageCollect)
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error.https.window.js
index 84481450..c964781a 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-error.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,19 +9,19 @@
'call that fails. Should not crash';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let promise;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(({service}) => {
- promise = assert_promise_rejects_with_message(
- service.getCharacteristics(), expected);
- // Disconnect called to clear attributeInstanceMap and allow the
- // object to get garbage collected.
- service.device.gatt.disconnect();
- })
- .then(runGarbageCollection)
- .then(() => promise),
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => {
+ promise = assert_promise_rejects_with_message(
+ service.getCharacteristics(), expected);
+ // Disconnect called to clear attributeInstanceMap and allow the object to
+ // get garbage collected.
+ service.device.gatt.disconnect();
+ })
+ .then(garbageCollect)
+ .then(() => promise),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object-with-uuid.https.window.js
index 35d277e..64b53f4e 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object-with-uuid.https.window.js
@@ -1,35 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Calls to getCharacteristics should return the same object.';
-bluetooth_test(
- () =>
- getHealthThermometerService()
- .then(({service}) => Promise.all([
- service.getCharacteristics('measurement_interval'),
- service.getCharacteristics('measurement_interval')
- ]))
- .then(
- ([characteristics_first_call, characteristics_second_call]) => {
- // Convert to arrays if necessary.
- characteristics_first_call =
- [].concat(characteristics_first_call);
- characteristics_second_call =
- [].concat(characteristics_second_call);
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => Promise.all([
+ service.getCharacteristics('measurement_interval'),
+ service.getCharacteristics('measurement_interval')]))
+ .then(([characteristics_first_call, characteristics_second_call]) => {
+ // Convert to arrays if necessary.
+ characteristics_first_call = [].concat(characteristics_first_call);
+ characteristics_second_call = [].concat(characteristics_second_call);
- let first_call_set = new Set(characteristics_first_call);
- assert_equals(
- characteristics_first_call.length, first_call_set.size);
- let second_call_set = new Set(characteristics_second_call);
- assert_equals(
- characteristics_second_call.length, second_call_set.size);
+ let first_call_set = new Set(characteristics_first_call);
+ assert_equals(characteristics_first_call.length, first_call_set.size);
+ let second_call_set = new Set(characteristics_second_call);
+ assert_equals(characteristics_second_call.length, second_call_set.size);
- characteristics_first_call.forEach(characteristic => {
- assert_true(second_call_set.has(characteristic));
- });
- }),
- test_desc);
+ characteristics_first_call.forEach(characteristic => {
+ assert_true(second_call_set.has(characteristic));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object.https.window.js
index 4326ee29..6aad17c 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-get-same-object.https.window.js
@@ -1,34 +1,28 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Calls to getCharacteristics should return the same object.';
-bluetooth_test(
- () =>
- getHealthThermometerService()
- .then(({service}) => Promise.all([
- service.getCharacteristics(), service.getCharacteristics()
- ]))
- .then(
- ([characteristics_first_call, characteristics_second_call]) => {
- // Convert to arrays if necessary.
- characteristics_first_call =
- [].concat(characteristics_first_call);
- characteristics_second_call =
- [].concat(characteristics_second_call);
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => Promise.all([
+ service.getCharacteristics(),
+ service.getCharacteristics()]))
+ .then(([characteristics_first_call, characteristics_second_call]) => {
+ // Convert to arrays if necessary.
+ characteristics_first_call = [].concat(characteristics_first_call);
+ characteristics_second_call = [].concat(characteristics_second_call);
- let first_call_set = new Set(characteristics_first_call);
- assert_equals(
- characteristics_first_call.length, first_call_set.size);
- let second_call_set = new Set(characteristics_second_call);
- assert_equals(
- characteristics_second_call.length, second_call_set.size);
+ let first_call_set = new Set(characteristics_first_call);
+ assert_equals(characteristics_first_call.length, first_call_set.size);
+ let second_call_set = new Set(characteristics_second_call);
+ assert_equals(characteristics_second_call.length, second_call_set.size);
- characteristics_first_call.forEach(characteristic => {
- assert_true(second_call_set.has(characteristic));
- });
- }),
- test_desc);
+ characteristics_first_call.forEach(characteristic => {
+ assert_true(second_call_set.has(characteristic));
+ });
+ }), test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-invalid-characteristic-name.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-invalid-characteristic-name.https.window.js
index 14b2e50..c7d439e 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-invalid-characteristic-name.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-invalid-characteristic-name.https.window.js
@@ -1,25 +1,27 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Wrong Characteristic name. Reject with TypeError.';
const expected = new DOMException(
- 'Failed to execute \'getCharacteristics\' on ' +
- '\'BluetoothRemoteGATTService\': Invalid Characteristic name: ' +
- '\'wrong_name\'. ' +
- 'It must be a valid UUID alias (e.g. 0x1234), ' +
- 'UUID (lowercase hex characters e.g. ' +
- '\'00001234-0000-1000-8000-00805f9b34fb\'), ' +
- 'or recognized standard name from ' +
- 'https://www.bluetooth.com/specifications/gatt/characteristics' +
- ' e.g. \'aerobic_heart_rate_lower_limit\'.',
+ "Failed to execute 'getCharacteristics' on " +
+ "'BluetoothRemoteGATTService': Invalid Characteristic name: " +
+ "'wrong_name'. " +
+ "It must be a valid UUID alias (e.g. 0x1234), " +
+ "UUID (lowercase hex characters e.g. " +
+ "'00001234-0000-1000-8000-00805f9b34fb'), " +
+ "or recognized standard name from " +
+ "https://www.bluetooth.com/specifications/gatt/characteristics" +
+ " e.g. 'aerobic_heart_rate_lower_limit'.",
'TypeError');
-bluetooth_test(
- () => getHealthThermometerService().then(
- ({service}) => assert_promise_rejects_with_message(
- service.getCharacteristics('wrong_name'), expected,
- 'Wrong Characteristic name passed.')),
+bluetooth_test(() => getHealthThermometerService()
+ .then(({service}) => assert_promise_rejects_with_message(
+ service.getCharacteristics('wrong_name'),
+ expected,
+ 'Wrong Characteristic name passed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during-with-uuid.https.window.js
index 34207a2f..db373fb 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during-with-uuid.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,34 +9,31 @@
'getCharacteristics. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () =>
- getHealthThermometerDeviceWithServicesDiscovered({
- filters: [{services: [health_thermometer.name]}],
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryService(health_thermometer.name))
- .then(service => Promise.all([
- // 1. Make a call to service.getCharacteristics, while the service
- // is still valid.
- assert_promise_rejects_with_message(
- service.getCharacteristics(measurement_interval.name),
- expected),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: [health_thermometer.name]}],
+})
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryService(health_thermometer.name))
+ .then(service => Promise.all([
+ // 1. Make a call to service.getCharacteristics, while the service is still
+ // valid.
+ assert_promise_rejects_with_message(service.getCharacteristics(measurement_interval.name), expected),
- // 2. disconnect() and connect before the initial call completes.
- // This is accomplished by making the calls without waiting for
- // the earlier promises to resolve. connect() guarantees on
- // OS-level connection, but disconnect() only disconnects the
- // current instance.
- // getHealthThermometerDeviceWithServicesDiscovered holds another
- // connection in an iframe, so disconnect() and connect() are
- // certain to reconnect. However, disconnect() will invalidate
- // the service object so the subsequent calls made to it will
- // fail, even after reconnecting.
- device.gatt.disconnect(), device.gatt.connect()
- ])),
+ // 2. disconnect() and connect before the initial call completes.
+ // This is accomplished by making the calls without waiting for the
+ // earlier promises to resolve.
+ // connect() guarantees on OS-level connection, but disconnect()
+ // only disconnects the current instance.
+ // getHealthThermometerDeviceWithServicesDiscovered holds another
+ // connection in an iframe, so disconnect() and connect() are certain to
+ // reconnect. However, disconnect() will invalidate the service object so
+ // the subsequent calls made to it will fail, even after reconnecting.
+ device.gatt.disconnect(),
+ device.gatt.connect()
+ ])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during.https.window.js
index 4354cfc..8b3ba7c 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-reconnect-during.https.window.js
@@ -1,5 +1,6 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
@@ -8,33 +9,31 @@
'getCharacteristics. Reject with NetworkError.';
const expected = new DOMException(
'GATT Server is disconnected. Cannot retrieve characteristics. ' +
- '(Re)connect first with `device.gatt.connect`.',
+ '(Re)connect first with `device.gatt.connect`.',
'NetworkError');
let device;
-bluetooth_test(
- () =>
- getHealthThermometerDeviceWithServicesDiscovered({
- filters: [{services: [health_thermometer.name]}],
- })
- .then(_ => ({device} = _))
- .then(() => device.gatt.getPrimaryService(health_thermometer.name))
- .then(service => Promise.all([
- // 1. Make a call to service.getCharacteristics, while the service
- // is still valid.
- assert_promise_rejects_with_message(
- service.getCharacteristics(), expected),
+bluetooth_test(() => getHealthThermometerDeviceWithServicesDiscovered({
+ filters: [{services: [health_thermometer.name]}],
+})
+ .then(_ => ({device} = _))
+ .then(() => device.gatt.getPrimaryService(health_thermometer.name))
+ .then(service => Promise.all([
+ // 1. Make a call to service.getCharacteristics, while the service is still
+ // valid.
+ assert_promise_rejects_with_message(service.getCharacteristics(), expected),
- // 2. disconnect() and connect before the initial call completes.
- // This is accomplished by making the calls without waiting for
- // the earlier promises to resolve. connect() guarantees on
- // OS-level connection, but disconnect() only disconnects the
- // current instance.
- // getHealthThermometerDeviceWithServicesDiscovered holds another
- // connection in an iframe, so disconnect() and connect() are
- // certain to reconnect. However, disconnect() will invalidate
- // the service object so the subsequent calls made to it will
- // fail, even after reconnecting.
- device.gatt.disconnect(), device.gatt.connect()
- ])),
+ // 2. disconnect() and connect before the initial call completes.
+ // This is accomplished by making the calls without waiting for the
+ // earlier promises to resolve.
+ // connect() guarantees on OS-level connection, but disconnect()
+ // only disconnects the current instance.
+ // getHealthThermometerDeviceWithServicesDiscovered holds another
+ // connection in an iframe, so disconnect() and connect() are certain to
+ // reconnect. However, disconnect() will invalidate the service object so
+ // the subsequent calls made to it will fail, even after reconnecting.
+ device.gatt.disconnect(),
+ device.gatt.connect()
+ ])),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed-with-uuid.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed-with-uuid.https.window.js
index 8d0e7c2..2d4db5282 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed-with-uuid.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed-with-uuid.https.window.js
@@ -1,22 +1,23 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Service is removed before getCharacteristics call. ' +
'Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let service, fake_service, fake_peripheral;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(_ => ({service, fake_service, fake_peripheral} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics('measurement_interval'),
- expected, 'Service got removed.')),
+bluetooth_test(() => getHealthThermometerService()
+ .then(_ => ({service, fake_service, fake_peripheral} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ service.getCharacteristics('measurement_interval'),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed.https.window.js b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed.https.window.js
index dff0d3d9..f922b45 100644
--- a/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/bluetooth/service/getCharacteristics/gen-service-is-removed.https.window.js
@@ -1,22 +1,23 @@
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
+// META: script=/common/gc.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
// Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py
'use strict';
const test_desc = 'Service is removed before getCharacteristics call. ' +
'Reject with InvalidStateError.';
-const expected =
- new DOMException('GATT Service no longer exists.', 'InvalidStateError');
+const expected = new DOMException('GATT Service no longer exists.',
+ 'InvalidStateError');
let service, fake_service, fake_peripheral;
-bluetooth_test(
- () => getHealthThermometerService()
- .then(_ => ({service, fake_service, fake_peripheral} = _))
- .then(() => fake_service.remove())
- .then(() => fake_peripheral.simulateGATTServicesChanged())
- .then(
- () => assert_promise_rejects_with_message(
- service.getCharacteristics(), expected,
- 'Service got removed.')),
+bluetooth_test(() => getHealthThermometerService()
+ .then(_ => ({service, fake_service, fake_peripheral} = _))
+ .then(() => fake_service.remove())
+ .then(() => fake_peripheral.simulateGATTServicesChanged())
+ .then(() => assert_promise_rejects_with_message(
+ service.getCharacteristics(),
+ expected,
+ 'Service got removed.')),
test_desc);
+
diff --git a/third_party/blink/web_tests/external/wpt/common/gc.js b/third_party/blink/web_tests/external/wpt/common/gc.js
new file mode 100644
index 0000000..ac43a4c
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/common/gc.js
@@ -0,0 +1,52 @@
+/**
+ * Does a best-effort attempt at invoking garbage collection. Attempts to use
+ * the standardized `TestUtils.gc()` function, but falls back to other
+ * environment-specific nonstandard functions, with a final result of just
+ * creating a lot of garbage (in which case you will get a console warning).
+ *
+ * This should generally only be used to attempt to trigger bugs and crashes
+ * inside tests, i.e. cases where if garbage collection happened, then this
+ * should not trigger some misbehavior. You cannot rely on garbage collection
+ * successfully trigger, or that any particular unreachable object will be
+ * collected.
+ *
+ * @returns {Promise<undefined>} A promise you should await to ensure garbage
+ * collection has had a chance to complete.
+ */
+self.garbageCollect = async () => {
+ // https://testutils.spec.whatwg.org/#the-testutils-namespace
+ if (self.TestUtils?.gc) {
+ return TestUtils.gc();
+ }
+
+ // Use --expose_gc for V8 (and Node.js)
+ // to pass this flag at chrome launch use: --js-flags="--expose-gc"
+ // Exposed in SpiderMonkey shell as well
+ if (self.gc) {
+ return self.gc();
+ }
+
+ // Present in some WebKit development environments
+ if (self.GCController) {
+ return GCController.collect();
+ }
+
+ console.warn(
+ 'Tests are running without the ability to do manual garbage collection. ' +
+ 'They will still work, but coverage will be suboptimal.');
+
+ for (var i = 0; i < 1000; i++) {
+ gcRec(10);
+ }
+
+ function gcRec(n) {
+ if (n < 1) {
+ return {};
+ }
+
+ let temp = { i: "ab" + i + i / 100000 };
+ temp += "foo";
+
+ gcRec(n - 1);
+ }
+};
diff --git a/third_party/blink/web_tests/external/wpt/custom-elements/CustomElementRegistry-constructor-and-callbacks-are-held-strongly.html b/third_party/blink/web_tests/external/wpt/custom-elements/CustomElementRegistry-constructor-and-callbacks-are-held-strongly.html
index 5e741eb..fb6af32f 100644
--- a/third_party/blink/web_tests/external/wpt/custom-elements/CustomElementRegistry-constructor-and-callbacks-are-held-strongly.html
+++ b/third_party/blink/web_tests/external/wpt/custom-elements/CustomElementRegistry-constructor-and-callbacks-are-held-strongly.html
@@ -4,7 +4,7 @@
<link rel="help" href="https://html.spec.whatwg.org/multipage/custom-elements.html#concept-custom-element-definition-lifecycle-callbacks">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="resources/garbage-collect.js"></script>
+<script src="/common/gc.js"></script>
<body>
<div id="customElementsRoot"></div>
@@ -39,13 +39,13 @@
}
promise_test(async t => {
- await maybeGarbageCollectAsync();
+ await garbageCollect();
assert_true(tagNames.every(tagName => typeof customElements.get(tagName) === "function"));
}, "constructor");
promise_test(async t => {
- await maybeGarbageCollectAsync();
+ await garbageCollect();
for (const tagName of tagNames) {
customElementsRoot.append(document.createElement(tagName));
}
@@ -55,7 +55,7 @@
}, "connectedCallback");
promise_test(async t => {
- await maybeGarbageCollectAsync();
+ await garbageCollect();
for (const xFoo of customElementsRoot.children) {
xFoo.setAttribute("foo", "bar");
}
@@ -65,7 +65,7 @@
}, "attributeChangedCallback");
promise_test(async t => {
- await maybeGarbageCollectAsync();
+ await garbageCollect();
customElementsRoot.innerHTML = "";
await delay(t, 10);
@@ -73,7 +73,7 @@
}, "disconnectedCallback");
promise_test(async t => {
- await maybeGarbageCollectAsync();
+ await garbageCollect();
for (const tagName of tagNames) {
emptyIframe.contentDocument.adoptNode(document.createElement(tagName));
}
diff --git a/third_party/blink/web_tests/external/wpt/custom-elements/form-associated/ElementInternals-target-element-is-held-strongly.html b/third_party/blink/web_tests/external/wpt/custom-elements/form-associated/ElementInternals-target-element-is-held-strongly.html
index 7119d5f..a747c04 100644
--- a/third_party/blink/web_tests/external/wpt/custom-elements/form-associated/ElementInternals-target-element-is-held-strongly.html
+++ b/third_party/blink/web_tests/external/wpt/custom-elements/form-associated/ElementInternals-target-element-is-held-strongly.html
@@ -3,7 +3,7 @@
<body>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
-<script src="../resources/garbage-collect.js"></script>
+<script src="/common/gc.js"></script>
<script>
customElements.define("x-foo", class extends HTMLElement {});
@@ -17,7 +17,7 @@
elementInternals.push(targetElement.attachInternals());
}
- await maybeGarbageCollectAsync();
+ await garbageCollect();
await new Promise(r => t.step_timeout(r, 100));
const allShadowRootsAreAlive = elementInternals.every(eI => eI.shadowRoot instanceof ShadowRoot);
diff --git a/third_party/blink/web_tests/external/wpt/custom-elements/resources/garbage-collect.js b/third_party/blink/web_tests/external/wpt/custom-elements/resources/garbage-collect.js
deleted file mode 100644
index d2e3449c..0000000
--- a/third_party/blink/web_tests/external/wpt/custom-elements/resources/garbage-collect.js
+++ /dev/null
@@ -1,19 +0,0 @@
-async function maybeGarbageCollectAsync() {
- if (typeof TestUtils !== 'undefined' && TestUtils.gc) {
- await TestUtils.gc();
- } else if (self.gc) {
- // Use --expose_gc for V8 (and Node.js)
- // to pass this flag at chrome launch use: --js-flags="--expose-gc"
- // Exposed in SpiderMonkey shell as well
- await self.gc();
- } else if (self.GCController) {
- // Present in some WebKit development environments
- await GCController.collect();
- } else {
- /* eslint-disable no-console */
- console.warn('Tests are running without the ability to do manual ' +
- 'garbage collection. They will still work, but ' +
- 'coverage will be suboptimal.');
- /* eslint-enable no-console */
- }
-}
diff --git a/third_party/blink/web_tests/external/wpt/file-system-access/local_FileSystemDirectoryHandle-iteration-manual.https.html b/third_party/blink/web_tests/external/wpt/file-system-access/local_FileSystemDirectoryHandle-iteration-manual.https.html
index 8537ca0..e8c2932 100644
--- a/third_party/blink/web_tests/external/wpt/file-system-access/local_FileSystemDirectoryHandle-iteration-manual.https.html
+++ b/third_party/blink/web_tests/external/wpt/file-system-access/local_FileSystemDirectoryHandle-iteration-manual.https.html
@@ -5,6 +5,7 @@
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
+<script src="/common/gc.js"></script>
<script src="resources/test-helpers.js"></script>
<script src="resources/local-fs-test-helpers.js"></script>
<script src="../fs/script-tests/FileSystemDirectoryHandle-iteration.js"></script>
diff --git a/third_party/blink/web_tests/external/wpt/file-system-access/resources/test-helpers.js b/third_party/blink/web_tests/external/wpt/file-system-access/resources/test-helpers.js
index 7326fd0..893cd19 100644
--- a/third_party/blink/web_tests/external/wpt/file-system-access/resources/test-helpers.js
+++ b/third_party/blink/web_tests/external/wpt/file-system-access/resources/test-helpers.js
@@ -78,19 +78,3 @@
await writer.close();
return handle;
}
-
-function garbageCollect() {
- if (self.TestUtils?.gc) return TestUtils.gc();
- if (self.gc) return self.gc();
- // Present in some WebKit development environments
- if (self.GCController) return GCController.collect();
-
- for (var i = 0; i < 1000; i++) gcRec(10);
-
- function gcRec(n) {
- if (n < 1) return {};
- let temp = { i: "ab" + i + i / 100000 };
- temp += "foo";
- gcRec(n - 1);
- }
-}
diff --git a/third_party/blink/web_tests/external/wpt/fs/FileSystemDirectoryHandle-iteration.https.any.js b/third_party/blink/web_tests/external/wpt/fs/FileSystemDirectoryHandle-iteration.https.any.js
index 3961ea3e..b337d61 100644
--- a/third_party/blink/web_tests/external/wpt/fs/FileSystemDirectoryHandle-iteration.https.any.js
+++ b/third_party/blink/web_tests/external/wpt/fs/FileSystemDirectoryHandle-iteration.https.any.js
@@ -1,3 +1,4 @@
+// META: script=/common/gc.js
// META: script=resources/test-helpers.js
// META: script=resources/sandboxed-fs-test-helpers.js
// META: script=script-tests/FileSystemDirectoryHandle-iteration.js
diff --git a/third_party/blink/web_tests/external/wpt/fs/resources/test-helpers.js b/third_party/blink/web_tests/external/wpt/fs/resources/test-helpers.js
index 20735664..d2e09504 100644
--- a/third_party/blink/web_tests/external/wpt/fs/resources/test-helpers.js
+++ b/third_party/blink/web_tests/external/wpt/fs/resources/test-helpers.js
@@ -80,13 +80,6 @@
return handle;
}
-function garbageCollect() {
- // TODO(https://github.com/web-platform-tests/wpt/issues/7899): Change to
- // some sort of cross-browser GC trigger.
- if (self.gc)
- self.gc();
-};
-
async function cleanup(test, value, cleanup_func) {
test.add_cleanup(async () => {
try {
diff --git a/third_party/blink/web_tests/external/wpt/html/semantics/popovers/popover-animated-hide-cleanup.tentative.html b/third_party/blink/web_tests/external/wpt/html/semantics/popovers/popover-animated-hide-cleanup.tentative.html
index ee1239e..9310acc 100644
--- a/third_party/blink/web_tests/external/wpt/html/semantics/popovers/popover-animated-hide-cleanup.tentative.html
+++ b/third_party/blink/web_tests/external/wpt/html/semantics/popovers/popover-animated-hide-cleanup.tentative.html
@@ -9,7 +9,7 @@
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="resources/popover-utils.js"></script>
-<script src="/streams/resources/test-utils.js"></script>
+<script src="/common/gc.js"></script>
<dialog>I am a dialog</dialog>
@@ -61,7 +61,7 @@
popover.hidePopover(); // Start animations
await rAF();
popover.remove();
- garbageCollect();
+ await garbageCollect();
await rAF();
// This test passes if it does not crash.
},'Ensure no crashes if running animations are immediately cancelled (document removal)');
@@ -77,7 +77,7 @@
t.add_cleanup(() => dialog.close());
await rAF();
popover.remove();
- garbageCollect();
+ await garbageCollect();
await rAF();
// This test passes if it does not crash.
},'Ensure no crashes if running animations are immediately cancelled (dialog showModal)');
diff --git a/third_party/blink/web_tests/external/wpt/lint.ignore b/third_party/blink/web_tests/external/wpt/lint.ignore
index 7ac79fc..7267be7 100644
--- a/third_party/blink/web_tests/external/wpt/lint.ignore
+++ b/third_party/blink/web_tests/external/wpt/lint.ignore
@@ -107,18 +107,15 @@
# semi-legitimate use of console.*
CONSOLE: console/*
-CONSOLE: custom-elements/resources/garbage-collect.js
-CONSOLE: js/builtins/weakrefs/resources/maybe-garbage-collect.js
+CONSOLE: common/gc.js
CONSOLE: resources/check-layout-th.js
CONSOLE: resources/chromium/*
CONSOLE: resources/testharness.js
-CONSOLE: streams/resources/test-utils.js
CONSOLE: service-workers/service-worker/resources/navigation-redirect-other-origin.html
CONSOLE: service-workers/service-worker/navigation-redirect.https.html
CONSOLE: service-workers/service-worker/resources/clients-get-other-origin.html
CONSOLE: webrtc/tools/*
CONSOLE: webaudio/resources/audit.js:41
-CONSOLE: webusb/resources/usb-helpers.js
# use of console in a public library - annotation-model ensures
# it is not actually used
diff --git a/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-gc.html b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-gc.html
new file mode 100644
index 0000000..d35121e
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-gc.html
@@ -0,0 +1,18 @@
+<!doctype html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/gc.js"></script>
+
+<iframe id="i" src="/common/blank.html"></iframe>
+
+<!--
+ Regression test for https://bugs.chromium.org/p/chromium/issues/detail?id=1289864.
+-->
+
+<script>
+promise_test(t => {
+ i.contentWindow.navigation.navigate("/common/blank.html?1");
+
+ return garbageCollect();
+}, `navigate() from <iframe> with src="" but still on initial about:blank doesn't cause a crash on GC`);
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-src.html b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-src.html
index 2044b33c..8e549436 100644
--- a/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-src.html
+++ b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank-src.html
@@ -7,9 +7,6 @@
Sort of a regression test for https://bugs.chromium.org/p/chromium/issues/detail?id=1289864,
but since that is GC-dependent this will probably not fail in codebases that exhibit that bug.
So it's really just adding some extra general coverage for navigation.navigate().
-
- TODO(domenic): when https://github.com/web-platform-tests/wpt/issues/7899 happens, update this
- test to use TestUtils.gc().
-->
<script>
diff --git a/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank.html b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank.html
index d494ec4..00b2216 100644
--- a/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank.html
+++ b/third_party/blink/web_tests/external/wpt/navigation-api/navigation-methods/navigate-from-initial-about-blank.html
@@ -7,9 +7,6 @@
Sort of a regression test for https://bugs.chromium.org/p/chromium/issues/detail?id=1289864,
but since that is GC-dependent this will probably not fail in codebases that exhibit that bug.
So it's really just adding some extra general coverage for navigation.navigate().
-
- TODO(domenic): when https://github.com/web-platform-tests/wpt/issues/7899 happens, update this
- test to use TestUtils.gc().
-->
diff --git a/third_party/blink/web_tests/external/wpt/permissions/permissions-cg.https.html b/third_party/blink/web_tests/external/wpt/permissions/permissions-cg.https.html
index d8f63eba..7a2d8dc 100644
--- a/third_party/blink/web_tests/external/wpt/permissions/permissions-cg.https.html
+++ b/third_party/blink/web_tests/external/wpt/permissions/permissions-cg.https.html
@@ -5,24 +5,9 @@
<script src=/resources/testharnessreport.js></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
+<script src="/common/gc.js"></script>
<script>
-function garbageCollect() {
- if (self.TestUtils?.gc) return TestUtils.gc();
- if (self.gc) return self.gc();
- // Present in some WebKit development environments
- if (self.GCController) return GCController.collect();
-
- for (var i = 0; i < 1000; i++) gcRec(10);
-
- function gcRec(n) {
- if (n < 1) return {};
- let temp = { i: "ab" + i + i / 100000 };
- temp += "foo";
- gcRec(n - 1);
- }
-}
-
promise_test(async () => {
const { state: initialState } = await navigator.permissions.query({
name: "geolocation",
diff --git a/third_party/blink/web_tests/external/wpt/streams/readable-streams/garbage-collection.any.js b/third_party/blink/web_tests/external/wpt/streams/readable-streams/garbage-collection.any.js
index f7e2d06a..e578176 100644
--- a/third_party/blink/web_tests/external/wpt/streams/readable-streams/garbage-collection.any.js
+++ b/third_party/blink/web_tests/external/wpt/streams/readable-streams/garbage-collection.any.js
@@ -1,5 +1,6 @@
// META: global=window,worker
// META: script=../resources/test-utils.js
+// META: script=/common/gc.js
'use strict';
promise_test(async () => {
diff --git a/third_party/blink/web_tests/external/wpt/streams/resources/test-utils.js b/third_party/blink/web_tests/external/wpt/streams/resources/test-utils.js
index b5da3c8..5ff8fc8cec 100644
--- a/third_party/blink/web_tests/external/wpt/streams/resources/test-utils.js
+++ b/third_party/blink/web_tests/external/wpt/streams/resources/test-utils.js
@@ -47,31 +47,6 @@
'constructor should throw a TypeError'));
};
-self.garbageCollect = () => {
- // https://testutils.spec.whatwg.org/#the-testutils-namespace
- if (self.TestUtils?.gc) return TestUtils.gc();
- // Use --expose_gc for V8 (and Node.js)
- // to pass this flag at chrome launch use: --js-flags="--expose-gc"
- // Exposed in SpiderMonkey shell as well
- if (self.gc) return self.gc();
- // Present in some WebKit development environments
- if (self.GCController) return GCController.collect();
-
- /* eslint-disable no-console */
- console.warn('Tests are running without the ability to do manual garbage collection. They will still work, but ' +
- 'coverage will be suboptimal.');
- /* eslint-enable no-console */
-
- for (var i = 0; i < 1000; i++) gcRec(10);
-
- function gcRec(n) {
- if (n < 1) return {};
- let temp = { i: "ab" + i + i / 100000 };
- temp += "foo";
- gcRec(n - 1);
- }
-};
-
self.delay = ms => new Promise(resolve => step_timeout(resolve, ms));
// For tests which verify that the implementation doesn't do something it shouldn't, it's better not to use a
diff --git a/third_party/blink/web_tests/external/wpt/webmessaging/Channel_postMessage_Blob.any.js b/third_party/blink/web_tests/external/wpt/webmessaging/Channel_postMessage_Blob.any.js
index 485dd23..fce814f5 100644
--- a/third_party/blink/web_tests/external/wpt/webmessaging/Channel_postMessage_Blob.any.js
+++ b/third_party/blink/web_tests/external/wpt/webmessaging/Channel_postMessage_Blob.any.js
@@ -1,4 +1,5 @@
// META: title=postMessage() with a Blob
+// META: script=/common/gc.js
var TARGET = null;
var SOURCE = null;
@@ -15,9 +16,7 @@
(function() {
SOURCE.postMessage({blob: new Blob(['foo', 'bar'])});
})();
- // TODO(https://github.com/web-platform-tests/wpt/issues/7899): Change to
- // some sort of cross-browser GC trigger.
- if (self.gc) self.gc();
+ garbageCollect();
function TestMessageEvent(evt)
{
diff --git a/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/blobs.html b/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/blobs.html
index 1f0e2f1..ab5096b 100644
--- a/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/blobs.html
+++ b/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/blobs.html
@@ -2,6 +2,7 @@
<meta charset=utf-8>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
+<script src="/common/gc.js"></script>
<script>
async_test(t => {
const c1 = new BroadcastChannel('blob');
@@ -27,9 +28,7 @@
(() => {
c1.postMessage({blob: new Blob(['foo', 'bar'])});
})();
- // TODO(https://github.com/web-platform-tests/wpt/issues/7899): Change to
- // some sort of cross-browser GC trigger.
- if (self.gc) self.gc();
+ garbageCollect();
}, 'Blobs work on BroadcastChannel');
async_test(t => {
diff --git a/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/resources/worker.js b/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/resources/worker.js
index df23072b..ee2d51a 100644
--- a/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/resources/worker.js
+++ b/third_party/blink/web_tests/external/wpt/webmessaging/broadcastchannel/resources/worker.js
@@ -1,6 +1,8 @@
+importScripts("/common/gc.js");
+
var c;
-function handler(e, reply) {
+async function handler(e, reply) {
if (e.data.ping) {
c.postMessage(e.data.ping);
return;
@@ -9,9 +11,7 @@
(() => {
c.postMessage({blob: new Blob(e.data.blob)});
})();
- // TODO(https://github.com/web-platform-tests/wpt/issues/7899): Change to
- // some sort of cross-browser GC trigger.
- if (self.gc) self.gc();
+ await garbageCollect();
}
c = new BroadcastChannel(e.data.channel);
let messages = [];
diff --git a/third_party/blink/web_tests/external/wpt/webmessaging/message-channels/detached-iframe.window.js b/third_party/blink/web_tests/external/wpt/webmessaging/message-channels/detached-iframe.window.js
index c1effaf..c19f50f 100644
--- a/third_party/blink/web_tests/external/wpt/webmessaging/message-channels/detached-iframe.window.js
+++ b/third_party/blink/web_tests/external/wpt/webmessaging/message-channels/detached-iframe.window.js
@@ -1,5 +1,6 @@
// META: title=MessageChannel in a detached iframe test
// META: script=/service-workers/service-worker/resources/test-helpers.sub.js
+// META: script=/common/gc.js
// Pull in the with_iframe helper function from the service worker tests
@@ -27,9 +28,7 @@
iframe.remove();
}
- // TODO(https://github.com/web-platform-tests/wpt/issues/7899): Change to
- // some sort of cross-browser GC trigger.
- if (self.gc) self.gc();
+ await garbageCollect();
// We are testing that neither of the above two events fire. We assume that a 2 second timeout
// is good enough. We can't use any other API for an end condition because each MessagePort has
diff --git a/third_party/blink/web_tests/external/wpt/webusb/resources/usb-helpers.js b/third_party/blink/web_tests/external/wpt/webusb/resources/usb-helpers.js
index 1197c43e4..cb6aaadf 100644
--- a/third_party/blink/web_tests/external/wpt/webusb/resources/usb-helpers.js
+++ b/third_party/blink/web_tests/external/wpt/webusb/resources/usb-helpers.js
@@ -102,30 +102,3 @@
test_driver.click(button);
});
}
-
-/**
- * Runs the garbage collection.
- * @returns {Promise<void>} Resolves when garbage collection has finished.
- */
-function runGarbageCollection() {
- // Run gc() as a promise.
- return new Promise(function(resolve, reject) {
- if (self.gc) {
- // Use --expose_gc for V8 (and Node.js)
- // to pass this flag at chrome launch use: --js-flags="--expose-gc"
- // Exposed in SpiderMonkey shell as well
- self.gc();
- } else if (self.GCController) {
- // Present in some WebKit development environments
- GCController.collect();
- } else {
- /* eslint-disable no-console */
- console.warn(
- 'Tests are running without the ability to do manual garbage ' +
- 'collection. They will still work, but ' +
- 'coverage will be suboptimal.');
- /* eslint-enable no-console */
- }
- step_timeout(resolve, 0);
- });
-}
diff --git a/third_party/blink/web_tests/external/wpt/webusb/usb-garbage-collection.https.window.js b/third_party/blink/web_tests/external/wpt/webusb/usb-garbage-collection.https.window.js
index 26c9978..5c153eb0 100644
--- a/third_party/blink/web_tests/external/wpt/webusb/usb-garbage-collection.https.window.js
+++ b/third_party/blink/web_tests/external/wpt/webusb/usb-garbage-collection.https.window.js
@@ -1,6 +1,7 @@
// META: script=/resources/test-only-api.js
// META: script=/webusb/resources/fake-devices.js
// META: script=/webusb/resources/usb-helpers.js
+// META: script=/common/gc.js
'use strict';
usb_test(async () => {
@@ -10,5 +11,5 @@
await device.selectConfiguration(2);
await device.claimInterface(0);
}
- return runGarbageCollection();
+ await garbageCollect();
}, 'Run garbage collection when the device reference is out of scope');
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..dec8286
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during getDescriptor call that fails. Should not crash promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..c4b9789
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptor/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getDescriptor call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error-with-uuid.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error-with-uuid.https-expected.txt
new file mode 100644
index 0000000..64dace8
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error-with-uuid.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during getDescriptors call that fails. Should not crash promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..64dace8
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during getDescriptors call that fails. Should not crash promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success-with-uuid.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success-with-uuid.https-expected.txt
new file mode 100644
index 0000000..961e30eb
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success-with-uuid.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getDescriptors call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..961e30eb
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/getDescriptors/gen-descriptor-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getDescriptors call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-start.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-start.https-expected.txt
new file mode 100644
index 0000000..802841f
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-start.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Object gets garbage collected while start request is pending. Make sure we don' crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-stop.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-stop.https-expected.txt
new file mode 100644
index 0000000..c8e0dd6
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/notifications/gc-with-pending-stop.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Object gets garbage collected while stop request is pending. Make sure we don't crash while the request is pending. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..72afe73
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a readValue call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..9571e9a0
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/readValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a readValue call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..583c99f
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a startNotifications call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..74bbcb76
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a startNotifications call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/stopNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/stopNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..41910ee
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/stopNotifications/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a stopNotifications call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..1ca5a7b
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a writeValue call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..969ad7b
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValue/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a writeValue call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..eb796f2
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a writeValueWithResponse call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..caddd96
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a writeValueWithResponse call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..ab57895
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a writeValueWithoutResponse call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..32b39de1
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/characteristic/writeValueWithoutResponse/gen-gatt-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a writeValueWithoutResponse call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..72afe73
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a readValue call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..9571e9a0
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/readValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a readValue call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..1ca5a7b
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a writeValue call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..969ad7b
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/descriptor/writeValue/gen-io-op-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a writeValue call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/server/connect/garbage-collection-ran-during-error.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/server/connect/garbage-collection-ran-during-error.https-expected.txt
new file mode 100644
index 0000000..47e62b6
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/server/connect/garbage-collection-ran-during-error.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage collection ran during a connect call that fails. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..121fba4b
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristic/gen-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getCharacteristic call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success-with-uuid.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success-with-uuid.https-expected.txt
new file mode 100644
index 0000000..e519edec
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success-with-uuid.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getCharacteristics call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success.https-expected.txt b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success.https-expected.txt
new file mode 100644
index 0000000..e519edec
--- /dev/null
+++ b/third_party/blink/web_tests/wpt_internal/bluetooth/service/getCharacteristics/gen-garbage-collection-ran-during-success.https-expected.txt
@@ -0,0 +1,4 @@
+This is a testharness.js-based test.
+FAIL Garbage Collection ran during a getCharacteristics call that succeeds. Should not crash. promise_test: Unhandled rejection with value: object "ReferenceError: runGarbageCollection is not defined"
+Harness: the test ran to completion.
+