UNPKG

@revoloo/cypress6

Version:

Cypress.io end to end testing tool

53 lines (42 loc) 1.59 kB
import { blocked } from '../..' import { expect } from 'chai' const hosts = [ '*.google.com', 'shop.apple.com', 'localhost:6666', 'adwords.com', '*yahoo.com', ] const matchesStr = function (url, host, val) { const m = blocked.matches(url, host) expect(!!m).to.eq(val, `url: '${url}' did not pass`) } const matchesArray = function (url, val) { const m = blocked.matches(url, hosts) expect(!!m).to.eq(val, `url: '${url}' did not pass`) } const matchesHost = (url, host) => { expect(blocked.matches(url, hosts)).to.eq(host) } describe('lib/blocked', () => { it('handles hosts, ports, wildcards', () => { matchesArray('https://mail.google.com/foo', true) matchesArray('https://shop.apple.com/bar', true) matchesArray('http://localhost:6666/', true) matchesArray('https://localhost:6666/', true) matchesArray('https://adwords.com:443/', true) matchesArray('http://adwords.com:80/quux', true) matchesArray('https://yahoo.com:443/asdf', true) matchesArray('http://mail.yahoo.com:443/asdf', true) matchesArray('https://buy.adwords.com:443/', false) matchesArray('http://localhost:66667', false) matchesArray('http://mac.apple.com/', false) matchesStr('https://localhost:6666/foo', 'localhost:6666', true) matchesStr('https://localhost:6666/foo', 'localhost:5555', false) }) it('returns the matched host', () => { matchesHost('https://shop.apple.com:443/foo', 'shop.apple.com') matchesHost('http://mail.yahoo.com:80/bar', '*yahoo.com') matchesHost('https://localhost:6666/bar', 'localhost:6666') }) })