servo/tests/wpt/web-platform-tests/web-nfc/NFCReadingEvent_constructor.https.html

40 lines
1.7 KiB
HTML

<!DOCTYPE html>
<title>NFCReadingEvent constructor</title>
<link rel="help" href="https://w3c.github.io/web-nfc/#dom-nfcreadingevent">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/nfc_help.js"></script>
<script>
test(() => {
assert_equals(NFCReadingEvent.length, 2);
assert_throws(new TypeError, () => new NFCReadingEvent('message'));
}, 'NFCReadingEvent constructor without init dict');
test(() => {
const message = createMessage([createJsonRecord(test_json_data)]);
const event = new NFCReadingEvent('type', {serialNumber: null, message: message});
assert_equals(event.serialNumber, '', 'serialNumber');
}, 'NFCReadingEvent constructor with null serialNumber');
test(() => {
const message = createMessage([createJsonRecord(test_json_data)]);
const event = new NFCReadingEvent('type', {message: message});
assert_equals(event.serialNumber, '', 'serialNumber');
}, 'NFCReadingEvent constructor with serialNumber not present');
test(() => {
const event = new NFCReadingEvent('type', {serialNumber: '', message: null});
assert_equals(0, event.message.records.length, 'no records');
assert_equals(0, event.message.url.length, 'empty url');
}, 'NFCReadingEvent constructor with null message');
test(() => {
const message = createMessage([createJsonRecord(test_json_data)]);
const event = new NFCReadingEvent('type', {serialNumber: '', message: message});
assert_equals(event.type, 'type', 'type');
assert_equals(event.serialNumber, '', 'serialNumber');
assertWebNDEFMessagesEqual(event.message, new NDEFMessage(message), 'message');
}, 'NFCReadingEvent constructor with valid parameters');
</script>