Closed Bug 1605826 Opened 4 years ago Closed 4 years ago

[wpt-sync] Sync PR 20915 - [webnfc] Correct error type

Categories

(Core :: DOM: Device Interfaces, task, P4)

task

Tracking

()

RESOLVED FIXED
mozilla73
Tracking Status
firefox73 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 20915 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/20915
Details from upstream follow.

Wanming Lin <wanming.lin@intel.com> wrote:

[webnfc] Correct error type

Per spec:
If languageLength cannot be stored in 6 bit (languageLength > 63),
throw a SyntaxError.

But current implementation throws a TypeError, this CL fixs the error type.

Bug:520391
Change-Id: I6ff64d87b387a07fff926ada80e5ee5d73b716b7

Reviewed-on: https://chromium-review.googlesource.com/1981199
WPT-Export-Revision: 5bc041cd123fc19107a483e93e86a8ba2b26c7cd

Component: web-platform-tests → DOM: Device Interfaces
Product: Testing → Core

CI Results

Ran 13 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 31 subtests

Status Summary

Firefox

OK : 1
FAIL: 31

Chrome

OK : 1
PASS: 7
FAIL: 24

Safari

OK : 1
FAIL: 31

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/web-nfc/NDEFWriter_push.https.html
Check that default NDEFPushOptions values are correctly set.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if user permission is not granted.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBuffer.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'text' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with TypeError if NDEFMessageSource is invalid.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should replace all previously configured push operations.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed when NFC HW is enabled: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'mime' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is not DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is not supported.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is disabled.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push NDEFMessage containing text, mime, unknown, url, absolute-url and external records with default NDEFPushOptions.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if signal is not an AbortSignal.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if abort push request before push happends.: FAIL (Chrome: FAIL, Safari: FAIL)
Synchronously signaled abort.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when there are NDEF records on the NFC device and NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to push data to an unformatted NFC device when the NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that mediaType should be set to 'application/octet-stream' if NDEFRecordInit.record's recordType is 'mime' and NDEFRecordInit.record's mediaType is undefined.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with SyntaxError if NDEFMessageSource contains invalid records.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should ignore reading data when ignoreRead is true.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that WebNFC API is not accessible from iframe context.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBufferView.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should read data when ignoreRead is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail with TypeError when invalid target value is provided.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if signal's aborted flag is set.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail when the NFC device coming up does not expose NDEF technology.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to overwrite the existing data when the NDEFPushOptions.overwrite is true.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if no implementation for NFC Mojo interface is available.: FAIL (Chrome: FAIL, Safari: FAIL)
Reject promise with NotSupportedError if NFC message size exceeds 32KB.: FAIL (Chrome: PASS, Safari: FAIL)
Check that provided NDEFPushOptions values are correctly converted.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push with 'empty' record should succeed.: FAIL (Chrome: FAIL, Safari: FAIL)

CI Results

Ran 13 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 31 subtests

Status Summary

Firefox

OK : 1
FAIL: 31

Chrome

OK : 1
PASS: 7
FAIL: 24

Safari

OK : 1
FAIL: 31

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/web-nfc/NDEFWriter_push.https.html
Check that default NDEFPushOptions values are correctly set.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if user permission is not granted.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBuffer.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'text' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with TypeError if NDEFMessageSource is invalid.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should replace all previously configured push operations.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed when NFC HW is enabled: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'mime' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is not DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is not supported.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is disabled.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push NDEFMessage containing text, mime, unknown, url, absolute-url and external records with default NDEFPushOptions.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if signal is not an AbortSignal.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if abort push request before push happends.: FAIL (Chrome: FAIL, Safari: FAIL)
Synchronously signaled abort.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when there are NDEF records on the NFC device and NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to push data to an unformatted NFC device when the NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that mediaType should be set to 'application/octet-stream' if NDEFRecordInit.record's recordType is 'mime' and NDEFRecordInit.record's mediaType is undefined.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with SyntaxError if NDEFMessageSource contains invalid records.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should ignore reading data when ignoreRead is true.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that WebNFC API is not accessible from iframe context.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBufferView.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should read data when ignoreRead is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail with TypeError when invalid target value is provided.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if signal's aborted flag is set.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail when the NFC device coming up does not expose NDEF technology.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to overwrite the existing data when the NDEFPushOptions.overwrite is true.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if no implementation for NFC Mojo interface is available.: FAIL (Chrome: FAIL, Safari: FAIL)
Reject promise with NotSupportedError if NFC message size exceeds 32KB.: FAIL (Chrome: PASS, Safari: FAIL)
Check that provided NDEFPushOptions values are correctly converted.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push with 'empty' record should succeed.: FAIL (Chrome: FAIL, Safari: FAIL)

