Best JavaScript code snippet using devicefarmer-stf
index.test.ts
Source:index.test.ts
1import { expect } from 'chai';2import * as URL from '../src';3describe('URL', function () {4 describe('.join()', function () {5 it('should remove unnecessary slashes', function () {6 expect(URL.join('/v1', '/', '/users')).to.equal('/v1/users');7 });8 it('should preserve protocol', function () {9 expect(URL.join('http://example.com', 'v1', 'users')).to.equal('http://example.com/v1/users');10 });11 });12 describe('.ensureHTTPProtocol()', function () {13 it('should add missing protocol - default to http', function () {14 expect(URL.ensureHTTPProtocol('example.com/v1/user')).to.equal('http://example.com/v1/user');15 });16 it('should leave the parameter unchanged', function () {17 expect(URL.ensureHTTPProtocol('http://example.com/v1/user')).to.equal('http://example.com/v1/user');18 });19 it('should change from http to https', function () {20 expect(URL.ensureHTTPProtocol('http://example.com/v1/user', true)).to.equal('https://example.com/v1/user');21 });22 it('should add https', function () {23 expect(URL.ensureHTTPProtocol('example.com/v1/user', true)).to.equal('https://example.com/v1/user');24 });25 it('should add http', function () {26 expect(URL.ensureHTTPProtocol('example.com/v1/user', false)).to.equal('http://example.com/v1/user');27 });28 });29 describe('.ensureLeadingSlash()', function () {30 it('should add leading slash if non present', () => {31 expect(URL.ensureLeadingSlash('foo')).to.equal('/foo');32 });33 it('should preserve leading slash', () => {34 expect(URL.ensureLeadingSlash('/foo')).to.equal('/foo');35 });36 it('should dedup leading slashes', () => {37 expect(URL.ensureLeadingSlash('//foo')).to.equal('/foo');38 });39 it('should remove leading slash', () => {40 expect(URL.ensureLeadingSlash('/foo', false)).to.equal('foo');41 });42 it('should leave url untouched', () => {43 expect(URL.ensureLeadingSlash('foo', false)).to.equal('foo');44 });45 });46 describe('.ensureTrailingSlash()', function () {47 it('should add trailing slash if non present', () => {48 expect(URL.ensureTrailingSlash('foo')).to.equal('foo/');49 });50 it('should preserve trailing slash', () => {51 expect(URL.ensureTrailingSlash('foo/')).to.equal('foo/');52 });53 it('should dedup trailing slashes', () => {54 expect(URL.ensureTrailingSlash('foo//')).to.equal('foo/');55 });56 it('should remove trailing slash', () => {57 expect(URL.ensureTrailingSlash('foo/', false)).to.equal('foo');58 });59 it('should leave the url untouched', () => {60 expect(URL.ensureTrailingSlash('foo', false)).to.equal('foo');61 });62 });63 describe('.ensureSlashes()', function () {64 it('should add leading slash', function () {65 expect(URL.ensureSlashes('foo', { leading: true })).to.equal('/foo');66 });67 it('should add trailing slash', function () {68 expect(URL.ensureSlashes('foo', { trailing: true })).to.equal('foo/');69 });70 it('should add trailing and leading slashes', function () {71 expect(URL.ensureSlashes('foo', { leading: true, trailing: true })).to.equal('/foo/');72 });73 it('should remove leading slash', function () {74 expect(URL.ensureSlashes('/foo', { leading: false })).to.equal('foo');75 });76 it('should remove trailing slash', function () {77 expect(URL.ensureSlashes('foo/', { trailing: false })).to.equal('foo');78 });79 it('should remove trailing and leading slashes', function () {80 expect(URL.ensureSlashes('/foo/', { leading: false, trailing: false })).to.equal('foo');81 });82 });...
ensure-http-protocol.ts
Source:ensure-http-protocol.ts
1import { HTTP_PROTOCOL_REG } from '../constants/http-protocol-reg';2import { join } from './join';3/**4 * @description Ensure that an HTTP protocol is present. Set useHTTPS to `true` to force HTTPS. Set it to `false` to5 * force HTTP. Let it blank to keep the original protocol or just ensure HTTP.6 *7 * @example8 * ```typescript9 * URL.ensureHTTPProtocol('example.com'); // http://example.com10 * ```11 *12 * @example13 * ```typescript14 * URL.ensureHTTPProtocol('example.com', true); // https://example.com15 * ```16 *17 * @example18 * ```typescript19 * URL.ensureHTTPProtocol('https://example.com', false); // http://example.com20 * ```21 *22 * @example23 * ```typescript24 * URL.ensureHTTPProtocol('http://example.com', true); // https://example.com25 * ```26 */27export function ensureHTTPProtocol(url: string, useHTTPS: boolean | undefined = undefined) {28 const forceProtocol = useHTTPS !== undefined;29 const matches = url.match(HTTP_PROTOCOL_REG);30 let protocol: string = matches ? matches[0] : '';31 if (protocol) {32 url = url.replace(protocol, '');33 } else {34 protocol = ['http', useHTTPS ? 's' : '', '://'].join('');35 }36 if (useHTTPS) {37 protocol = protocol.replace(/^http(s)?/, 'https');38 } else if (forceProtocol) {39 protocol = protocol.replace(/^http(s)?/, 'http');40 }41 return join(protocol, url);...
ensureHttpProtocol.test.ts
Source:ensureHttpProtocol.test.ts
2const testUrl1 = 'http://www.google.com';3const testUrl2 = 'https://www.google.com';4const testUrl3 = 'www.google.com';5test('should return a string with http protocol', () => {6 expect(ensureHttpProtocol(testUrl1)).toBe('http://www.google.com');7});8test('should return a string with https protocol', () => {9 expect(ensureHttpProtocol(testUrl2)).toBe('https://www.google.com');10});11test('should return a string with https protocol', () => {12 expect(ensureHttpProtocol(testUrl3)).toBe('https://www.google.com');13});14test('should return a string with http protocol when useHttp is set to true', () => {15 expect(ensureHttpProtocol(testUrl3, true)).toBe('http://www.google.com');...
Using AI Code Generation
1var utils = require('devicefarmer-stf-utils');2var url = "google.com";3var urlWithProtocol = utils.ensureHttpProtocol(url);4console.log(urlWithProtocol);5var utils = require('devicefarmer-stf-utils');6var urlWithProtocol = utils.ensureHttpProtocol(url);7console.log(urlWithProtocol);8var utils = require('devicefarmer-stf-utils');9var urlWithProtocol = utils.ensureHttpProtocol(url);10console.log(urlWithProtocol);11var utils = require('devicefarmer-stf-utils');12var urlWithProtocol = utils.ensureHttpProtocol(url);13console.log(urlWithProtocol);14var utils = require('devicefarmer-stf-utils');15var urlWithProtocol = utils.ensureHttpProtocol(url, true);16console.log(urlWithProtocol);17var utils = require('devicefarmer-stf-utils');18var urlWithProtocol = utils.ensureHttpProtocol(url, true);19console.log(urlWithProtocol);20var utils = require('devicefarmer-stf-utils');21var urlWithProtocol = utils.ensureHttpProtocol(url, true);22console.log(urlWithProtocol);23var utils = require('devicefarmer-stf-utils');
Using AI Code Generation
1var utils = require('devicefarmer-stf-utils');2var url = 'www.google.com';3console.log(utils.ensureHttpProtocol(url));4var utils = require('devicefarmer-stf-utils');5var url = 'www.google.com';6console.log(utils.ensureHttpsProtocol(url));7var utils = require('devicefarmer-stf-utils');8var url = 'www.google.com';9console.log(utils.ensureProtocol(url, 'http'));10var utils = require('devicefarmer-stf-utils');11var url = 'www.google.com';12console.log(utils.ensureProtocol(url, 'https'));13var utils = require('devicefarmer-stf-utils');14var url = 'www.google.com';15console.log(utils.ensureProtocol(url, 'ftp'));16var utils = require('devicefarmer-stf-utils');17var url = 'www.google.com';18console.log(utils.ensureProtocol(url, 'gopher'));19var utils = require('devicefarmer-stf-utils');20var url = 'www.google.com';21console.log(utils.ensureProtocol(url, 'file'));22var utils = require('devicefarmer-stf-utils');23var url = 'www.google.com';24console.log(utils.ensureProtocol(url, 'smb'));25var utils = require('devicefarmer-stf-utils');26var url = 'www.google.com';27console.log(utils.ensureProtocol(url, ''));28var utils = require('devicefarmer-stf-utils');
Using AI Code Generation
1var utils = require("devicefarmer-stf-utils");2var newUrl = utils.ensureHttpProtocol(url);3console.log(newUrl);4var utils = require("devicefarmer-stf-utils");5var url = "www.google.com";6var newUrl = utils.ensureHttpProtocol(url);7console.log(newUrl);8var utils = require("devicefarmer-stf-utils");9var newUrl = utils.ensureHttpProtocol(url);10console.log(newUrl);11var utils = require("devicefarmer-stf-utils");12var newUrl = utils.ensureHttpProtocol(url, true);13console.log(newUrl);14var utils = require("devicefarmer-stf-utils");15var newUrl = utils.ensureHttpProtocol(url, false);16console.log(newUrl);17var utils = require("devicefarmer-stf-utils");18var url = "www.google.com";19var newUrl = utils.ensureHttpProtocol(url, true);20console.log(newUrl);21var utils = require("devicefarmer-stf-utils");22var url = "www.google.com";23var newUrl = utils.ensureHttpProtocol(url, false);24console.log(newUrl);25var utils = require("devicefarmer-stf-utils");26var newUrl = utils.ensureHttpProtocol(url, true);27console.log(newUrl);28var utils = require("devicefarmer-stf-utils");29var newUrl = utils.ensureHttpProtocol(url, false);30console.log(newUrl);
Using AI Code Generation
1var stfUtils = require("devicefarmer-stf-utils");2var result = stfUtils.ensureHttpProtocol(url);3console.log(result);4var stfUtils = require("devicefarmer-stf-utils");5var result = stfUtils.ensureHttpProtocol(url);6console.log(result);7var stfUtils = require("devicefarmer-stf-utils");8var url = "www.google.com";9var result = stfUtils.ensureHttpProtocol(url);10console.log(result);11var stfUtils = require("devicefarmer-stf-utils");12var url = "google.com";13var result = stfUtils.ensureHttpProtocol(url);14console.log(result);15var stfUtils = require("devicefarmer-stf-utils");16var url = "google";17var result = stfUtils.ensureHttpProtocol(url);18console.log(result);
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!!