chai-url
A chai assertion plugin for working with urlsProvides a number of assertion helpers for working with urls.
Usage
const chai = require('chai');
chai.use(require('chai-url'));
chai.expect('http://example.com/foo/bar').to.have.path('/foo/bar');
chai.expect('http://example.com/foo/bar').to.have.protocol('http');
Available matchers
path
pathname
port
hostname
protocol
auth
hash
In each case, the property is tested against the corresponding property from node's url.parse method.
In the case of
hash
and protocol
properties which may be prefixed/suffixed with #
and :
respectively these characters are optional and will match with or without their presence.Partial matching
Thepath
, pathname
, hostname
, auth
and hash
functions can also perform partial matching based on substrings by using a contains
clause in the test statement.expect('http://example.com/foo/bar').to.contain.path('/foo');