changing the name of a module

This commit is contained in:
eugenp 2016-07-27 13:19:46 +03:00
parent 603955f3f8
commit 9c9a0b23e5
13 changed files with 204 additions and 204 deletions

View File

@ -1,11 +1,11 @@
package com.baeldung; package com.baeldung;
import cucumber.api.CucumberOptions; import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber; import cucumber.api.junit.Cucumber;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
@RunWith(Cucumber.class) @RunWith(Cucumber.class)
@CucumberOptions(features = "src/test/resources") @CucumberOptions(features = "src/test/resources")
public class CucumberTest{ public class CucumberTest{
} }

View File

@ -1,34 +1,34 @@
package com.baeldung; package com.baeldung;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.http.client.ClientHttpRequest; import org.springframework.http.client.ClientHttpRequest;
import org.springframework.web.client.RequestCallback; import org.springframework.web.client.RequestCallback;
import java.io.IOException; import java.io.IOException;
import java.util.Map; import java.util.Map;
public class HeaderSettingRequestCallback implements RequestCallback{ public class HeaderSettingRequestCallback implements RequestCallback{
final Map<String,String> requestHeaders; final Map<String,String> requestHeaders;
private String body; private String body;
public HeaderSettingRequestCallback(final Map<String, String> headers){ public HeaderSettingRequestCallback(final Map<String, String> headers){
this.requestHeaders = headers; this.requestHeaders = headers;
} }
public void setBody(final String postBody ){ public void setBody(final String postBody ){
this.body = postBody; this.body = postBody;
} }
@Override @Override
public void doWithRequest(ClientHttpRequest request) throws IOException{ public void doWithRequest(ClientHttpRequest request) throws IOException{
final HttpHeaders clientHeaders = request.getHeaders(); final HttpHeaders clientHeaders = request.getHeaders();
for( final Map.Entry<String,String> entry : requestHeaders.entrySet() ){ for( final Map.Entry<String,String> entry : requestHeaders.entrySet() ){
clientHeaders.add(entry.getKey(),entry.getValue()); clientHeaders.add(entry.getKey(),entry.getValue());
} }
if( null != body ){ if( null != body ){
request.getBody().write( body.getBytes() ); request.getBody().write( body.getBytes() );
} }
} }
} }

View File

@ -1,34 +1,34 @@
package com.baeldung; package com.baeldung;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.StringWriter; import java.io.StringWriter;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.springframework.http.client.ClientHttpResponse; import org.springframework.http.client.ClientHttpResponse;
public class ResponseResults{ public class ResponseResults{
private final ClientHttpResponse theResponse; private final ClientHttpResponse theResponse;
private final String body; private final String body;
protected ResponseResults(final ClientHttpResponse response) throws IOException{ protected ResponseResults(final ClientHttpResponse response) throws IOException{
this.theResponse = response; this.theResponse = response;
final InputStream bodyInputStream = response.getBody(); final InputStream bodyInputStream = response.getBody();
if (null == bodyInputStream){ if (null == bodyInputStream){
this.body = "{}"; this.body = "{}";
}else{ }else{
final StringWriter stringWriter = new StringWriter(); final StringWriter stringWriter = new StringWriter();
IOUtils.copy(bodyInputStream, stringWriter); IOUtils.copy(bodyInputStream, stringWriter);
this.body = stringWriter.toString(); this.body = stringWriter.toString();
} }
} }
protected ClientHttpResponse getTheResponse(){ protected ClientHttpResponse getTheResponse(){
return theResponse; return theResponse;
} }
protected String getBody(){ protected String getBody(){
return body; return body;
} }
} }

View File

