| <!DOCTYPE html> |
| <meta charset=utf-8> |
| <title>Web NFC: NFCReader tests</title> |
| <link rel="author" title="Intel" href="http://www.intel.com"/> |
| <link rel="help" href="https://w3c.github.io/web-nfc/"/> |
| <meta name="timeout" content="long"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <meta name="flags" content="interact"> |
| |
| <p>Tap an NFC tag to the test device with NFC support.</p> |
| |
| <p>Note: All the actions need to be done in 60 seconds, otherwise it will get TIMEOUT.</p> |
| |
| <div id="log"></div> |
| |
| <script> |
| |
| "use strict"; |
| |
| promise_test(async t => { |
| const reader = new NFCReader(); |
| const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); |
| reader.start(); |
| const event = await readerWatcher.wait_for("reading"); |
| assert_true(event instanceof NFCReadingEvent); |
| }, 'Test that nfc watch success if NFC HW is enabled.'); |
| |
| promise_test(async t => { |
| const reader = new NFCReader({url: "https://a.com"}); |
| const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); |
| reader.start(); |
| const event = await readerWatcher.wait_for("reading"); |
| assert_true(event instanceof NFCReadingEvent); |
| }, 'Test that NFCReader.start succeeds if NFCReaderOptions.url is valid URL.'); |
| |
| promise_test(async t => { |
| const reader = new NFCReader({url: "https://a.com/*"}); |
| const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); |
| reader.start(); |
| const event = await readerWatcher.wait_for("reading"); |
| assert_true(event instanceof NFCReadingEvent); |
| }, 'Test that NFCReader.start succeeds if NFCReaderOptions.url is valid URL with "*"' + |
| ' wildcard character in path.'); |
| |
| promise_test(async t => { |
| const reader = new NFCReader({url: "https://a.com/*/bar"}); |
| const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); |
| reader.start(); |
| const event = await readerWatcher.wait_for("reading"); |
| assert_true(event instanceof NFCReadingEvent); |
| }, 'Test that NFCReader.start succeeds if NFCReaderOptions.url is valid URL with "*"' + |
| ' wildcard character in the beginning of path component followed by' + |
| ' subpath.'); |
| |
| promise_test(async t => { |
| const reader = new NFCReader({url: ""}); |
| const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); |
| reader.start(); |
| const event = await readerWatcher.wait_for("reading"); |
| assert_true(event instanceof NFCReadingEvent); |
| }, 'Test that NFCReader.start succeeds if NFCReaderOptions.url is empty.'); |
| |
| </script> |