Closed Bug 1578997 Opened 5 years ago Closed 5 years ago

[wpt-sync] Sync PR 18871 - Reland "[webnfc] Refactor/Refine impl for "Creating Web NFC message" algorithm"

Categories

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

task

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

Leon Han <leon.han@intel.com> wrote:

Reland "[webnfc] Refactor/Refine impl for "Creating Web NFC message" algorithm"

This is a reland of 581b273e3743fcbd168775edfeebae8b092fc706

Original change's description:

[webnfc] Refactor/Refine impl for "Creating Web NFC message" algorithm

This CL implements strictly the "Creating Web NFC message" algorithm
described at http://w3c.github.io/web-nfc/#creating-web-nfc-message.

Changes the Web IDL definition for NDEFRecordData from
"typedef (DOMString or unrestricted double or ArrayBuffer or Dictionary) NDEFRecordData;"
to
"typedef any NDEFRecordData;"

Adds verification of NDEFRecordInit when creating NDEFRecord, i.e. makes
NDEFRecord ctor throw exceptions in case of invalid NDEFRecordInit.
Also, the same thing for NDEFMessage and NFCReadingEvent.

Changes code flow for Step 10.9 of "9.10.1 The push() method" described
at https://w3c.github.io/web-nfc/#the-push-method.
"
Let output be the notation for the NDEF message to be created by UA, as
the result of passing message to create Web NFC message. If this throws
an exception, reject p with that exception and abort these steps.
"
Previously,
NDEFMessageSource (NDEFMessageInit) -Validity check->
-Mojo TypeConverter-> Mojom NDEFMessagePtr
Now,
Remove "Validity check" and "Mojo TypeConverter" mentioned above,
instead, we reuse the process of creating NDEFMessage from
NDEFMessageSource (NDEFMessageInit), then the next step converting
NDEFMessage to Mojom NDEFMessagePtr is quite an easy job.

BUG=520391

Change-Id: I628981e556f89ffdd0f883da0cfa99b20a6f8300
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1767719
Commit-Queue: Leon Han \<leon.han@intel.com>
Reviewed-by: Daniel Cheng \<dcheng@chromium.org>
Reviewed-by: Reilly Grant \<reillyg@chromium.org>
Reviewed-by: Rijubrata Bhaumik \<rijubrata.bhaumik@intel.com>
Cr-Commit-Position: refs/heads/master@{#693539}

Bug: 520391
Change-Id: I608e28638c0909c9d4f675774514cd990f9878c8

Reviewed-on: https://chromium-review.googlesource.com/1787557
WPT-Export-Revision: 83b5e01cac68d58cea6b640e892a3d4ac481c105

Component: web-platform-tests → DOM: Device Interfaces
Product: Testing → Core
Ran 2 tests and 27 subtests
OK     : 2
FAIL   : 27

New tests that have failures or other problems:
/web-nfc/NFCWriter_push.https.html
    Reject promise with exceptions thrown from serializing the 'json' record data.: FAIL
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/f34a15e6c64b
[wpt PR 18871] - Reland "[webnfc] Refactor/Refine impl for "Creating Web NFC message" algorithm", a=testonly
https://hg.mozilla.org/integration/mozilla-inbound/rev/7a9b845bd505
[wpt PR 18871] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
You need to log in before you can comment on or make changes to this bug.