tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

NDEFReadingEvent_constructor.https.window.js (2464B)


      1 // META: script=resources/nfc-helpers.js
      2 
      3 'use strict';
      4 
      5 test(() => {
      6  assert_equals(NDEFReadingEvent.length, 2);
      7  assert_throws_js(TypeError, () => new NDEFReadingEvent('message'));
      8 }, 'NDEFReadingEvent constructor without init dict');
      9 
     10 test(() => {
     11  assert_throws_js(
     12      TypeError,
     13      () => new NDEFReadingEvent('type', {serialNumber: '', message: null}),
     14      'NDEFMessageInit#records is a required field.');
     15 }, 'NDEFReadingEvent constructor failed to construct its NDEFMessage');
     16 
     17 test(() => {
     18  const message = createMessage([createMimeRecordFromJson(test_buffer_data)]);
     19  const event =
     20      new NDEFReadingEvent('type', {serialNumber: null, message: message});
     21  assert_equals(event.serialNumber, '', 'serialNumber');
     22 }, 'NDEFReadingEvent constructor with null serialNumber');
     23 
     24 test(() => {
     25  const message = createMessage([createMimeRecordFromJson(test_buffer_data)]);
     26  const event = new NDEFReadingEvent('type', {message: message});
     27  assert_equals(event.serialNumber, '', 'serialNumber');
     28 }, 'NDEFReadingEvent constructor with serialNumber not present');
     29 
     30 test(() => {
     31  const message = createMessage([createMimeRecord(test_buffer_data)]);
     32  const event =
     33      new NDEFReadingEvent('type', {serialNumber: '', message: message});
     34  assert_equals(event.type, 'type', 'type');
     35  assert_equals(event.serialNumber, '', 'serialNumber');
     36  assertWebNDEFMessagesEqual(event.message, new NDEFMessage(message));
     37 }, 'NDEFReadingEvent constructor with valid parameters');
     38 
     39 test(() => {
     40  const record_init = createTextRecord(test_text_data);
     41  const event = new NDEFReadingEvent(
     42      'type', {serialNumber: '', message: createMessage([record_init])});
     43  assert_equals(event.type, 'type', 'type');
     44  assert_equals(event.serialNumber, '', 'serialNumber');
     45  assert_equals(1, event.message.records.length, 'only 1 record');
     46 
     47  const record = new NDEFRecord(record_init);
     48  assert_equals(record.recordType, 'text', 'recordType');
     49  assert_equals(record.mediaType, null, 'mediaType');
     50  assert_equals(record.encoding, 'utf-8', 'encoding');
     51  assert_equals(record.lang, 'en', 'lang');
     52 
     53  assert_equals(event.message.records[0].recordType, 'text', 'recordType');
     54  assert_equals(event.message.records[0].mediaType, null, 'mediaType');
     55  assert_equals(event.message.records[0].encoding, 'utf-8', 'encoding');
     56  assert_equals(event.message.records[0].lang, 'en', 'lang');
     57 }, 'NDEFReadingEvent constructor sets NDEFRecord#lang for the text records it embeds');