|
// Dependencies
|
|
const isSsh = require("../lib")
|
|
, tester = require("tester")
|
|
;
|
|
|
|
// Prepare the input data
|
|
var input = [
|
|
// Secure Shell Transport Protocol (SSH)
|
|
["ssh://user@host.xz:port/path/to/repo.git/", true]
|
|
, ["ssh://user@host.xz/path/to/repo.git/", true]
|
|
, ["ssh://host.xz:port/path/to/repo.git/", true]
|
|
, ["ssh://host.xz/path/to/repo.git/", true]
|
|
, ["ssh://user@host.xz/path/to/repo.git/", true]
|
|
, ["ssh://host.xz/path/to/repo.git/", true]
|
|
, ["ssh://user@host.xz/~user/path/to/repo.git/", true]
|
|
, ["ssh://host.xz/~user/path/to/repo.git/", true]
|
|
, ["ssh://user@host.xz/~/path/to/repo.git", true]
|
|
, ["ssh://host.xz/~/path/to/repo.git", true]
|
|
, ["user@host.xz:/path/to/repo.git/", true]
|
|
, ["user@host.xz:~user/path/to/repo.git/", true]
|
|
, ["user@host.xz:path/to/repo.git", true]
|
|
, ["host.xz:/path/to/repo.git/", true]
|
|
, ["host.xz:path/to/repo.git", true]
|
|
, ["host.xz:~user/path/to/repo.git/", true]
|
|
, ["rsync://host.xz/path/to/repo.git/", true]
|
|
|
|
// Git Transport Protocol
|
|
, ["git://host.xz/path/to/repo.git/", false]
|
|
, ["git://host.xz/~user/path/to/repo.git/", false]
|
|
|
|
// HTTP/S Transport Protocol
|
|
, ["http://host.xz/path/to/repo.git/", false]
|
|
, ["https://host.xz/path/to/repo.git/", false]
|
|
|
|
// Local (Filesystem) Transport Protocol
|
|
, ["/path/to/repo.git/", false]
|
|
, ["path/to/repo.git/", false]
|
|
, ["~/path/to/repo.git", false]
|
|
, ["file:///path/to/repo.git/", false]
|
|
, ["file://~/path/to/repo.git/", false]
|
|
];
|
|
|
|
tester.describe("check urls", test => {
|
|
// Run the tests
|
|
input.forEach(c => {
|
|
test.it(c[0] + " is supposed " + (!c[1] ? "not " : "") + "to be a ssh url", () => {
|
|
test.expect(isSsh(c[0])).toBe(c[1]);
|
|
});
|
|
});
|
|
});
|