Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(592)

Unified Diff: third_party/WebKit/LayoutTests/bluetooth/requestDevice-canonicalize-filter.html

Issue 1910933002: bluetooth: Separate requestDevice tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@bluetooth-mojo-gatt-connect
Patch Set: Replace uses of assert_promise_rejects because it was removed. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/bluetooth/requestDevice-canonicalize-filter.html
diff --git a/third_party/WebKit/LayoutTests/bluetooth/requestDevice-canonicalize-filter.html b/third_party/WebKit/LayoutTests/bluetooth/requestDevice-canonicalize-filter.html
deleted file mode 100644
index 5a785ab13564df00396e5c98f7c330782a713f08..0000000000000000000000000000000000000000
--- a/third_party/WebKit/LayoutTests/bluetooth/requestDevice-canonicalize-filter.html
+++ /dev/null
@@ -1,233 +0,0 @@
-<!DOCTYPE html>
-<script src="../resources/testharness.js"></script>
-<script src="../resources/testharnessreport.js"></script>
-<script src="../resources/bluetooth/bluetooth-helpers.js"></script>
-<script>
-'use strict';
-
-test(t => { assert_true(window.testRunner instanceof Object); t.done(); },
- 'window.testRunner is required for the following tests.');
-
-promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t, new TypeError(),
- requestDeviceWithKeyDown()));
-}, 'Requires an argument.');
-
-[{}, {
- optionalServices: ['wrong_service']
-}].forEach(args => {
- promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t, new TypeError(),
- requestDeviceWithKeyDown(args)));
- }, 'RequestDeviceOptions requires a |filters| member.');
-});
-
-promise_test(() => {
- return setBluetoothFakeAdapter('HeartRateAdapter')
- .then(() => assert_promise_rejects_with_message(
- requestDeviceWithKeyDown({filters: []}),
- new TypeError('Failed to execute \'requestDevice\' on \'Bluetooth\': ' +
- '\'filters\' member must be non-empty to find any devices.')));
-}, 'An empty |filters| member should result in a TypeError');
-
-promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t, new TypeError(),
- requestDeviceWithKeyDown({
- filters: [{}]
- })));
-}, 'A filter must restrict the devices in some way.');
-
-promise_test(() => {
- let expected = new DOMException(
- 'Failed to execute \'requestDevice\' on \'Bluetooth\': A device ' +
- 'name can\'t be longer than 248 bytes.',
- 'TypeError');
- let name_too_long = generate_string(249, 'a');
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => assert_promise_rejects_with_message(
- requestDeviceWithKeyDown({filters: [{name: name_too_long}]}),
- expected, 'Device name longer than 29'));
-}, 'A device name longer than 248 must reject.');
-
-promise_test(() => {
- let expected = new DOMException(
- 'Failed to execute \'requestDevice\' on \'Bluetooth\': ' +
- 'A \'name\' or \'namePrefix\' longer than 29 bytes ' +
- 'results in no devices being found, because a device can\'t ' +
- 'advertise a name longer than 29 bytes.',
- 'NotFoundError');
- let name_too_long = generate_string(30, 'a');
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => assert_promise_rejects_with_message(
- requestDeviceWithKeyDown({filters: [{name: name_too_long}]}),
- expected, 'Device name longer than 29'));
-}, 'A device name longer than 29 must reject.');
-
-promise_test(() => {
- let valid_unicode_name = generate_string(
- 9, '\u2764'); // \u2764's UTF-8 representationis 3 bytes long.
- // 9 chars * 3 bytes/char = 27 bytes
- return setBluetoothFakeAdapter('UnicodeDeviceAdapter')
- .then(() => requestDeviceWithKeyDown({
- filters: [{name: valid_unicode_name}]}))
- .then(device => {
- assert_equals(device.name, valid_unicode_name);
- });
-}, 'A name containing unicode characters whose utf8 length is less than 30 ' +
- 'must not throw an error.');
-
-promise_test(() => {
- let valid_unicode_name = generate_string(
- 9, '\u2764'); // \u2764's UTF-8 representationis 3 bytes long.
- // 9 chars * 3 bytes/char = 27 bytes
- return setBluetoothFakeAdapter('UnicodeDeviceAdapter')
- .then(() => requestDeviceWithKeyDown({
- filters: [{namePrefix: valid_unicode_name}]}))
- .then(device => {
- assert_equals(device.name, valid_unicode_name);
- });
-}, 'A namePrefix containing unicode characters whose utf8 length is less than 30 ' +
- 'must not throw an error.');
-
-[{
- test_name: 'Unicode string with utf8 representation between (29, 248] must throw ' +
- 'NotFoundError.',
- chars: 10, // \u2764's UTF-8 respresentation is 3 bytes long.
- // 10 chars * 3 bytes/char = 30 bytes
- expected: new DOMException(
- 'Failed to execute \'requestDevice\' on \'Bluetooth\': ' +
- 'A \'name\' or \'namePrefix\' longer than 29 bytes ' +
- 'results in no devices being found, because a device can\'t ' +
- 'advertise a name longer than 29 bytes.',
- 'NotFoundError')
-}, {
- test_name: 'Unicode string with utf8 representation greater than 248 must throw ' +
- 'TypeError.',
- chars: 83, // \u2764's UTF-8 respresentation is 3 bytes long.
- // 83 chars * 3 bytes/char = 249 bytes
- expected: new DOMException(
- 'Failed to execute \'requestDevice\' on \'Bluetooth\': ' +
- 'A device name can\'t be longer than 248 bytes.',
- 'TypeError')
-}].forEach(t => {
- let unicode_name = generate_string(t.chars, '\u2764');
- promise_test(() => {
- return setBluetoothFakeAdapter('UnicodeDeviceAdapter')
- .then(() => assert_promise_rejects_with_message(
- requestDeviceWithKeyDown({filters: [{name: unicode_name}]}),
- t.expected));
- }, '\'name\': ' + t.test_name);
-
- promise_test(() => {
- return setBluetoothFakeAdapter('UnicodeDeviceAdapter')
- .then(() => assert_promise_rejects_with_message(
- requestDeviceWithKeyDown({filters: [{namePrefix: unicode_name}]}),
- t.expected));
- }, '\'namePrefix\': ' + t.test_name);
-});
-
-function generateRequestDeviceArgsWithServices(services) {
- services = (services === undefined) ? ['heart_rate'] : services;
- return [{
- filters: [{ services: services}]
- }, {
- filters: [{ services: services, name: 'Name'}]
- }, {
- filters: [{ services: services, namePrefix: 'Pre'}]
- }, {
- filters: [{ services: services, name: 'Name', namePrefix: 'Pre'}]
- }, {
- filters: [{ services: services}],
- optionalServices: ['heart_rate']
- }, {
- filters: [{ services: services, name: 'Name'}],
- optionalServices: ['heart_rate']
- }, {
- filters: [{ services: services, namePrefix: 'Pre'}],
- optionalServices: ['heart_rate']
- }, {
- filters: [{ services: services, name: 'Name', namePrefix: 'Pre'}],
- optionalServices: ['heart_rate']
- }];
-}
-
-generateRequestDeviceArgsWithServices([]).forEach(args => {
- promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t,
- new TypeError(),
- requestDeviceWithKeyDown(args)));
- }, 'Services member must contain at least one service.');
-});
-
-generateRequestDeviceArgsWithServices(['wrong_service']).forEach(args => {
- promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t,
- new SyntaxError(),
- requestDeviceWithKeyDown(args)));
- }, 'Invalid service must reject the promise.');
-});
-
-[{
- filters: [{ namePrefix: ''}]
-}, {
- filters: [{ namePrefix: '', name: 'Name'}]
-}, {
- filters: [{ namePrefix: '', services: ['heart_rate']}]
-}, {
- filters: [{ namePrefix: '', name: 'Name', services: ['heart_rate']}]
-}, {
- filters: [{ namePrefix: ''}],
- optionalServices: ['heart_rate']
-}, {
- filters: [{ namePrefix: '', name: 'Name'}],
- optionalServices: ['heart_rate']
-}, {
- filters: [{ namePrefix: '', services: ['heart_rate']}],
- optionalServices: ['heart_rate']
-}, {
- filters: [{ namePrefix: '', name: 'Name', services: ['heart_rate']}],
- optionalServices: ['heart_rate']
-}].forEach(args => {
- promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t,
- new TypeError(),
- requestDeviceWithKeyDown(args)));
- }, 'A filter must restrict the devices in some way.');
-});
-
-[{
- optionalServices: ['wrong_service'],
- filters: [{services: ['heart_rate']}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ services: ['heart_rate'], name: 'Name'}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ services: ['heart_rate'], namePrefix: 'Pre'}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ services: ['heart_rate'], name: 'Name', namePrefix: 'Pre'}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ name: 'Name'}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ name: 'Name', namePrefix: 'Pre'}]
-}, {
- optionalServices: ['wrong_service'],
- filters: [{ namePrefix: 'Pre'}]
-}].forEach(args => {
- promise_test(t => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => promise_rejects(t,
- new SyntaxError(),
- requestDeviceWithKeyDown(args)));
- }, 'Invalid optional service must reject the promise.');
-});
-</script>

Powered by Google App Engine
This is Rietveld 408576698