blob: a3171c3544e4640ca35d2a6de451d05cf8aa008c [file] [log] [blame]
<!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>