Beispiel #1
0
def test_server_failprocess():
    """
    Test ParadropAPIServer failprocess method
    """
    from paradrop.backend.pdfcd.server import ParadropAPIServer
    from paradrop.lib.api import pdapi    

    reactor = MagicMock()

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

    request = MagicMock()

    server.failprocess("192.168.1.1", request, None, None, None, pdapi.ERR_BADPARAM)
    server.failprocess("192.168.1.1", request, None, None, None, pdapi.OK)

    errorStmt = "Malformed Body: %s"
    logUsage = (None, None)
    server.failprocess("192.168.1.1", request, None, errorStmt, logUsage, pdapi.OK)

    logFailure = ("key", {})
    server.failprocess("192.168.1.1", request, logFailure, errorStmt, None, pdapi.OK)

    # This call will update an item in logFailure that was created in the
    # previous call.
    errorStmt = "Malformed Body: %s"
    server.failprocess("192.168.1.1", request, logFailure, errorStmt, None, pdapi.OK)
Beispiel #2
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 #3
0
def test_server_postprocess():
    """
    Test ParadropAPIServer postprocess 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()

    server.postprocess(request, None, None, False)

    failures = dict()
    logs = (None, "192.168.1.1", None)
    server.postprocess(request, "key", failures, logs)

    failures = {"key": Mock()}
    logs = (None, "192.168.1.1", None)
    server.postprocess(request, "key", failures, logs)