trisquel-icecat/icecat/testing/web-platform/tests/web-nfc
2025-07-17 09:32:21 -06:00
..
resources icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
idlharness.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
META.yml icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFMessage_constructor.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFMessage_recursion-limit.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader-make-read-only-document-hidden-manual.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader-read-document-hidden-manual.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader-write-document-hidden-manual.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader_make-read-only.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader_scan.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader_scan_iframe.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReader_write.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFReadingEvent_constructor.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
NDEFRecord_constructor.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
nfc-prompt-manual.https.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
nfc_insecure_context.html icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
nfc_permission.https.window.js icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00
README.md icecat: initial release for Trisquel 12.0, Ecne 2025-07-17 09:32:21 -06:00

The nfc-helpers.js requires an implementation of the WebNFCTest interfaces, which should emulate platform Web NFC backends.

The WebNFCTest interface is defined as:

  class NFCTestChromium {
    initialize();  // Sets up the testing environment.
    async reset(); // Frees the resources.
    getMockNFC(); // Returns `MockNFC` interface.
  };

  class MockNFC {
    setHWStatus(number status); // Sets the hardware status.
    setReadingMessage(NDEFMessageInit message); // Sets message that is used to deliver NFC reading updates.
    setPendingPushCompleted(boolean result); // Sets if the pending push is completed.
    setPendingMakeReadOnlyCompleted(boolean result); // Sets if the pending makeReadOnly is completed.
    pushedMessage(); // Gets the pushed `NDEFMessageSource`.
    writeOptions(); // Gets the pushed `NDEFWriteOptions`.
    simulateNonNDEFTagDiscovered(); // Simulates that the NFC device discovered does not expose NDEF technology.
    setIsFormattedTag(boolean isFormatted); // Sets if the NFC tag has formatted NDEF message.
  };

The Chromium implementation of the WebNFCTest interface is located in nfc-mock.js.

Other browser vendors should provide their own implementations of the WebNFCTest interfaces.