public Builder defaultProxy() {
        initializationWrapper(new AsyncInitializationWrapper())
                .requestReader((RequestReader<RequestType, ContainerRequestType>) new AwsProxyHttpServletRequestReader())
                .responseWriter((ResponseWriter<AwsHttpServletResponse, ResponseType>) new AwsProxyHttpServletResponseWriter())
                .securityContextWriter((SecurityContextWriter<RequestType>) new AwsProxySecurityContextWriter())
                .exceptionHandler(defaultExceptionHandler())
                .requestTypeClass((Class<RequestType>) AwsProxyRequest.class)
                .responseTypeClass((Class<ResponseType>) AwsProxyResponse.class);
        return self();
    }
@Test
    void defaultProxy_setsValuesCorrectly() {
        TestBuilder test = new TestBuilder().defaultProxy().name("test");
        assertNotNull(test.initializationWrapper);
        assertTrue(test.exceptionHandler instanceof AwsProxyExceptionHandler);
        assertTrue(test.requestReader instanceof AwsProxyHttpServletRequestReader);
        assertTrue(test.responseWriter instanceof AwsProxyHttpServletResponseWriter);
        assertTrue(test.securityContextWriter instanceof AwsProxySecurityContextWriter);
        assertSame(AwsProxyRequest.class, test.requestTypeClass);
        assertSame(AwsProxyResponse.class, test.responseTypeClass);
        assertEquals("test", test.name);
    }