Best JavaScript code snippet using wpt
NDEFReader_make-read-only.https.window.js
Source:NDEFReader_make-read-only.https.window.js
...4// NDEFReader.makeReadOnly method5// https://w3c.github.io/web-nfc/#dom-ndefreader-makereadonly6'use strict';7const invalid_signals = ['string', 123, {}, true, Symbol(), () => {}, self];8nfc_test(async t => {9 await test_driver.set_permission({name: 'nfc'}, 'denied', false);10 const ndef = new NDEFReader();11 await promise_rejects_dom(t, 'NotAllowedError', ndef.makeReadOnly());12}, 'NDEFReader.makeReadOnly should fail if user permission is not granted.');13// We do not provide NFC mock here to simulate that there has no available14// implementation for NFC Mojo interface.15nfc_test(async (t, mockNFC) => {16 mockNFC.simulateClosedPipe();17 const ndef = new NDEFReader();18 await promise_rejects_dom(t, 'NotSupportedError', ndef.makeReadOnly());19}, 'NDEFReader.makeReadOnly should fail if no implementation for NFC Mojo interface is available.');20nfc_test(async (t, mockNFC) => {21 const ndef = new NDEFReader();22 const controller = new AbortController();23 // Make sure makeReadOnly is pending24 mockNFC.setPendingMakeReadOnlyCompleted(false);25 const p = ndef.makeReadOnly({signal: controller.signal});26 const rejected = promise_rejects_dom(t, 'AbortError', p);27 let callback_called = false;28 await new Promise(resolve => {29 t.step_timeout(() => {30 callback_called = true;31 controller.abort();32 resolve();33 }, 10);34 });35 await rejected;36 assert_true(callback_called, 'timeout should have caused the abort');37}, 'NDEFReader.makeReadOnly should fail if request is aborted before makeReadOnly happends.');38nfc_test(async t => {39 const ndef = new NDEFReader();40 const controller = new AbortController();41 assert_false(controller.signal.aborted);42 controller.abort();43 assert_true(controller.signal.aborted);44 await promise_rejects_dom(45 t, 'AbortError', ndef.makeReadOnly({signal: controller.signal}));46}, 'NDEFReader.makeReadOnly should fail if signal is already aborted.');47nfc_test(async t => {48 const ndef = new NDEFReader();49 const promises = [];50 invalid_signals.forEach(invalid_signal => {51 promises.push(promise_rejects_js(52 t, TypeError, ndef.makeReadOnly({signal: invalid_signal})));53 });54 await Promise.all(promises);55}, 'NDEFReader.write should fail if signal is not an AbortSignal.');56nfc_test(async (t, mockNFC) => {57 const ndef1 = new NDEFReader();58 const ndef2 = new NDEFReader();59 const controller = new AbortController();60 const p1 = ndef1.makeReadOnly({signal: controller.signal});61 // Even though makeReadOnly request is grantable,62 // this abort should be processed synchronously.63 controller.abort();64 await promise_rejects_dom(t, 'AbortError', p1);65 await ndef2.makeReadOnly();66}, 'Synchronously signaled abort.');67nfc_test(async (t, mockNFC) => {68 const ndef = new NDEFReader();69 mockNFC.setHWStatus(NFCHWStatus.DISABLED);70 await promise_rejects_dom(t, 'NotReadableError', ndef.makeReadOnly());71}, 'NDEFReader.makeReadOnly should fail when NFC HW is disabled.');72nfc_test(async (t, mockNFC) => {73 const ndef = new NDEFReader();74 mockNFC.setHWStatus(NFCHWStatus.NOT_SUPPORTED);75 await promise_rejects_dom(t, 'NotSupportedError', ndef.makeReadOnly());76}, 'NDEFReader.makeReadOnly should fail when NFC HW is not supported.');77nfc_test(async () => {78 await new Promise((resolve, reject) => {79 const iframe = document.createElement('iframe');80 iframe.srcdoc = `<script>81 window.onmessage = async (message) => {82 if (message.data === "Ready") {83 try {84 const ndef = new NDEFReader();85 await ndef.makeReadOnly();86 parent.postMessage("Failure", "*");87 } catch (error) {88 if (error.name == "InvalidStateError") {89 parent.postMessage("Success", "*");90 } else {91 parent.postMessage("Failure", "*");92 }93 }94 }95 };96 </script>`;97 iframe.onload = () => iframe.contentWindow.postMessage('Ready', '*');98 document.body.appendChild(iframe);99 window.onmessage = message => {100 if (message.data == 'Success') {101 resolve();102 } else if (message.data == 'Failure') {103 reject();104 }105 }106 });107}, 'Test that WebNFC API is not accessible from iframe context.');108nfc_test(async () => {109 const ndef = new NDEFReader();110 await ndef.makeReadOnly();111}, 'NDEFReader.makeReadOnly should succeed when NFC HW is enabled');112nfc_test(async (t, mockNFC) => {113 const ndef1 = new NDEFReader();114 const ndef2 = new NDEFReader();115 // Make sure the first makeReadOnly will be pending.116 mockNFC.setPendingMakeReadOnlyCompleted(false);117 const p1 = ndef1.makeReadOnly();118 const p2 = ndef2.makeReadOnly();119 await promise_rejects_dom(t, 'AbortError', p1);120 await p2;121}, 'NDEFReader.makeReadOnly should replace all previously configured makeReadOnly operations.');122nfc_test(async () => {123 const ndef = new NDEFReader();124 const controller1 = new AbortController();125 await ndef.makeReadOnly({signal: controller1.signal});126 const controller2 = new AbortController();127 const promise = ndef.makeReadOnly({signal: controller2.signal});128 controller1.abort();129 await promise;130}, 'NDEFReader.makeReadOnly signals are independent.');131nfc_test(async (t, mockNFC) => {132 // Make sure the makeReadOnly will be pending in the mock.133 mockNFC.setPendingMakeReadOnlyCompleted(false);134 const ndef1 = new NDEFReader();135 const promise = ndef1.makeReadOnly();136 // Just to make sure the makeReadOnly() request has already reached to the137 // mock.138 const ndef2 = new NDEFReader();139 await ndef2.scan();140 mockNFC.simulateNonNDEFTagDiscovered();141 await promise_rejects_dom(t, 'NotSupportedError', promise);142}, 'NDEFReader.makeReadOnly should fail when the NFC device coming up does not expose \143NDEF technology.');144nfc_test(async (t, mockNFC) => {145 const ndef = new NDEFReader();146 mockNFC.simulateDataTransferFails();147 await promise_rejects_dom(t, 'NetworkError', ndef.makeReadOnly());...
Using AI Code Generation
1var wpt_nfc = require('wpt_nfc');2wpt_nfc.nfc_test();3var wpt_nfc = {4 nfc_test: function() {5 console.log("NFC test");6 }7};8module.exports = wpt_nfc;9var wpt_nfc = require('wpt_nfc');10var sum = wpt_nfc.sum(10, 20);11console.log(sum);12var wpt_nfc = {13 sum: function(a, b) {14 return a+b;15 }16};17module.exports = wpt_nfc;18var wpt_nfc = require('wpt_nfc');19var sum = wpt_nfc.sum(10, 20);20console.log(sum);21var wpt_nfc = {22 sum: function(a, b) {23 return a+b;24 }25};26module.exports = wpt_nfc;27In the above code, the test.js file is the main file which calls the sum() method of wpt_nfc.js file. The wpt_nfc.js file is a module which exports the sum() method. The module.exports is used to export the module
Using AI Code Generation
1var wpt_nfc = require('wpt_nfc');2wpt_nfc.nfc_test('hello world', function (err, data) {3 if (err) {4 console.log(err);5 } else {6 console.log(data);7 }8});9var addon = require('./build/Release/wpt_nfc');10exports.nfc_test = addon.nfc_test;11using namespace v8;12Handle<Value> nfc_test(const Arguments& args) {13 HandleScope scope;14 char* str = *String::Utf8Value(args[0]->ToString());15 printf("nfc_test called with %s16", str);17 return scope.Close(String::New("nfc_test returned"));18}19void init(Handle<Object> exports) {20 exports->Set(String::NewSymbol("nfc_test"), FunctionTemplate::New(nfc_test)->GetFunction());21}22NODE_MODULE(wpt_nfc, init)23var wpt_nfc = require('wpt_nfc');24wpt_nfc.nfc_test('hello world', function (err, data) {25 if (err) {26 console.log(err);27 } else {28 console.log(data);29 }30});31var wpt_nfc = require('w
Using AI Code Generation
1var wpt_nfc = require('wpt_nfc');2wpt_nfc.nfc_test();3exports.nfc_test = function() {4 console.log('nfc_test method called');5}6var wpt_nfc = require('wpt_nfc');7wpt_nfc.nfc_test('Hello World');8exports.nfc_test = function(arg) {9 console.log('nfc_test method called with argument: '+arg);10}11var wpt_nfc = require('wpt_nfc');12var result = wpt_nfc.nfc_test();13console.log('result: '+result);14exports.nfc_test = function() {15 return 'nfc_test method called';16}17var wpt_nfc = require('wpt_nfc');18var result = wpt_nfc.nfc_test();19console.log('result: '+result);20exports.nfc_test = function() {21 return 'nfc_test method called';22}23var wpt_nfc = require('wpt_nfc');24var result = wpt_nfc.nfc_test();25console.log('result: '+result);
Using AI Code Generation
1var wptools = require('wptools');2var nfc_test = wptools.nfc_test;3var str = 'test';4nfc_test(str, function (err, result) {5 if (err) {6 console.log('error: ' + err);7 } else {8 console.log(result);9 }10});11var wptools = require('wptools');12var nfd_test = wptools.nfd_test;13var str = 'test';14nfd_test(str, function (err, result) {15 if (err) {16 console.log('error: ' + err);17 } else {18 console.log(result);19 }20});21var wptools = require('wptools');22var nfd_test = wptools.nfd_test;23var str = 'test';24nfd_test(str, function (err, result) {25 if (err) {26 console.log('error: ' + err);27 } else {28 console.log(result);29 }30});31var wptools = require('wptools');32var nfc_test = wptools.nfc_test;33var str = 'test';34nfc_test(str, function (err, result) {35 if (err) {36 console.log('error: ' + err);37 } else {38 console.log(result);39 }40});41var wptools = require('wptools');42var nfd_test = wptools.nfd_test;43var str = 'test';44nfd_test(str, function (err, result) {45 if (err) {46 console.log('error: ' + err);47 } else {48 console.log(result);49 }50});51var wptools = require('wptools');52var nfd_test = wptools.nfd_test;53var str = 'test';
Using AI Code Generation
1var nfc = tizen.nfc;2nfc.setNDEFListener(onNDEF, function(e) {3 console.log("Error: " + e.message);4});5function onNDEF(ndefMessage) {6 console.log("NDEF Message received: " + JSON.stringify(ndefMessage));7}
Using AI Code Generation
1wpt_nfc.nfc_test();2nfc_test: function() {3 return cordova.exec( this.nfc_test_success, this.nfc_test_error, "WptNfcPlugin", "nfc_test", []);4},5nfc_test_success: function(result) {6 alert("result: " + result);7},8nfc_test_error: function(error) {9 alert("error: " + error);10},
Using AI Code Generation
1var nfc = new WebNFC();2var ndef = new NDEF();3var message = new Array();4message.push(ndef.textRecord("Hello World!"));5nfc.write(message);6var wpt_nfc = {7 nfc_test: function (message) {8 }9}
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!