Beispiel #1
0
def test_server_preprocess():
    """
    Test ParadropAPIServer preprocess method
    """
    from paradrop.backend.pdfcd.server import ParadropAPIServer

    reactor = MagicMock()

    server = ParadropAPIServer(reactor)
    server.WHITELIST_IP = ["192.168.1.0/24"]
    server.failprocess = do_nothing

    request = MagicMock()

    assert server.preprocess(request, False, None) is None

    failures = dict()
    checks = ("192.168.1.1", "token", "paradrop", failures)
    assert server.preprocess(request, checks, None) is None

    failures = {"paradrop": Mock(attempts=0)}
    checks = ("192.168.2.1", "token", "paradrop", failures)
    assert server.preprocess(request, checks, None) is None

    failures = {"paradrop": Mock(attempts=float("inf"))}
    checks = ("192.168.2.1", "token", "paradrop", failures)
    assert server.preprocess(request, checks, None) is not None
Beispiel #2
0
def test_server_default():
    """
    Test ParadropAPIServer default method
    """
    from paradrop.backend.pdfcd.server import ParadropAPIServer

    reactor = MagicMock()
    server = ParadropAPIServer(reactor)

    request = MagicMock()
    request.received_headers = {'X-Real-IP': '192.168.1.1'}

    # Exercise path where preprocess returns something
    server.preprocess = make_dummy("stuff")
    server.default(request)

    # Exercise path where preprocess returns None
    server.preprocess = make_dummy(None)
    server.default(request)