示例#1
0
def req_w_rsp(req):
    r = Response()
    r.start_line = "HTTP/1.1 200 OK"
    r.headers["Test-Header"] = "ABC123"
    r.body = "AAAA"
    req.response = r
    return req
示例#2
0
def test_filter_by_body():
    f = context.gen_filter_by_body(['ct', 'sexy'])
    fn = context.gen_filter_by_body(['nct', 'sexy'])

    # Test request bodies
    r = Request()
    r.start_line = 'GET /sexy HTTP/1.1'
    r.headers['Header'] = 'sexy'
    r.body = 'foo'
    assert not f(r)
    assert fn(r)

    r.body = 'sexy'
    assert f(r)
    assert not fn(r)

    # Test response bodies
    r = Request()
    rsp = Response()
    rsp.start_line = 'HTTP/1.1 200 OK'
    rsp.headers['sexy'] = 'sexy'
    r.start_line = 'GET /sexy HTTP/1.1'
    r.headers['Header'] = 'sexy'
    r.response = rsp
    assert not f(r)
    assert fn(r)

    rsp.body = 'sexy'
    assert f(r)
    assert not fn(r)
示例#3
0
def test_filter_by_body():
    f = context.gen_filter_by_body(['ct', 'sexy'])
    fn = context.gen_filter_by_body(['nct', 'sexy'])
    
    # Test request bodies
    r = Request()
    r.start_line = 'GET /sexy HTTP/1.1'
    r.headers['Header'] = 'sexy'
    r.body = 'foo'
    assert not f(r)
    assert fn(r)

    r.body = 'sexy'
    assert f(r)
    assert not fn(r)

    # Test response bodies
    r = Request()
    rsp = Response()
    rsp.start_line = 'HTTP/1.1 200 OK'
    rsp.headers['sexy'] = 'sexy'
    r.start_line = 'GET /sexy HTTP/1.1'
    r.headers['Header'] = 'sexy'
    r.response = rsp
    assert not f(r)
    assert fn(r)

    rsp.body = 'sexy'
    assert f(r)
    assert not fn(r)
示例#4
0
def req_w_rsp(req):
    r = Response()
    r.start_line = 'HTTP/1.1 200 OK'
    r.headers['Test-Header'] = 'ABC123'
    r.body = 'AAAA'
    req.response = r
    return req
示例#5
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)
示例#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)