Example usage for org.apache.commons.lang3.mutable MutableObject setValue

List of usage examples for org.apache.commons.lang3.mutable MutableObject setValue

Introduction

In this page you can find the example usage for org.apache.commons.lang3.mutable MutableObject setValue.

Prototype

@Override
public void setValue(final T value) 

Source Link

Document

Sets the value.

Usage

From source file:com.ibm.jaggr.core.impl.AbstractAggregatorImplTest.java

@Test
public void testProcessResourceRequest_invalidAccess() throws Exception {
    final MutableObject<URI> newResource = new MutableObject<URI>();
    AbstractAggregatorImpl testAggregator = new TestAggregatorImpl() {
        @Override//from w  w w .  j a v  a2s . com
        public IResource newResource(URI uri) {
            newResource.setValue(uri);
            return new NotFoundResource(uri);
        }
    };
    Map<String, String> responseParams = new HashMap<String, String>();
    HttpServletRequest req = TestUtils.createMockRequest(testAggregator);
    HttpServletResponse resp = TestUtils.createMockResponse(responseParams);
    EasyMock.replay(req, resp);

    URI uri = new URI("/folder/");
    testAggregator.processResourceRequest(req, resp, uri, "sub/../../file.res");
    Assert.assertEquals(HttpServletResponse.SC_BAD_REQUEST, resp.getStatus());

    testAggregator.processResourceRequest(req, resp, uri, "/file.res");
    Assert.assertEquals(HttpServletResponse.SC_BAD_REQUEST, resp.getStatus());

    uri = new URI("/folder");
    testAggregator.processResourceRequest(req, resp, uri, "/folder.js");
    Assert.assertEquals(HttpServletResponse.SC_BAD_REQUEST, resp.getStatus());

    newResource.setValue(null);
    testAggregator.processResourceRequest(req, resp, uri, "./file.js");
    Assert.assertEquals(HttpServletResponse.SC_NOT_FOUND, resp.getStatus());
    Assert.assertEquals(new URI("/folder/file.js"), newResource.getValue());

    newResource.setValue(null);
    testAggregator.processResourceRequest(req, resp, uri, "file.js");
    Assert.assertEquals(HttpServletResponse.SC_NOT_FOUND, resp.getStatus());
    Assert.assertEquals(new URI("/folder/file.js"), newResource.getValue());

    uri = new URI("/");
    newResource.setValue(null);
    testAggregator.processResourceRequest(req, resp, uri, "/file.js");
    Assert.assertEquals(HttpServletResponse.SC_NOT_FOUND, resp.getStatus());
    Assert.assertEquals(new URI("/file.js"), newResource.getValue());

    newResource.setValue(null);
    testAggregator.processResourceRequest(req, resp, uri, "./file.js");
    Assert.assertEquals(HttpServletResponse.SC_NOT_FOUND, resp.getStatus());
    Assert.assertEquals(new URI("/file.js"), newResource.getValue());

    testAggregator.processResourceRequest(req, resp, uri, "../file.js");
    Assert.assertEquals(HttpServletResponse.SC_BAD_REQUEST, resp.getStatus());
}

From source file:com.jayway.restassured.itest.java.FilterITest.java

@Test
public void httpClientIsAccessibleFromTheRequestSpecification() {
    // Given//ww  w .  jav a 2 s.  c  om
    final MutableObject<HttpClient> client = new MutableObject<HttpClient>();
    // When

    given().filter(new Filter() {
        public Response filter(FilterableRequestSpecification requestSpec,
                FilterableResponseSpecification responseSpec, FilterContext ctx) {
            client.setValue(requestSpec.getHttpClient());
            return new ResponseBuilder().setStatusCode(200).setContentType("application/json")
                    .setBody("{ \"message\" : \"hello\"}").build();
        }
    }).expect().body("message", equalTo("hello")).when().get("/something");

    // Then
    assertThat(client.getValue(), instanceOf(DefaultHttpClient.class));
}

From source file:io.restassured.itest.java.AcceptHeaderITest.java

@Test
public void accept_headers_are_merged_from_request_spec_and_request_when_configured_to() {
    RequestSpecification spec = new RequestSpecBuilder().setAccept("text/jux").build();

    final MutableObject<List<String>> headers = new MutableObject<List<String>>();

    RestAssured.given()/*from  w ww.  j a v a2s.  c o m*/
            .config(RestAssuredConfig.config()
                    .headerConfig(HeaderConfig.headerConfig().mergeHeadersWithName("Accept")))
            .accept(ContentType.JSON).spec(spec).body("{ \"message\" : \"hello world\"}").filter(new Filter() {
                public Response filter(FilterableRequestSpecification requestSpec,
                        FilterableResponseSpecification responseSpec, FilterContext ctx) {
                    headers.setValue(requestSpec.getHeaders().getValues("Accept"));
                    return ctx.next(requestSpec, responseSpec);
                }
            }).when().post("/jsonBodyAcceptHeader").then().body(equalTo("hello world"));

    assertThat(headers.getValue(),
            contains("application/json, application/javascript, text/javascript", "text/jux"));
}

