@Test
    void testProcessingHandlerTransfersErrorsToHttpStatusCodesNoData() {
        List<Chain<Processor>> chains = new ArrayList<>();
        chains.add(simpleChain);
        chains.add(new Chain<>("moved_permanently", new ProcessorLibrary.ErrorAdder(new ErrorMessage(301, "Message"))));
        chains.add(new Chain<>("unauthorized", new ProcessorLibrary.ErrorAdder(new ErrorMessage(401, "Message"))));
        chains.add(new Chain<>("unauthorized_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.UNAUTHORIZED.code, "Message"))));
        chains.add(new Chain<>("forbidden", new ProcessorLibrary.ErrorAdder(new ErrorMessage(403, "Message"))));
        chains.add(new Chain<>("forbidden_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.FORBIDDEN.code, "Message"))));
        chains.add(new Chain<>("not_found", new ProcessorLibrary.ErrorAdder(new ErrorMessage(404, "Message"))));
        chains.add(new Chain<>("not_found_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.NOT_FOUND.code, "Message"))));
        chains.add(new Chain<>("too_many_requests", new ProcessorLibrary.ErrorAdder(new ErrorMessage(429, "Message"))));
        chains.add(new Chain<>("bad_request", new ProcessorLibrary.ErrorAdder(new ErrorMessage(400, "Message"))));
        chains.add(new Chain<>("bad_request_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.BAD_REQUEST.code, "Message"))));
        chains.add(new Chain<>("internal_server_error", new ProcessorLibrary.ErrorAdder(new ErrorMessage(500, "Message"))));
        chains.add(new Chain<>("internal_server_error_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.INTERNAL_SERVER_ERROR.code, "Message"))));
        chains.add(new Chain<>("service_unavailable", new ProcessorLibrary.ErrorAdder(new ErrorMessage(503, "Message"))));
        chains.add(new Chain<>("service_unavailable_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.NO_BACKENDS_IN_SERVICE.code, "Message"))));
        chains.add(new Chain<>("gateway_timeout", new ProcessorLibrary.ErrorAdder(new ErrorMessage(504, "Message"))));
        chains.add(new Chain<>("gateway_timeout_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.TIMEOUT.code, "Message"))));
        chains.add(new Chain<>("bad_gateway", new ProcessorLibrary.ErrorAdder(new ErrorMessage(502, "Message"))));
        chains.add(new Chain<>("bad_gateway_mapped", new ProcessorLibrary.ErrorAdder(new ErrorMessage(Error.BACKEND_COMMUNICATION_ERROR.code, "Message"))));
        chains.add(new Chain<>("unknown_code", new ProcessorLibrary.ErrorAdder(new ErrorMessage(1234567, "Message"))));
        driver = new ProcessingTestDriver(chains);
        assertEqualStatus(200, "http://localhost/?chain=simple");
        assertEqualStatus(301, "http://localhost/?chain=moved_permanently");
        assertEqualStatus(401, "http://localhost/?chain=unauthorized");
        assertEqualStatus(401, "http://localhost/?chain=unauthorized_mapped");
        assertEqualStatus(403, "http://localhost/?chain=forbidden");
        assertEqualStatus(403, "http://localhost/?chain=forbidden_mapped");
        assertEqualStatus(404, "http://localhost/?chain=not_found");
        assertEqualStatus(404, "http://localhost/?chain=not_found_mapped");
        assertEqualStatus(429, "http://localhost/?chain=too_many_requests");
        assertEqualStatus(400, "http://localhost/?chain=bad_request");
        assertEqualStatus(400, "http://localhost/?chain=bad_request_mapped");
        assertEqualStatus(500, "http://localhost/?chain=internal_server_error");
        assertEqualStatus(500, "http://localhost/?chain=internal_server_error_mapped");
        assertEqualStatus(503, "http://localhost/?chain=service_unavailable");
        assertEqualStatus(503, "http://localhost/?chain=service_unavailable_mapped");
        assertEqualStatus(504, "http://localhost/?chain=gateway_timeout");
        assertEqualStatus(504, "http://localhost/?chain=gateway_timeout_mapped");
        assertEqualStatus(502, "http://localhost/?chain=bad_gateway");
        assertEqualStatus(503, "http://localhost/?chain=bad_gateway_mapped");
        assertEqualStatus(500, "http://localhost/?chain=unknown_code");
    }
Tests processing handler scenarios end to end.

@author bratseth
@author gjoranv
@author Tony Vaagenes
container-core/src/test/java/com/yahoo/processing/handler/ProcessingHandlerTestCase.java