Пример #1
0
def test_subapp_rule_resource(app):
    subapp = web.Application()
    subapp.router.add_get('/', make_handler())
    rule = Domain('example.com')
    assert rule.get_info() == {'domain': 'example.com'}
    resource = app.add_domain('example.com', subapp)
    assert resource.canonical == 'example.com'
    assert resource.get_info() == {'rule': resource._rule, 'app': subapp}
    resource.add_prefix('/a')
    resource.raw_match('/b')
    assert len(resource)
    assert list(resource)
    assert repr(resource).startswith('<MatchedSubAppResource')
    with pytest.raises(RuntimeError):
        resource.url_for()
Пример #2
0
def test_subapp_rule_resource(app: Any) -> None:
    subapp = web.Application()
    subapp.router.add_get("/", make_handler())
    rule = Domain("example.com")
    assert rule.get_info() == {"domain": "example.com"}
    resource = app.add_domain("example.com", subapp)
    assert resource.canonical == "example.com"
    assert resource.get_info() == {"rule": resource._rule, "app": subapp}
    resource.add_prefix("/a")
    resource.raw_match("/b")
    assert len(resource)
    assert list(resource)
    assert repr(resource).startswith("<MatchedSubAppResource")
    with pytest.raises(RuntimeError):
        resource.url_for()
Пример #3
0
def test_subapp_rule_resource(app):
    subapp = web.Application()
    subapp.router.add_get('/', make_handler())
    rule = Domain('example.com')
    assert rule.get_info() == {'domain': 'example.com'}
    resource = app.add_domain('example.com', subapp)
    assert resource.canonical == 'example.com'
    assert resource.get_info() == {'rule': resource._rule, 'app': subapp}
    resource.add_prefix('/a')
    resource.raw_match('/b')
    assert len(resource)
    assert list(resource)
    assert repr(resource).startswith('<MatchedSubAppResource')
    with pytest.raises(RuntimeError):
        resource.url_for()
Пример #4
0
def test_match_domain(a: Any, b: Any, result: Any) -> None:
    if "*" in a:
        rule = MaskDomain(a)
    else:
        rule = Domain(a)
    assert rule.match_domain(b) is result
Пример #5
0
def test_domain_valid() -> None:
    assert Domain("example.com:81").canonical == "example.com:81"
    assert MaskDomain("*.example.com").canonical == r".*\.example\.com"
    assert Domain("пуни.код").canonical == "xn--h1ajfq.xn--d1alm"
Пример #6
0
def test_domain_validation_error(domain: Any, error: Any) -> None:
    with pytest.raises(error):
        Domain(domain)
Пример #7
0
def test_match_domain(a, b, result):
    if '*' in a:
        rule = MaskDomain(a)
    else:
        rule = Domain(a)
    assert rule.match_domain(b) is result
Пример #8
0
def test_domain_valid():
    assert Domain('example.com:81').canonical == 'example.com:81'
    assert MaskDomain('*.example.com').canonical == r'.*\.example\.com'
    assert Domain('пуни.код').canonical == 'xn--h1ajfq.xn--d1alm'
Пример #9
0
def test_domain_validation_error(domain, error):
    with pytest.raises(error):
        Domain(domain)