From source file:com.jayway.restassured.itest.java.HttpClientConfigITest.java

@Test
public void httpClientIsConfigurableFromANonStaticHttpClientConfig() {
    // Given/*  w w  w. j a v a 2  s. c o m*/
    final MutableObject<HttpClient> client = new MutableObject<>();

    // When
    given().config(newConfig()
            .httpClient(HttpClientConfig.httpClientConfig().httpClientFactory(SystemDefaultHttpClient::new)))
            .filter(new Filter() {
                public Response filter(FilterableRequestSpecification requestSpec,
                        FilterableResponseSpecification responseSpec, FilterContext ctx) {
                    client.setValue(requestSpec.getHttpClient());
                    return new ResponseBuilder().setStatusCode(200).setContentType("application/json")
                            .setBody("{ \"message\" : \"hello\"}").build();
                }
            }).expect().body("message", equalTo("hello")).when().get("/something");

    // Then
    assertThat(client.getValue(), instanceOf(SystemDefaultHttpClient.class));
}

From source file:io.restassured.itest.java.HttpClientConfigITest.java

@Test
public void httpClientIsConfigurableFromANonStaticHttpClientConfig() {
    // Given//from  w w w  . jav  a  2 s  .  c o m
    final MutableObject<HttpClient> client = new MutableObject<>();

    // When
    given().config(RestAssuredConfig.newConfig()
            .httpClient(HttpClientConfig.httpClientConfig().httpClientFactory(SystemDefaultHttpClient::new)))
            .filter(new Filter() {
                public Response filter(FilterableRequestSpecification requestSpec,
                        FilterableResponseSpecification responseSpec, FilterContext ctx) {
                    client.setValue(requestSpec.getHttpClient());
                    return new ResponseBuilder().setStatusCode(200).setContentType("application/json")
                            .setBody("{ \"message\" : \"hello\"}").build();
                }
            }).expect().body("message", equalTo("hello")).when().get("/something");

    // Then
    assertThat(client.getValue(), instanceOf(SystemDefaultHttpClient.class));
}

From source file:com.github.jrh3k5.mojo.flume.AbstractFlumeAgentsMojoTest.java

/**
 * Test the copying of Flume plugins.//from  w w  w .ja  v  a  2 s  . com
 * 
 * @throws Exception
 *             If any errors occur during the test run.
 */
@Test
public void testCopyFlumePlugins() throws Exception {
    final File flumeDirectory = createTestDirectory();
    FileUtils.forceMkdir(flumeDirectory);

    // Build the file that is to be copied and the temporarily-staged .tar file from it
    final String randomUuid = UUID.randomUUID().toString();
    final File flumePluginFile = new File(flumeDirectory, randomUuid + ".tar.gz");
    final File flumePluginTarFile = new File(flumeDirectory, randomUuid + ".tar");

    // Create a collection that will be used to inject the "discovered" Flume plugin dependencies
    final Artifact flumePluginArtifact = mock(Artifact.class);
    when(flumePluginArtifact.getFile()).thenReturn(flumePluginFile);
    final Collection<Artifact> flumePluginDependencies = Collections.singleton(flumePluginArtifact);

    // So that we don't have to *actually* test the untarring/unzipping here
    mockStatic(ArchiveUtils.class);

    final MutableObject<Agent> capturedAgent = new MutableObject<Agent>();
    final ConcreteMojo toTest = setParameters(new ConcreteMojo() {
        @Override
        Collection<Artifact> getFlumePluginDependencies(Agent agent) throws IOException {
            capturedAgent.setValue(agent);
            return flumePluginDependencies;
        }
    });
    // Without this, the method will think there are no Flume plugins to copy
    final FlumePlugin flumePlugin = mock(FlumePlugin.class);
    when(agent.getFlumePlugins()).thenReturn(Collections.singletonList(flumePlugin));

    // Actually invoke the method to be tested
    toTest.copyFlumePlugins(agent, flumeDirectory);

    final File expectedPluginsDir = new File(flumeDirectory, "plugins.d");
    // The "discovered" Flume plugin should have been "unzipped" and "untarred"
    verifyStatic();
    ArchiveUtils.gunzipFile(flumePluginFile.toURI().toURL(), flumePluginTarFile);
    ArchiveUtils.untarFile(flumePluginTarFile, expectedPluginsDir);

    assertThat(capturedAgent.getValue()).isEqualTo(agent);
}

From source file:com.jayway.restassured.itest.java.HttpClientConfigITest.java