@ -1,102 +1,102 @@
package com.baeldung; package com.baeldung;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.boot.test.IntegrationTest; import org.springframework.boot.test.IntegrationTest;
import org.springframework.boot.test.SpringApplicationContextLoader; import org.springframework.boot.test.SpringApplicationContextLoader;
import org.springframework.http.HttpMethod; import org.springframework.http.HttpMethod;
import org.springframework.http.client.ClientHttpResponse; import org.springframework.http.client.ClientHttpResponse;
import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.web.client.ResponseErrorHandler; import org.springframework.web.client.ResponseErrorHandler;
import org.springframework.web.client.ResponseExtractor; import org.springframework.web.client.ResponseExtractor;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
//@RunWith(SpringJUnit4ClassRunner.class) //@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = SpringDemoApplication.class, loader = SpringApplicationContextLoader.class) @ContextConfiguration(classes = SpringDemoApplication.class, loader = SpringApplicationContextLoader.class)
@WebAppConfiguration @WebAppConfiguration
@IntegrationTest @IntegrationTest
public class SpringIntegrationTest { public class SpringIntegrationTest {
protected static ResponseResults latestResponse = null; protected static ResponseResults latestResponse = null;
protected RestTemplate restTemplate = null; protected RestTemplate restTemplate = null;
protected void executeGet(String url) throws IOException{ protected void executeGet(String url) throws IOException{
final Map<String,String> headers = new HashMap<>(); final Map<String,String> headers = new HashMap<>();
headers.put("Accept","application/json"); headers.put("Accept","application/json");
final HeaderSettingRequestCallback requestCallback = new HeaderSettingRequestCallback(headers); final HeaderSettingRequestCallback requestCallback = new HeaderSettingRequestCallback(headers);
final ResponseResultErrorHandler errorHandler = new ResponseResultErrorHandler(); final ResponseResultErrorHandler errorHandler = new ResponseResultErrorHandler();
if (restTemplate == null){ if (restTemplate == null){
restTemplate = new RestTemplate(); restTemplate = new RestTemplate();
} }
restTemplate.setErrorHandler(errorHandler); restTemplate.setErrorHandler(errorHandler);
latestResponse = restTemplate.execute(url, latestResponse = restTemplate.execute(url,
HttpMethod.GET, HttpMethod.GET,
requestCallback, requestCallback,
new ResponseExtractor<ResponseResults>(){ new ResponseExtractor<ResponseResults>(){
@Override @Override
public ResponseResults extractData(ClientHttpResponse response) throws IOException { public ResponseResults extractData(ClientHttpResponse response) throws IOException {
if (errorHandler.hadError){ if (errorHandler.hadError){
return (errorHandler.getResults()); return (errorHandler.getResults());
} else{ } else{
return (new ResponseResults(response)); return (new ResponseResults(response));
} }
} }
}); });
} }
protected void executePost(String url) throws IOException{ protected void executePost(String url) throws IOException{
final Map<String,String> headers = new HashMap<>(); final Map<String,String> headers = new HashMap<>();
headers.put("Accept","application/json"); headers.put("Accept","application/json");
final HeaderSettingRequestCallback requestCallback = new HeaderSettingRequestCallback(headers); final HeaderSettingRequestCallback requestCallback = new HeaderSettingRequestCallback(headers);
final ResponseResultErrorHandler errorHandler = new ResponseResultErrorHandler(); final ResponseResultErrorHandler errorHandler = new ResponseResultErrorHandler();
if (restTemplate == null){ if (restTemplate == null){
restTemplate = new RestTemplate(); restTemplate = new RestTemplate();
} }
restTemplate.setErrorHandler(errorHandler); restTemplate.setErrorHandler(errorHandler);
latestResponse = restTemplate.execute(url, latestResponse = restTemplate.execute(url,
HttpMethod.POST, HttpMethod.POST,
requestCallback, requestCallback,
new ResponseExtractor<ResponseResults>(){ new ResponseExtractor<ResponseResults>(){
@Override @Override
public ResponseResults extractData(ClientHttpResponse response) throws IOException { public ResponseResults extractData(ClientHttpResponse response) throws IOException {
if (errorHandler.hadError){ if (errorHandler.hadError){
return (errorHandler.getResults()); return (errorHandler.getResults());
} else{ } else{
return (new ResponseResults(response)); return (new ResponseResults(response));
} }
} }
}); });
} }
private class ResponseResultErrorHandler implements ResponseErrorHandler{ private class ResponseResultErrorHandler implements ResponseErrorHandler{
private ResponseResults results = null; private ResponseResults results = null;
private Boolean hadError = false; private Boolean hadError = false;
private ResponseResults getResults(){ private ResponseResults getResults(){
return results; return results;
} }
@Override @Override
public boolean hasError(ClientHttpResponse response) throws IOException{ public boolean hasError(ClientHttpResponse response) throws IOException{
hadError = response.getRawStatusCode() >= 400; hadError = response.getRawStatusCode() >= 400;
return hadError; return hadError;
} }
@Override @Override
public void handleError(ClientHttpResponse response) throws IOException { public void handleError(ClientHttpResponse response) throws IOException {
results = new ResponseResults(response); results = new ResponseResults(response);
} }
} }
} }

View File

@ -1,28 +1,28 @@
package com.baeldung; package com.baeldung;
import cucumber.api.java.en.And; import cucumber.api.java.en.And;
import cucumber.api.java.en.Then; import cucumber.api.java.en.Then;
import cucumber.api.java.en.When; import cucumber.api.java.en.When;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.is;
public class StepDefs extends SpringIntegrationTest{ public class StepDefs extends SpringIntegrationTest{
@When("^the client calls /version$") @When("^the client calls /version$")
public void the_client_issues_GET_version() throws Throwable{ public void the_client_issues_GET_version() throws Throwable{
executeGet("http://localhost:8080/version"); executeGet("http://localhost:8080/version");
} }
@Then("^the client receives status code of (\\d+)$") @Then("^the client receives status code of (\\d+)$")
public void the_client_receives_status_code_of(int statusCode) throws Throwable{ public void the_client_receives_status_code_of(int statusCode) throws Throwable{
final HttpStatus currentStatusCode = latestResponse.getTheResponse().getStatusCode(); final HttpStatus currentStatusCode = latestResponse.getTheResponse().getStatusCode();
assertThat("status code is incorrect : "+ latestResponse.getBody(), currentStatusCode.value(), is(statusCode) ); assertThat("status code is incorrect : "+ latestResponse.getBody(), currentStatusCode.value(), is(statusCode) );
} }
@And("^the client receives server version (.+)$") @And("^the client receives server version (.+)$")
public void the_client_receives_server_version_body(String version) throws Throwable{ public void the_client_receives_server_version_body(String version) throws Throwable{
assertThat(latestResponse.getBody(), is(version)) ; assertThat(latestResponse.getBody(), is(version)) ;
} }
} }