def test_port(self, config_stub): config_stub.val.url.incdec_segments = ['port'] base_url = QUrl('http://localhost:8000') new_url = navigate.incdec(base_url, 1, 'increment') assert new_url == QUrl('http://localhost:8001') new_url = navigate.incdec(base_url, 1, 'decrement') assert new_url == QUrl('http://localhost:7999')
def test_leading_zeroes(self, number, expected, inc_or_dec, config_stub): config_stub.val.url.incdec_segments = ['path'] url = 'http://example.com/{}' base_url = QUrl(url.format(number)) expected_url = QUrl(url.format(expected)) new_url = navigate.incdec(base_url, 1, inc_or_dec) assert new_url == expected_url
def test_count(self, inc_or_dec, value, url, count, config_stub): config_stub.val.url.incdec_segments = ['host', 'path', 'query', 'anchor'] base_value = value.format(20) if inc_or_dec == 'increment': expected_value = value.format(20 + count) else: if count > 20: return expected_value = value.format(20 - count) base_url = QUrl(url.format(base_value)) expected_url = QUrl(url.format(expected_value)) new_url = navigate.incdec(base_url, count, inc_or_dec) assert new_url == expected_url
def test_incdec(self, incdec, value, url, config_stub): if (value == '{}foo' and url == 'http://example.com/path with {} spaces'): pytest.xfail("https://github.com/qutebrowser/qutebrowser/issues/4917") config_stub.val.url.incdec_segments = ['host', 'path', 'query', 'anchor'] # The integer used should not affect test output, as long as it's # bigger than 1 # 20 was chosen by dice roll, guaranteed to be random base_value = value.format(20) if incdec == 'increment': expected_value = value.format(21) else: expected_value = value.format(19) base_url = QUrl(url.format(base_value)) expected_url = QUrl(url.format(expected_value)) assert navigate.incdec(base_url, 1, incdec) == expected_url
def test_port_default(self, config_stub): """Test that a default port (with url.port() == -1) is not touched.""" config_stub.val.url.incdec_segments = ['port'] base_url = QUrl('http://localhost') with pytest.raises(navigate.Error): navigate.incdec(base_url, 1, 'increment')
def test_wrong_mode(self): """Test if incdec rejects a wrong parameter for inc_or_dec.""" valid_url = QUrl("http://example.com/0") with pytest.raises(ValueError): navigate.incdec(valid_url, 1, "foobar")
def test_invalid_url(self): with pytest.raises(urlutils.InvalidUrlError): navigate.incdec(QUrl(""), 1, "increment")
def test_number_below_0(self, url, count): with pytest.raises(navigate.Error): navigate.incdec(QUrl(url), count, 'decrement')
def test_no_number(self, url): with pytest.raises(navigate.Error): navigate.incdec(QUrl(url), 1, "increment")
def test_segment_ignored(self, url, segments, expected, config_stub): config_stub.val.url.incdec_segments = segments new_url = navigate.incdec(QUrl(url), 1, 'increment') assert new_url == QUrl(expected)