@Test
public void http_client_config_allows_specifying_that_the_http_client_instance_is_reused_in_multiple_requests() {
    final MutableObject<HttpClient> client1 = new MutableObject<HttpClient>();
    final MutableObject<HttpClient> client2 = new MutableObject<HttpClient>();

    RestAssured.config = newConfig().httpClient(httpClientConfig().reuseHttpClientInstance());

    // When//from   w  ww. ja va  2  s .co  m
    try {
        given().param("url", "/hello").filter(new Filter() {
            public Response filter(FilterableRequestSpecification requestSpec,
                    FilterableResponseSpecification responseSpec, FilterContext ctx) {
                client1.setValue(requestSpec.getHttpClient());
                return ctx.next(requestSpec, responseSpec);
            }
        }).expect().body("hello", equalTo("Hello Scalatra")).when().get("/redirect");

        given().header("name", "value").filter((requestSpec, responseSpec, ctx) -> {
            client2.setValue(requestSpec.getHttpClient());
            return ctx.next(requestSpec, responseSpec);
        }).when().post("/reflect");
    } finally {
        RestAssured.reset();
    }

    assertThat(client1.getValue(), sameInstance(client2.getValue()));
}

From source file:com.jayway.restassured.itest.java.HttpClientConfigITest.java

@Test
public void local_http_client_config_doesnt_reuse_static_http_client_instance_when_local_config_specifies_reuse() {
    final MutableObject<HttpClient> client1 = new MutableObject<HttpClient>();
    final MutableObject<HttpClient> client2 = new MutableObject<HttpClient>();

    RestAssured.config = newConfig().httpClient(httpClientConfig().reuseHttpClientInstance());

    // When/*from w ww  .  j a  v  a  2 s.  c  o  m*/
    try {
        given().param("url", "/hello").filter(new Filter() {
            public Response filter(FilterableRequestSpecification requestSpec,
                    FilterableResponseSpecification responseSpec, FilterContext ctx) {
                client1.setValue(requestSpec.getHttpClient());
                return ctx.next(requestSpec, responseSpec);
            }
        }).expect().body("hello", equalTo("Hello Scalatra")).when().get("/redirect");

        given().config(newConfig().httpClient(httpClientConfig().reuseHttpClientInstance()))
                .header("name", "value").filter(new Filter() {
                    public Response filter(FilterableRequestSpecification requestSpec,
                            FilterableResponseSpecification responseSpec, FilterContext ctx) {
                        client2.setValue(requestSpec.getHttpClient());
                        return ctx.next(requestSpec, responseSpec);
                    }
                }).when().post("/reflect");
    } finally {
        RestAssured.reset();
    }

    assertThat(client1.getValue(), not(sameInstance(client2.getValue())));
}

From source file:com.jayway.restassured.itest.java.HttpClientConfigITest.java

@Test
public void local_http_client_config_reuse_reuse_static_http_client_instance_when_local_config_changes_other_configs_than_http_client_config() {
    final MutableObject<HttpClient> client1 = new MutableObject<HttpClient>();
    final MutableObject<HttpClient> client2 = new MutableObject<HttpClient>();

    RestAssured.config = newConfig().httpClient(httpClientConfig().reuseHttpClientInstance());

    // When//from   ww w .  j a v  a  2s . com
    try {
        given().param("url", "/hello").filter(new Filter() {
            public Response filter(FilterableRequestSpecification requestSpec,
                    FilterableResponseSpecification responseSpec, FilterContext ctx) {
                client1.setValue(requestSpec.getHttpClient());
                return ctx.next(requestSpec, responseSpec);
            }
        }).expect().body("hello", equalTo("Hello Scalatra")).when().get("/redirect");

        given().
        // Here we only change the decoder config
                config(RestAssured.config.decoderConfig(decoderConfig().with().contentDecoders(DEFLATE)))
                .filter(new Filter() {
                    public Response filter(FilterableRequestSpecification requestSpec,
                            FilterableResponseSpecification responseSpec, FilterContext ctx) {
                        client2.setValue(requestSpec.getHttpClient());
                        return ctx.next(requestSpec, responseSpec);
                    }
                }).expect().body("Accept-Encoding", contains("deflate")).when().get("/headersWithValues");
    } finally {
        RestAssured.reset();
    }

    assertThat(client1.getValue(), sameInstance(client2.getValue()));
}

From source file:com.jayway.restassured.itest.java.HttpClientConfigITest.java

@Test
public void httpClientIsConfigurableFromAStaticHttpClientConfigWithOtherConfigurations() {
    // Given//from  w  w  w .  j a  v  a 2s.  co  m
    final MutableObject<HttpClient> client = new MutableObject<>();
    RestAssured.config = newConfig().httpClient(httpClientConfig().setParam(HANDLE_REDIRECTS, true).and()
            .setParam(MAX_REDIRECTS, 0).and().httpClientFactory(SystemDefaultHttpClient::new));

    // When
    try {
        given().param("url", "/hello").filter(new Filter() {
            public Response filter(FilterableRequestSpecification requestSpec,
                    FilterableResponseSpecification responseSpec, FilterContext ctx) {
                client.setValue(requestSpec.getHttpClient());
                return ctx.next(requestSpec, responseSpec);
            }
        }).expect().body("hello", equalTo("Hello Scalatra")).when().get("/redirect");
    } finally {
        RestAssured.reset();
    }

    // Then
    assertThat(client.getValue(), instanceOf(SystemDefaultHttpClient.class));
}