Best JavaScript code snippet using wpt
login.test.ts
Source:login.test.ts
...34 expectedTargetLabel?: string;35 options?: Options;36 event?: HandlerEvent;37 }38 async function redirectTest({39 expectedRedirectCookie = `" + window.location.href + "`,40 expectedTitle = "",41 expectedRedirectUrl = fakeOktaUrl,42 expectedTargetLabel = "Okta",43 options = commonOptions,44 event = loginEvent,45 }: RedirectTestArgs): Promise<void> {46 const handler = getLoginHandler(options);47 const result = (await handler(48 event,49 emptyContext,50 emptyCallback51 )) as HandlerResponse;52 const body = result.body ?? "";53 expect(result.statusCode).toEqual(200);54 expect(body).toContain(55 "<title>Login" + (expectedTitle ? ": " + expectedTitle : "") + "</title>"56 );57 expect(body).toContain(`Redirecting to ${expectedTargetLabel} to login...`);58 expect(body).toContain(59 `document.cookie = "redirect_to=${expectedRedirectCookie}; path=/";`60 );61 if (options.unsafe?.debug) {62 expect(body).toContain(63 `a href="${expectedRedirectUrl}">Proceed to ${expectedTargetLabel}</a> (local dev mode)`64 );65 } else {66 expect(body).toContain(67 `window.location.href = "${expectedRedirectUrl}";`68 );69 }70 }71 test("redirect to Okta", async () => {72 redirectTest({});73 });74 test("redirect to Okta in debug mode", async () => {75 redirectTest({76 options: {77 ...commonOptions,78 unsafe: {79 debug: true,80 },81 },82 });83 });84 test("redirect to Okta with redirect_to", async () => {85 redirectTest({86 expectedRedirectCookie: "/docs/foo",87 event: {88 ...loginEvent,89 rawUrl: loginEvent.rawUrl + "?redirect_to=%2Fdocs%2Ffoo",90 queryStringParameters: {91 redirect_to: "/docs/foo",92 },93 },94 });95 });96 test("redirect to Okta with JavaScript injection attack", async () => {97 const javaScriptInjection = `"; window.alert("hi"); //`;98 redirectTest({99 expectedRedirectCookie: "/%22;%20window.alert(%22hi%22);%20//",100 event: {101 ...loginEvent,102 rawUrl:103 loginEvent.rawUrl +104 "?redirect_to=" +105 encodeURIComponent(javaScriptInjection),106 queryStringParameters: {107 redirect_to: javaScriptInjection,108 },109 },110 });111 });112 test("redirect to Okta with preview deploy URL", async () => {113 const url = "http://www.local.twilio.com:8888/";114 redirectTest({115 expectedRedirectCookie: url,116 event: {117 ...loginEvent,118 rawUrl: loginEvent.rawUrl + "?redirect_to=" + encodeURIComponent(url),119 queryStringParameters: {120 redirect_to: url,121 },122 },123 });124 });125 test("redirect to Okta with redirect_to using fallback raw url", async () => {126 redirectTest({127 expectedRedirectCookie: "/docs/foo",128 event: {129 ...loginEvent,130 rawUrl: "",131 queryStringParameters: {132 redirect_to: "/docs/foo",133 },134 },135 });136 });137 test("redirect to Okta with custom title", async () => {138 redirectTest({139 expectedTitle: "My Cool Site",140 options: { ...commonOptions, siteTitle: "My Cool Site" },141 });142 });143 test("redirect to production site", async () => {144 redirectTest({145 expectedRedirectUrl:146 "https://app.example.com/.netlify/functions/login?redirect_to=http%3A%2F%2Flocalhost%3A8888%2F.netlify%2Ffunctions%2Fauth",147 expectedTargetLabel: "production site",148 options: {149 prodBaseUrl: "https://app.example.com",150 },151 });152 });...
request-redirect.any.window.js
Source:request-redirect.any.window.js
1// META: title=EventSource: redirect2 function redirectTest(status) {3 var test = async_test(document.title + " (" + status +")")4 test.step(function() {5 var source = new EventSource("/common/redirect.py?location=/eventsource/resources/message.py&status=" + status)6 source.onopen = function() {7 test.step(function() {8 assert_equals(this.readyState, this.OPEN)9 this.close()10 }, this)11 test.done()12 }13 source.onerror = function() {14 test.step(function() { assert_unreached() })15 test.done()16 }17 })18 }19 redirectTest("301")20 redirectTest("302")21 redirectTest("303")...
Using AI Code Generation
1var wpt = require('./wpt.js');2wpt.redirectTest('www.google.com', function(err, data) {3 if (err) {4 console.log(err);5 } else {6 console.log(data);7 }8});9var request = require("request");10var wpt = {11 redirectTest: function(url, callback) {12 var options = {13 };14 request(options, function(err, response, body) {15 if (err) {16 callback(err, null);17 } else {18 callback(null, body);19 }20 });21 }22};23module.exports = wpt;
Using AI Code Generation
1 if (err) {2 console.log(err);3 } else {4 console.log(data);5 }6});7{ statusCode: 200,8 { statusCode: 200,
Using AI Code Generation
1var wpt = require('./wpt.js');2var wptTest = new wpt();3 if (err) {4 console.log(err);5 } else {6 console.log(data);7 }8});9{ statusCode: 200,10 { statusCode: 200,11{ statusCode: 400,12 { statusCode: 400,13 data: 'Invalid URL' } }14{ statusCode: 400,15 { statusCode: 400,16 data: 'Invalid URL' } }17{ statusCode: 400,18 { statusCode: 400,19 data: 'Invalid URL' } }20{ statusCode: 400,21 { statusCode: 400,22 data: 'Invalid URL' } }23{ statusCode: 400,24 { statusCode: 400,25 data: 'Invalid URL' } }26{ statusCode: 400,27 { statusCode: 400,28 data: 'Invalid URL' } }29{ statusCode: 400,30 { statusCode: 400,31 data: 'Invalid URL' } }32{ statusCode: 400,33 { statusCode: 400,34 data: 'Invalid URL' } }35{ statusCode: 400,36 { statusCode: 400,
Using AI Code Generation
1var wpt = require('./wpt.js');2var wpt = new Wpt();3 if (err) {4 console.log(err);5 } else {6 console.log(data);7 }8});9{ statusCode: 200,10 runs: 1 }11var wpt = new Wpt();12 if (err) {13 console.log(err);14 } else {15 console.log(data);16 }17});18var wpt = new Wpt();19 if (err) {20 console.log(err);21 } else {22 console.log(data);23 }24});
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!!