Exemplo n.º 1
0
def test_gen_filter_by_all_request():
    f = context.gen_filter_by_all(['ct', 'hello'])
    fn = context.gen_filter_by_all(['nct', 'hello'])

    # Nowhere
    r = Request('GET / HTTP/1.1\r\n')
    assert not f(r)
    assert fn(r)

    # Verb
    r = Request('hello / HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Path
    r = Request('GET /hello HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Data
    r = Request('GET / HTTP/1.1\r\n')
    r.body = 'hello'
    assert f(r)
    assert not fn(r)

    # Header key
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['hello'] = 'goodbye'
    assert f(r)
    assert not fn(r)

    # Header value
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in headers
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'for real'
    assert not f(r)
    assert fn(r)

    # Cookie key
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['hello'] = 'world'
    assert f(r)
    assert not fn(r)

    # Cookie value
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in cookie
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'sucks'
    assert not f(r)
    assert fn(r)
Exemplo n.º 2
0
def test_gen_filter_by_all_request():
    f = context.gen_filter_by_all(context.cmp_contains, 'hello')
    fn = context.gen_filter_by_all(context.cmp_contains, 'hello', negate=True)

    # Nowhere
    r = Request('GET / HTTP/1.1\r\n')
    assert not f(r)
    assert fn(r)

    # Verb
    r = Request('hello / HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Path
    r = Request('GET /hello HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Data
    r = Request('GET / HTTP/1.1\r\n')
    r.raw_data = 'hello'
    assert f(r)
    assert not fn(r)

    # Header key
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['hello'] = 'goodbye'
    assert f(r)
    assert not fn(r)

    # Header value
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in headers
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'for real'
    assert not f(r)
    assert fn(r)

    # Cookie key
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['hello'] = 'world'
    assert f(r)
    assert not fn(r)

    # Cookie value
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in cookie
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'sucks'
    assert not f(r)
    assert fn(r)
Exemplo n.º 3
0
def test_gen_filter_by_all_request():
    f = context.gen_filter_by_all(context.cmp_contains, 'hello')
    fn = context.gen_filter_by_all(context.cmp_contains, 'hello', negate=True)

    # Nowhere
    r = Request('GET / HTTP/1.1\r\n')
    assert not f(r)
    assert fn(r)

    # Verb
    r = Request('hello / HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Path
    r = Request('GET /hello HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Data
    r = Request('GET / HTTP/1.1\r\n')
    r.raw_data = 'hello'
    assert f(r)
    assert not fn(r)

    # Header key
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['hello'] = 'goodbye'
    assert f(r)
    assert not fn(r)

    # Header value
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in headers
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'for real'
    assert not f(r)
    assert fn(r)

    # Cookie key
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['hello'] = 'world'
    assert f(r)
    assert not fn(r)

    # Cookie value
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in cookie
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'sucks'
    assert not f(r)
    assert fn(r)
Exemplo n.º 4
0
def test_gen_filter_by_all_request():
    f = context.gen_filter_by_all(['ct', 'hello'])
    fn = context.gen_filter_by_all(['nct', 'hello'])

    # Nowhere
    r = Request('GET / HTTP/1.1\r\n')
    assert not f(r)
    assert fn(r)

    # Verb
    r = Request('hello / HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Path
    r = Request('GET /hello HTTP/1.1\r\n')
    assert f(r)
    assert not fn(r)

    # Data
    r = Request('GET / HTTP/1.1\r\n')
    r.body = 'hello'
    assert f(r)
    assert not fn(r)

    # Header key
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['hello'] = 'goodbye'
    assert f(r)
    assert not fn(r)

    # Header value
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in headers
    r = Request('GET / HTTP/1.1\r\n')
    r.headers['goodbye'] = 'for real'
    assert not f(r)
    assert fn(r)

    # Cookie key
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['hello'] = 'world'
    assert f(r)
    assert not fn(r)

    # Cookie value
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'hello'
    assert f(r)
    assert not fn(r)

    # Nowhere in cookie
    r = Request('GET / HTTP/1.1\r\n')
    r.cookies['world'] = 'sucks'
    assert not f(r)
    assert fn(r)
Exemplo n.º 5
0
def test_gen_filter_by_all_response(http_request):
    f = context.gen_filter_by_all(context.cmp_contains, 'hello')
    fn = context.gen_filter_by_all(context.cmp_contains, 'hello', negate=True)

    # Nowhere
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    assert not f(http_request)
    assert fn(http_request)

    # Response text
    r = Response('HTTP/1.1 200 hello\r\n')
    http_request.response = r
    assert f(http_request)
    assert not fn(http_request)

    # Data
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.raw_data = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Header key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['hello'] = 'goodbye'
    assert f(http_request)
    assert not fn(http_request)

    # Header value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in headers
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'for real'
    assert not f(http_request)
    assert fn(http_request)

    # Cookie key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('hello=goodbye'))
    r.update_from_objects()
    assert f(http_request)
    assert not fn(http_request)

    # Cookie value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=hello'))
    r.update_from_objects()
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in cookie
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=for real'))
    r.update_from_objects()
    assert not f(http_request)
    assert fn(http_request)
Exemplo n.º 6
0
def test_gen_filter_by_all_response(http_request):
    f = context.gen_filter_by_all(['ct', 'hello'])
    fn = context.gen_filter_by_all(['nct', 'hello'])

    # Nowhere
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    assert not f(http_request)
    assert fn(http_request)

    # Response text
    r = Response('HTTP/1.1 200 hello\r\n')
    http_request.response = r
    assert f(http_request)
    assert not fn(http_request)

    # Data
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.body = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Header key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['hello'] = 'goodbye'
    assert f(http_request)
    assert not fn(http_request)

    # Header value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in headers
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'for real'
    assert not f(http_request)
    assert fn(http_request)

    # Cookie key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('hello=goodbye'))
    assert f(http_request)
    assert not fn(http_request)

    # Cookie value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=hello'))
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in cookie
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=for real'))
    assert not f(http_request)
    assert fn(http_request)
Exemplo n.º 7
0
def test_gen_filter_by_all_response(http_request):
    f = context.gen_filter_by_all(['ct', 'hello'])
    fn = context.gen_filter_by_all(['nct', 'hello'])

    # Nowhere
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    assert not f(http_request)
    assert fn(http_request)

    # Response text
    r = Response('HTTP/1.1 200 hello\r\n')
    http_request.response = r
    assert f(http_request)
    assert not fn(http_request)

    # Data
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.body = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Header key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['hello'] = 'goodbye'
    assert f(http_request)
    assert not fn(http_request)

    # Header value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'hello'
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in headers
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.headers['goodbye'] = 'for real'
    assert not f(http_request)
    assert fn(http_request)

    # Cookie key
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('hello=goodbye'))
    assert f(http_request)
    assert not fn(http_request)

    # Cookie value
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=hello'))
    assert f(http_request)
    assert not fn(http_request)

    # Nowhere in cookie
    r = Response('HTTP/1.1 200 OK\r\n')
    http_request.response = r
    r.add_cookie(ResponseCookie('goodbye=for real'))
    assert not f(http_request)
    assert fn(http_request)