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

42 lines
1.4 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>
const non_strings = [
123,
{},
true,
Symbol(),
() => {},
self
]
test(() => {
assert_equals(NFCReadingEvent.length, 2);
assert_throws(new TypeError, () => new NFCReadingEvent('message'));
}, 'NFCReadingEvent constructor without init dict');
test(() => {
assert_equals(NFCReadingEvent.length, 2);
const message = createMessage([createJsonRecord(test_json_data)]);
non_strings.forEach(invalid_serialNumber => {
assert_throws(new TypeError, () => new NFCReadingEvent(
'message',
{serialNumber: invalid_serialNumber, message: message}
));
});
}, 'NFCReadingEvent constructor with invalid serialNumber');
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, message, 'message');
}, 'NFCReadingEvent constructor with valid parameters');
</script>