def test_parse(git_urls): for url, d in git_urls.items(): p = parser.Parser(url) result = p.parse() assert d['pathname'] == result.pathname assert d['protocols'] == result.protocols assert d['protocol'] == result.protocol assert d['href'] == result.href assert d['resource'] == result.resource assert d['user'] == result.user assert d['port'] == result.port assert d['name'] == result.name assert d['owner'] == result.owner
def test_parse(request, test_input): url_data = request.getfixturevalue(test_input) for url, d in url_data.items(): p = parser.Parser(url) result = p.parse() assert d['pathname'] == result.pathname assert d['protocols'] == result.protocols assert d['protocol'] == result.protocol assert d['href'] == result.href assert d['resource'] == result.resource assert d['user'] == result.user assert d['port'] == result.port assert d['name'] == result.name assert d['owner'] == result.owner
def test_get_protocol_one_protocols(): p = parser.Parser('ssh://[email protected]/Owner/Repository.git') assert ['ssh'] == p._get_protocols()
def test_get_protocol_no_protocols(): p = parser.Parser('//example.com/foo') assert [] == p._get_protocols()
def test_parse_raises_on_invalid_string(invalid_strings): for invalid_string in invalid_strings: p = parser.Parser(invalid_string) with pytest.raises(parser.ParserError): p.parse()
def test_parse_raises_on_invalid_url(invalid_urls): for url in invalid_urls: p = parser.Parser(url) with pytest.raises(parser.ParserError): p.parse()
def parse(url): # pragma: no cover p = parser.Parser(url) return p.parse()