Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Configuration
- public class RestTemplateConfiguration {
- @Bean
- @DependsOn(value = {"secureRestTemplateCustomizer"})
- @Qualifier("secureRestTemplateBuilder")
- public RestTemplateBuilder secureRestTemplateBuilder() {
- return new RestTemplateBuilder(secureRestTemplateCustomizer());
- }
- @Bean
- @DependsOn(value = {"publicRestTemplateCustomizer"})
- @Qualifier("publicRestTemplateBuilder")
- public RestTemplateBuilder publicRestTemplateBuilder() {
- return new RestTemplateBuilder(publicRestTemplateCustomizer());
- }
- @Bean
- @Qualifier("secureRestTemplateCustomizer")
- public SecureRestTemplateCustomizer secureRestTemplateCustomizer() {
- return new SecureRestTemplateCustomizer();
- }
- @Bean
- @Qualifier("publicRestTemplateCustomizer")
- public PublicRestTemplateCustomizer publicRestTemplateCustomizer() {
- return new PublicRestTemplateCustomizer();
- }
- }
- @Component
- public class SecureRestTemplateCustomizer implements RestTemplateCustomizer {
- @Override
- public void customize(RestTemplate restTemplate) {
- restTemplate.setErrorHandler(new ErrorHandler());
- restTemplate.getInterceptors().add(new AuthorizationHeaderInterceptor());
- }
- }
- @Component
- public class PublicRestTemplateCustomizer implements RestTemplateCustomizer {
- @Override
- public void customize(RestTemplate restTemplate) {
- restTemplate.setErrorHandler(new ErrorHandler());
- }
- }
- private RestTemplate restTemplate;
- @Autowired
- public LoginApiClient(@Qualifier("publicRestTemplateBuilder") RestTemplateBuilder restTemplateBuilder) {
- this.restTemplate = restTemplateBuilder.build();
- }
- @RunWith(SpringRunner.class)
- @RestClientTest({LoginApiClient.class})
- @Category(IUnitTest.class)
- public class LoginApiClientTest {
- @Autowired ILoginApiClient loginApiClient;
- @Autowired private MockRestServiceServer server;
- @Test
- public void validateToken_returns_true_for_valid_token() throws Exception{
- String token = "token";
- this.server.expect(requestTo(this.validateTokenUrl))
- .andExpect(method(HttpMethod.POST))
- .andRespond(withSuccess(objectMapper.writeValueAsString(validTokenResponse(token)), MediaType
- .APPLICATION_JSON));
- Boolean isValid = loginApiClient.validateToken(token);
- server.verify();
- assertThat(isValid,is(equalTo(true)));
- }
- }
Add Comment
Please, Sign In to add comment