CI Results

Ran 13 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 31 subtests

Status Summary

Firefox

OK : 1
FAIL: 31

Chrome

OK : 1
PASS: 7
FAIL: 24

Safari

OK : 1
FAIL: 31

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/web-nfc/NDEFWriter_push.https.html
Check that default NDEFPushOptions values are correctly set.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if user permission is not granted.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBuffer.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'text' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with TypeError if NDEFMessageSource is invalid.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should replace all previously configured push operations.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed when NFC HW is enabled: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'mime' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is not DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is not supported.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is disabled.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push NDEFMessage containing text, mime, unknown, url, absolute-url and external records with default NDEFPushOptions.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if signal is not an AbortSignal.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if abort push request before push happends.: FAIL (Chrome: FAIL, Safari: FAIL)
Synchronously signaled abort.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when there are NDEF records on the NFC device and NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to push data to an unformatted NFC device when the NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that mediaType should be set to 'application/octet-stream' if NDEFRecordInit.record's recordType is 'mime' and NDEFRecordInit.record's mediaType is undefined.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with SyntaxError if NDEFMessageSource contains invalid records.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should ignore reading data when ignoreRead is true.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that WebNFC API is not accessible from iframe context.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBufferView.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should read data when ignoreRead is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail with TypeError when invalid target value is provided.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if signal's aborted flag is set.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail when the NFC device coming up does not expose NDEF technology.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to overwrite the existing data when the NDEFPushOptions.overwrite is true.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if no implementation for NFC Mojo interface is available.: FAIL (Chrome: FAIL, Safari: FAIL)
Reject promise with NotSupportedError if NFC message size exceeds 32KB.: FAIL (Chrome: PASS, Safari: FAIL)
Check that provided NDEFPushOptions values are correctly converted.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push with 'empty' record should succeed.: FAIL (Chrome: FAIL, Safari: FAIL)

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/da0793c7dae4
[wpt PR 20915] - [webnfc] Correct error type, a=testonly

CI Results

Ran 13 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 31 subtests

Status Summary

Firefox

OK : 1
FAIL: 31

Chrome

OK : 1
PASS: 7
FAIL: 24

Safari

OK : 1
FAIL: 31

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/web-nfc/NDEFWriter_push.https.html
Check that default NDEFPushOptions values are correctly set.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if user permission is not granted.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBuffer.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'text' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with TypeError if NDEFMessageSource is invalid.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should replace all previously configured push operations.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed when NFC HW is enabled: FAIL (Chrome: FAIL, Safari: FAIL)
Test that recordType should be set to 'mime' if NDEFRecordInit.record's recordType is undefined and NDEFRecordInit.record's data is not DOMString.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is not supported.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when NFC HW is disabled.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push NDEFMessage containing text, mime, unknown, url, absolute-url and external records with default NDEFPushOptions.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if signal is not an AbortSignal.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if abort push request before push happends.: FAIL (Chrome: FAIL, Safari: FAIL)
Synchronously signaled abort.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail when there are NDEF records on the NFC device and NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to push data to an unformatted NFC device when the NDEFPushOptions.overwrite is false.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that mediaType should be set to 'application/octet-stream' if NDEFRecordInit.record's recordType is 'mime' and NDEFRecordInit.record's mediaType is undefined.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that promise is rejected with SyntaxError if NDEFMessageSource contains invalid records.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should ignore reading data when ignoreRead is true.: FAIL (Chrome: FAIL, Safari: FAIL)
Test that WebNFC API is not accessible from iframe context.: FAIL (Chrome: PASS, Safari: FAIL)
Test that NDEFWriter.push succeeds when message is ArrayBufferView.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should read data when ignoreRead is false.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail with TypeError when invalid target value is provided.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail if signal's aborted flag is set.: FAIL (Chrome: PASS, Safari: FAIL)
NDEFWriter.push should fail when the NFC device coming up does not expose NDEF technology.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should succeed to overwrite the existing data when the NDEFPushOptions.overwrite is true.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push should fail if no implementation for NFC Mojo interface is available.: FAIL (Chrome: FAIL, Safari: FAIL)
Reject promise with NotSupportedError if NFC message size exceeds 32KB.: FAIL (Chrome: PASS, Safari: FAIL)
Check that provided NDEFPushOptions values are correctly converted.: FAIL (Chrome: FAIL, Safari: FAIL)
NDEFWriter.push with 'empty' record should succeed.: FAIL (Chrome: FAIL, Safari: FAIL)

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla73
You need to log in before you can comment on or make changes to this bug.