Guest User

Untitled

a guest
Jun 25th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. @Configuration
  2. public class RestTemplateConfiguration {
  3.  
  4. @Bean
  5. @DependsOn(value = {"secureRestTemplateCustomizer"})
  6. @Qualifier("secureRestTemplateBuilder")
  7. public RestTemplateBuilder secureRestTemplateBuilder() {
  8. return new RestTemplateBuilder(secureRestTemplateCustomizer());
  9. }
  10.  
  11. @Bean
  12. @DependsOn(value = {"publicRestTemplateCustomizer"})
  13. @Qualifier("publicRestTemplateBuilder")
  14. public RestTemplateBuilder publicRestTemplateBuilder() {
  15. return new RestTemplateBuilder(publicRestTemplateCustomizer());
  16. }
  17.  
  18. @Bean
  19. @Qualifier("secureRestTemplateCustomizer")
  20. public SecureRestTemplateCustomizer secureRestTemplateCustomizer() {
  21. return new SecureRestTemplateCustomizer();
  22. }
  23.  
  24. @Bean
  25. @Qualifier("publicRestTemplateCustomizer")
  26. public PublicRestTemplateCustomizer publicRestTemplateCustomizer() {
  27. return new PublicRestTemplateCustomizer();
  28. }
  29. }
  30.  
  31. @Component
  32. public class SecureRestTemplateCustomizer implements RestTemplateCustomizer {
  33. @Override
  34. public void customize(RestTemplate restTemplate) {
  35. restTemplate.setErrorHandler(new ErrorHandler());
  36. restTemplate.getInterceptors().add(new AuthorizationHeaderInterceptor());
  37. }
  38. }
  39.  
  40. @Component
  41. public class PublicRestTemplateCustomizer implements RestTemplateCustomizer {
  42. @Override
  43. public void customize(RestTemplate restTemplate) {
  44. restTemplate.setErrorHandler(new ErrorHandler());
  45. }
  46. }
  47.  
  48. private RestTemplate restTemplate;
  49. @Autowired
  50. public LoginApiClient(@Qualifier("publicRestTemplateBuilder") RestTemplateBuilder restTemplateBuilder) {
  51. this.restTemplate = restTemplateBuilder.build();
  52. }
  53.  
  54. @RunWith(SpringRunner.class)
  55. @RestClientTest({LoginApiClient.class})
  56. @Category(IUnitTest.class)
  57. public class LoginApiClientTest {
  58.  
  59. @Autowired ILoginApiClient loginApiClient;
  60.  
  61. @Autowired private MockRestServiceServer server;
  62.  
  63. @Test
  64. public void validateToken_returns_true_for_valid_token() throws Exception{
  65. String token = "token";
  66.  
  67. this.server.expect(requestTo(this.validateTokenUrl))
  68. .andExpect(method(HttpMethod.POST))
  69. .andRespond(withSuccess(objectMapper.writeValueAsString(validTokenResponse(token)), MediaType
  70. .APPLICATION_JSON));
  71.  
  72. Boolean isValid = loginApiClient.validateToken(token);
  73.  
  74. server.verify();
  75. assertThat(isValid,is(equalTo(true)));
  76. }
  77.  
  78. }
Add Comment
Please, Sign In to add comment