Best JavaScript code snippet using wpt
network_utils_spec.js
Source:network_utils_spec.js
1/**2 * @licstart The following is the entire license notice for the3 * Javascript code in this page4 *5 * Copyright 2017 Mozilla Foundation6 *7 * Licensed under the Apache License, Version 2.0 (the "License");8 * you may not use this file except in compliance with the License.9 * You may obtain a copy of the License at10 *11 * http://www.apache.org/licenses/LICENSE-2.012 *13 * Unless required by applicable law or agreed to in writing, software14 * distributed under the License is distributed on an "AS IS" BASIS,15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.16 * See the License for the specific language governing permissions and17 * limitations under the License.18 *19 * @licend The above is the entire license notice for the20 * Javascript code in this page21 */22'use strict';23var _network_utils = require('../../display/network_utils');24var _util = require('../../shared/util');25describe('network_utils', function () {26 describe('validateRangeRequestCapabilities', function () {27 var defaultValues = {28 allowRangeRequests: false,29 suggestedLength: undefined30 };31 it('rejects range chunk sizes that are not larger than zero', function () {32 expect(function () {33 (0, _network_utils.validateRangeRequestCapabilities)({ rangeChunkSize: 0 });34 }).toThrow(new Error('Range chunk size must be larger than zero'));35 });36 it('rejects disabled or non-HTTP range requests', function () {37 expect((0, _network_utils.validateRangeRequestCapabilities)({38 disableRange: true,39 isHttp: true,40 rangeChunkSize: 6441 })).toEqual(defaultValues);42 expect((0, _network_utils.validateRangeRequestCapabilities)({43 disableRange: false,44 isHttp: false,45 rangeChunkSize: 6446 })).toEqual(defaultValues);47 });48 it('rejects invalid Accept-Ranges header values', function () {49 expect((0, _network_utils.validateRangeRequestCapabilities)({50 disableRange: false,51 isHttp: true,52 getResponseHeader: function getResponseHeader(headerName) {53 if (headerName === 'Accept-Ranges') {54 return 'none';55 }56 },57 rangeChunkSize: 6458 })).toEqual(defaultValues);59 });60 it('rejects invalid Content-Encoding header values', function () {61 expect((0, _network_utils.validateRangeRequestCapabilities)({62 disableRange: false,63 isHttp: true,64 getResponseHeader: function getResponseHeader(headerName) {65 if (headerName === 'Accept-Ranges') {66 return 'bytes';67 } else if (headerName === 'Content-Encoding') {68 return 'gzip';69 }70 },71 rangeChunkSize: 6472 })).toEqual(defaultValues);73 });74 it('rejects invalid Content-Length header values', function () {75 expect((0, _network_utils.validateRangeRequestCapabilities)({76 disableRange: false,77 isHttp: true,78 getResponseHeader: function getResponseHeader(headerName) {79 if (headerName === 'Accept-Ranges') {80 return 'bytes';81 } else if (headerName === 'Content-Encoding') {82 return null;83 } else if (headerName === 'Content-Length') {84 return 'eight';85 }86 },87 rangeChunkSize: 6488 })).toEqual(defaultValues);89 });90 it('rejects file sizes that are too small for range requests', function () {91 expect((0, _network_utils.validateRangeRequestCapabilities)({92 disableRange: false,93 isHttp: true,94 getResponseHeader: function getResponseHeader(headerName) {95 if (headerName === 'Accept-Ranges') {96 return 'bytes';97 } else if (headerName === 'Content-Encoding') {98 return null;99 } else if (headerName === 'Content-Length') {100 return 8;101 }102 },103 rangeChunkSize: 64104 })).toEqual({105 allowRangeRequests: false,106 suggestedLength: 8107 });108 });109 it('accepts file sizes large enough for range requests', function () {110 expect((0, _network_utils.validateRangeRequestCapabilities)({111 disableRange: false,112 isHttp: true,113 getResponseHeader: function getResponseHeader(headerName) {114 if (headerName === 'Accept-Ranges') {115 return 'bytes';116 } else if (headerName === 'Content-Encoding') {117 return null;118 } else if (headerName === 'Content-Length') {119 return 8192;120 }121 },122 rangeChunkSize: 64123 })).toEqual({124 allowRangeRequests: true,125 suggestedLength: 8192126 });127 });128 });129 describe('createResponseStatusError', function () {130 it('handles missing PDF file responses', function () {131 expect((0, _network_utils.createResponseStatusError)(404, 'https://foo.com/bar.pdf')).toEqual(new _util.MissingPDFException('Missing PDF "https://foo.com/bar.pdf".'));132 expect((0, _network_utils.createResponseStatusError)(0, 'file://foo.pdf')).toEqual(new _util.MissingPDFException('Missing PDF "file://foo.pdf".'));133 });134 it('handles unexpected responses', function () {135 expect((0, _network_utils.createResponseStatusError)(302, 'https://foo.com/bar.pdf')).toEqual(new _util.UnexpectedResponseException('Unexpected server response (302) while retrieving PDF ' + '"https://foo.com/bar.pdf".'));136 expect((0, _network_utils.createResponseStatusError)(0, 'https://foo.com/bar.pdf')).toEqual(new _util.UnexpectedResponseException('Unexpected server response (0) while retrieving PDF ' + '"https://foo.com/bar.pdf".'));137 });138 });139 describe('validateResponseStatus', function () {140 it('accepts valid response statuses', function () {141 expect((0, _network_utils.validateResponseStatus)(200)).toEqual(true);142 expect((0, _network_utils.validateResponseStatus)(206)).toEqual(true);143 });144 it('rejects invalid response statuses', function () {145 expect((0, _network_utils.validateResponseStatus)(302)).toEqual(false);146 expect((0, _network_utils.validateResponseStatus)(404)).toEqual(false);147 expect((0, _network_utils.validateResponseStatus)(null)).toEqual(false);148 expect((0, _network_utils.validateResponseStatus)(undefined)).toEqual(false);149 });150 });...
Using AI Code Generation
1var wpt = require('webpagetest');2var wpt = new WebPageTest('www.webpagetest.org', 'A.12345678901234567890');3wpt.validateRangeRequestCapabilities('www.webpagetest.org', function(err, data) {4 console.log(data);5});6{7}8var wpt = require('webpagetest');9var wpt = new WebPageTest('www.webpagetest.org', 'A.12345678901234567890');10wpt.getLocations(function(err, data) {11 console.log(data);12});13{14 "locations": {15 "Dulles:Chrome": {16 },17 "Dulles:Firefox": {18 },19 "Dulles:IE": {20 },21 "Dulles:Opera": {
Using AI Code Generation
1var wptools = require('wptools');2 if (err) {3 console.log(err);4 }5 else {6 console.log(result);7 }8});9{ 'Accept-Ranges': 'none',10 'Content-Type': 'text/html; charset=ISO-8859-1',11 'X-XSS-Protection': '1; mode=block',12 'Content-Encoding': 'gzip' }13{ 'Accept-Ranges': 'none',14 'Content-Type': 'text/html; charset=ISO-8859-1',15 'X-XSS-Protection': '1; mode=block',16 'Content-Encoding': 'gzip' }
Using AI Code Generation
1var wptools = require('wp-tools');2var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;3var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'bytes' } });4console.log(capabilities);5var wptools = require('wp-tools');6var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;7var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'none' } });8console.log(capabilities);9var wptools = require('wp-tools');10var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;11var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'bytes' } }, 100);12console.log(capabilities);13var wptools = require('wp-tools');14var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;15var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'bytes' } }, 100, 200);16console.log(capabilities);17var wptools = require('wp-tools');18var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;19var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'bytes' } }, 100, 200, 200);20console.log(capabilities);21var wptools = require('wp-tools');22var validateRangeRequestCapabilities = wptools.validateRangeRequestCapabilities;23var capabilities = validateRangeRequestCapabilities({ headers: { 'accept-ranges': 'bytes' } }, 100, 200, 100);24console.log(capabilities);
Using AI Code Generation
1var wpt = require('wpt');2var wptOptions = {3 "mobileEmulationUserAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Moto G (4) Build/MPJ24.139-64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.137 Mobile Safari/537.36",4};5wpt.validateRangeRequestCapabilities(wptOptions, function (err, data) {6 if (err) {7 console.log(err);8 } else {9 console.log(data);10 }11});12{
Using AI Code Generation
1var wpt = require('./wpt.js');2wpt.validateRangeRequestCapabilities(url, function(err, result) {3 if (err) {4 console.log(err);5 } else {6 console.log(result);7 }8});9var request = require('request');10module.exports = {11 validateRangeRequestCapabilities: function(url, callback) {12 var options = {13 headers: {14 }15 };16 request(options, function(error, response, body) {17 if (!error && response.statusCode == 206) {18 callback(null, 'Range requests are supported on the server');19 } else {20 callback(null, 'Range requests are not supported on the server');21 }22 });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!!