diff options
Diffstat (limited to 'testing/web-platform/tests/ua-client-hints')
3 files changed, 42 insertions, 0 deletions
diff --git a/testing/web-platform/tests/ua-client-hints/META.yml b/testing/web-platform/tests/ua-client-hints/META.yml new file mode 100644 index 0000000000..c994748e0f --- /dev/null +++ b/testing/web-platform/tests/ua-client-hints/META.yml @@ -0,0 +1 @@ +spec: https://wicg.github.io/ua-client-hints/ diff --git a/testing/web-platform/tests/ua-client-hints/idlharness.https.any.js b/testing/web-platform/tests/ua-client-hints/idlharness.https.any.js new file mode 100644 index 0000000000..13a9225b47 --- /dev/null +++ b/testing/web-platform/tests/ua-client-hints/idlharness.https.any.js @@ -0,0 +1,21 @@ +// META: script=/resources/WebIDLParser.js +// META: script=/resources/idlharness.js + +'use strict'; + +// https://wicg.github.io/ua-client-hints/ + +idl_test( + ['ua-client-hints'], + ['html', 'dom'], + idl_array => { + if (self.GLOBAL.isWorker()) { + idl_array.add_objects({ WorkerNavigator: ['navigator'] }); + } else { + idl_array.add_objects({ Navigator: ['navigator'] }); + } + idl_array.add_objects({ + NavigatorUAData: ['navigator.userAgentData'], + }); + } +); diff --git a/testing/web-platform/tests/ua-client-hints/useragentdata.https.any.js b/testing/web-platform/tests/ua-client-hints/useragentdata.https.any.js new file mode 100644 index 0000000000..fa58835518 --- /dev/null +++ b/testing/web-platform/tests/ua-client-hints/useragentdata.https.any.js @@ -0,0 +1,20 @@ +// META: title=tests for navigator.userAgentData + +test(t => { + const brands = navigator.userAgentData.brands; + assert_true(brands.every(brand => brand.brand.length < 32), + "No brand should be longer than 32 characters."); +}); + +test(t => { + const uaData = navigator.userAgentData.toJSON(); + assert_own_property(uaData, "brands", "toJSON() output has brands member"); + assert_own_property(uaData, "mobile", "toJSON() output has mobile member"); + assert_own_property(uaData, "platform", "toJSON() output has platform member"); +}, "test NavigatorUAData.toJSON() output"); + +promise_test(() => { + return navigator.userAgentData.getHighEntropyValues(["architecture"]).then( + hints => assert_true(["x86", "arm"].some(item => item == hints.architecture)) + ); +}, "Arch should be one of two permitted values."); |