Optimize and refactor (#2302)
This commit is contained in:
parent
4e95722017
commit
f8bf4038f1
|
@ -14,15 +14,18 @@ import org.springframework.test.context.junit4.SpringRunner;
|
||||||
import javax.servlet.FilterRegistration;
|
import javax.servlet.FilterRegistration;
|
||||||
import javax.servlet.ServletContext;
|
import javax.servlet.ServletContext;
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = SpringBootAnnotatedApp.class)
|
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = SpringBootAnnotatedApp.class)
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
@TestPropertySource(properties = { "security.basic.enabled=false" })
|
@TestPropertySource(properties = {"security.basic.enabled=false"})
|
||||||
public class SpringBootWithServletComponentIntegrationTest {
|
public class SpringBootWithServletComponentIntegrationTest {
|
||||||
|
|
||||||
@Autowired private ServletContext servletContext;
|
@Autowired
|
||||||
|
private ServletContext servletContext;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenServletContext_whenAccessAttrs_thenFoundAttrsPutInServletListner() {
|
public void givenServletContext_whenAccessAttrs_thenFoundAttrsPutInServletListner() {
|
||||||
|
@ -42,7 +45,8 @@ public class SpringBootWithServletComponentIntegrationTest {
|
||||||
.contains("echo servlet"));
|
.contains("echo servlet"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Autowired private TestRestTemplate restTemplate;
|
@Autowired
|
||||||
|
private TestRestTemplate restTemplate;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenServletFilter_whenGetHello_thenRequestFiltered() {
|
public void givenServletFilter_whenGetHello_thenRequestFiltered() {
|
||||||
|
@ -59,7 +63,6 @@ public class SpringBootWithServletComponentIntegrationTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,17 +14,21 @@ import org.springframework.test.context.junit4.SpringRunner;
|
||||||
import javax.servlet.FilterRegistration;
|
import javax.servlet.FilterRegistration;
|
||||||
import javax.servlet.ServletContext;
|
import javax.servlet.ServletContext;
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.assertNull;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = SpringBootPlainApp.class)
|
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = SpringBootPlainApp.class)
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
@TestPropertySource(properties = { "security.basic.enabled=false" })
|
@TestPropertySource(properties = {"security.basic.enabled=false"})
|
||||||
public class SpringBootWithoutServletComponentIntegrationTest {
|
public class SpringBootWithoutServletComponentIntegrationTest {
|
||||||
|
|
||||||
@Autowired private ServletContext servletContext;
|
@Autowired
|
||||||
|
private ServletContext servletContext;
|
||||||
|
|
||||||
@Autowired private TestRestTemplate restTemplate;
|
@Autowired
|
||||||
|
private TestRestTemplate restTemplate;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenServletContext_whenAccessAttrs_thenNotFound() {
|
public void givenServletContext_whenAccessAttrs_thenNotFound() {
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package com.baeldung.autoconfiguration;
|
package com.baeldung.autoconfiguration;
|
||||||
|
|
||||||
|
import com.baeldung.autoconfiguration.example.AutoconfigurationApplication;
|
||||||
|
import com.baeldung.autoconfiguration.example.MyUser;
|
||||||
|
import com.baeldung.autoconfiguration.example.MyUserRepository;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -7,13 +10,9 @@ import org.springframework.boot.test.context.SpringBootTest;
|
||||||
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
|
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
|
||||||
import com.baeldung.autoconfiguration.example.AutoconfigurationApplication;
|
|
||||||
import com.baeldung.autoconfiguration.example.MyUser;
|
|
||||||
import com.baeldung.autoconfiguration.example.MyUserRepository;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringBootTest(classes = AutoconfigurationApplication.class)
|
@SpringBootTest(classes = AutoconfigurationApplication.class)
|
||||||
@EnableJpaRepositories(basePackages = { "com.baeldung.autoconfiguration.example" })
|
@EnableJpaRepositories(basePackages = {"com.baeldung.autoconfiguration.example"})
|
||||||
public class AutoconfigurationIntegrationTest {
|
public class AutoconfigurationIntegrationTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
|
@ -1,15 +1,5 @@
|
||||||
package com.baeldung.displayallbeans;
|
package com.baeldung.displayallbeans;
|
||||||
|
|
||||||
import static org.assertj.core.api.BDDAssertions.then;
|
|
||||||
import static org.hamcrest.CoreMatchers.hasItem;
|
|
||||||
import static org.junit.Assert.assertThat;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -23,7 +13,15 @@ import org.springframework.test.context.TestPropertySource;
|
||||||
import org.springframework.test.context.junit4.SpringRunner;
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
import org.springframework.web.context.WebApplicationContext;
|
import org.springframework.web.context.WebApplicationContext;
|
||||||
|
|
||||||
import com.baeldung.displayallbeans.Application;
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.BDDAssertions.then;
|
||||||
|
import static org.hamcrest.CoreMatchers.hasItem;
|
||||||
|
import static org.junit.Assert.assertThat;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@SpringBootTest(classes = Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
|
@SpringBootTest(classes = Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
|
||||||
|
@ -46,10 +44,10 @@ public class DisplayBeanIntegrationTest {
|
||||||
public void givenRestTemplate_whenAccessServerUrl_thenHttpStatusOK() throws Exception {
|
public void givenRestTemplate_whenAccessServerUrl_thenHttpStatusOK() throws Exception {
|
||||||
ResponseEntity<String> entity = this.testRestTemplate.getForEntity(
|
ResponseEntity<String> entity = this.testRestTemplate.getForEntity(
|
||||||
"http://localhost:" + this.port + "/displayallbeans", String.class);
|
"http://localhost:" + this.port + "/displayallbeans", String.class);
|
||||||
|
|
||||||
then(entity.getStatusCode()).isEqualTo(HttpStatus.OK);
|
then(entity.getStatusCode()).isEqualTo(HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenRestTemplate_whenAccessEndpointUrl_thenHttpStatusOK() throws Exception {
|
public void givenRestTemplate_whenAccessEndpointUrl_thenHttpStatusOK() throws Exception {
|
||||||
@SuppressWarnings("rawtypes")
|
@SuppressWarnings("rawtypes")
|
||||||
|
@ -68,14 +66,14 @@ public class DisplayBeanIntegrationTest {
|
||||||
List<Map<String, Object>> allBeans = (List) ((Map) entity.getBody().get(0)).get("beans");
|
List<Map<String, Object>> allBeans = (List) ((Map) entity.getBody().get(0)).get("beans");
|
||||||
List<String> beanNamesList = allBeans.stream().map(x -> (String) x.get("bean")).collect(Collectors.toList());
|
List<String> beanNamesList = allBeans.stream().map(x -> (String) x.get("bean")).collect(Collectors.toList());
|
||||||
|
|
||||||
assertThat( beanNamesList, hasItem("fooController"));
|
assertThat(beanNamesList, hasItem("fooController"));
|
||||||
assertThat( beanNamesList, hasItem("fooService"));
|
assertThat(beanNamesList, hasItem("fooService"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenWebApplicationContext_whenAccessGetBeanDefinitionNames_thenReturnsBeanNames() throws Exception {
|
public void givenWebApplicationContext_whenAccessGetBeanDefinitionNames_thenReturnsBeanNames() throws Exception {
|
||||||
String[] beanNames = context.getBeanDefinitionNames();
|
String[] beanNames = context.getBeanDefinitionNames();
|
||||||
|
|
||||||
List<String> beanNamesList = Arrays.asList(beanNames);
|
List<String> beanNamesList = Arrays.asList(beanNames);
|
||||||
assertTrue(beanNamesList.contains("fooController"));
|
assertTrue(beanNamesList.contains("fooController"));
|
||||||
assertTrue(beanNamesList.contains("fooService"));
|
assertTrue(beanNamesList.contains("fooService"));
|
||||||
|
|
|
@ -18,7 +18,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@SpringBootTest
|
@SpringBootTest
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
@TestPropertySource(properties = { "security.basic.enabled=false" })
|
@TestPropertySource(properties = {"security.basic.enabled=false"})
|
||||||
public class AppLiveTest {
|
public class AppLiveTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
@ -27,15 +27,15 @@ public class AppLiveTest {
|
||||||
@Test
|
@Test
|
||||||
public void getIndex() throws Exception {
|
public void getIndex() throws Exception {
|
||||||
mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON))
|
mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(content().string(equalTo("Index Page")));
|
.andExpect(content().string(equalTo("Index Page")));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getLocal() throws Exception {
|
public void getLocal() throws Exception {
|
||||||
mvc.perform(MockMvcRequestBuilders.get("/local").accept(MediaType.APPLICATION_JSON))
|
mvc.perform(MockMvcRequestBuilders.get("/local").accept(MediaType.APPLICATION_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(content().string(equalTo("/local")));
|
.andExpect(content().string(equalTo("/local")));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -1,9 +1,5 @@
|
||||||
package com.baeldung.toggle;
|
package com.baeldung.toggle;
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
|
||||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
@ -16,6 +12,10 @@ import org.springframework.test.web.servlet.MockMvc;
|
||||||
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
||||||
import org.springframework.web.context.WebApplicationContext;
|
import org.springframework.web.context.WebApplicationContext;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = ToggleApplication.class)
|
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = ToggleApplication.class)
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.baeldung.utils;
|
package com.baeldung.utils;
|
||||||
|
|
||||||
|
import com.baeldung.utils.controller.UtilsController;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.mockito.InjectMocks;
|
import org.mockito.InjectMocks;
|
||||||
|
@ -10,32 +11,29 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
||||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
|
|
||||||
import com.baeldung.utils.controller.UtilsController;
|
|
||||||
|
|
||||||
public class UtilsControllerIntegrationTest {
|
public class UtilsControllerIntegrationTest {
|
||||||
|
|
||||||
@InjectMocks
|
@InjectMocks
|
||||||
private UtilsController utilsController;
|
private UtilsController utilsController;
|
||||||
|
|
||||||
private MockMvc mockMvc;
|
private MockMvc mockMvc;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() {
|
public void setup() {
|
||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
this.mockMvc = MockMvcBuilders.standaloneSetup(utilsController)
|
this.mockMvc = MockMvcBuilders.standaloneSetup(utilsController)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenParameter_setRequestParam_andSetSessionAttribute() throws Exception {
|
public void givenParameter_setRequestParam_andSetSessionAttribute() throws Exception {
|
||||||
String param = "testparam";
|
String param = "testparam";
|
||||||
this.mockMvc.perform(
|
this.mockMvc.perform(
|
||||||
post("/setParam")
|
post("/setParam")
|
||||||
.param("param", param)
|
.param("param", param)
|
||||||
.sessionAttr("parameter", param))
|
.sessionAttr("parameter", param))
|
||||||
.andExpect(status().isOk());
|
.andExpect(status().isOk());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,11 +6,6 @@ import org.mockito.Mockito;
|
||||||
import org.springframework.messaging.simp.stomp.StompHeaders;
|
import org.springframework.messaging.simp.stomp.StompHeaders;
|
||||||
import org.springframework.messaging.simp.stomp.StompSession;
|
import org.springframework.messaging.simp.stomp.StompSession;
|
||||||
|
|
||||||
/**
|
|
||||||
* Test class for MyStompSessionHandler
|
|
||||||
* @author Kalyan
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class MyStompSessionHandlerIntegrationTest {
|
public class MyStompSessionHandlerIntegrationTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -45,9 +45,9 @@ public class EmployeeControllerIntegrationTest {
|
||||||
given(service.save(Mockito.anyObject())).willReturn(alex);
|
given(service.save(Mockito.anyObject())).willReturn(alex);
|
||||||
|
|
||||||
mvc.perform(post("/api/employees").contentType(MediaType.APPLICATION_JSON)
|
mvc.perform(post("/api/employees").contentType(MediaType.APPLICATION_JSON)
|
||||||
.content(JsonUtil.toJson(alex)))
|
.content(JsonUtil.toJson(alex)))
|
||||||
.andExpect(status().isCreated())
|
.andExpect(status().isCreated())
|
||||||
.andExpect(jsonPath("$.name", is("alex")));
|
.andExpect(jsonPath("$.name", is("alex")));
|
||||||
verify(service, VerificationModeFactory.times(1)).save(Mockito.anyObject());
|
verify(service, VerificationModeFactory.times(1)).save(Mockito.anyObject());
|
||||||
reset(service);
|
reset(service);
|
||||||
}
|
}
|
||||||
|
@ -63,11 +63,11 @@ public class EmployeeControllerIntegrationTest {
|
||||||
given(service.getAllEmployees()).willReturn(allEmployees);
|
given(service.getAllEmployees()).willReturn(allEmployees);
|
||||||
|
|
||||||
mvc.perform(get("/api/employees").contentType(MediaType.APPLICATION_JSON))
|
mvc.perform(get("/api/employees").contentType(MediaType.APPLICATION_JSON))
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(jsonPath("$", hasSize(3)))
|
.andExpect(jsonPath("$", hasSize(3)))
|
||||||
.andExpect(jsonPath("$[0].name", is(alex.getName())))
|
.andExpect(jsonPath("$[0].name", is(alex.getName())))
|
||||||
.andExpect(jsonPath("$[1].name", is(john.getName())))
|
.andExpect(jsonPath("$[1].name", is(john.getName())))
|
||||||
.andExpect(jsonPath("$[2].name", is(bob.getName())));
|
.andExpect(jsonPath("$[2].name", is(bob.getName())));
|
||||||
verify(service, VerificationModeFactory.times(1)).getAllEmployees();
|
verify(service, VerificationModeFactory.times(1)).getAllEmployees();
|
||||||
reset(service);
|
reset(service);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
package org.baeldung.boot.boottest;
|
package org.baeldung.boot.boottest;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -11,6 +7,10 @@ import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
|
||||||
import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager;
|
import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager;
|
||||||
import org.springframework.test.context.junit4.SpringRunner;
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@DataJpaTest
|
@DataJpaTest
|
||||||
public class EmployeeRepositoryIntegrationTest {
|
public class EmployeeRepositoryIntegrationTest {
|
||||||
|
@ -65,7 +65,7 @@ public class EmployeeRepositoryIntegrationTest {
|
||||||
List<Employee> allEmployees = employeeRepository.findAll();
|
List<Employee> allEmployees = employeeRepository.findAll();
|
||||||
|
|
||||||
assertThat(allEmployees).hasSize(3)
|
assertThat(allEmployees).hasSize(3)
|
||||||
.extracting(Employee::getName)
|
.extracting(Employee::getName)
|
||||||
.containsOnly(alex.getName(), ron.getName(), bob.getName());
|
.containsOnly(alex.getName(), ron.getName(), bob.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,5 @@
|
||||||
package org.baeldung.boot.boottest;
|
package org.baeldung.boot.boottest;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
|
||||||
import static org.hamcrest.CoreMatchers.is;
|
|
||||||
import static org.hamcrest.Matchers.greaterThanOrEqualTo;
|
|
||||||
import static org.hamcrest.Matchers.hasSize;
|
|
||||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
|
|
||||||
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
|
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
|
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
|
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.baeldung.boot.DemoApplication;
|
import org.baeldung.boot.DemoApplication;
|
||||||
import org.junit.After;
|
import org.junit.After;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
@ -27,6 +13,20 @@ import org.springframework.http.MediaType;
|
||||||
import org.springframework.test.context.junit4.SpringRunner;
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
import org.springframework.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.MockMvc;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
import static org.hamcrest.CoreMatchers.is;
|
||||||
|
import static org.hamcrest.Matchers.greaterThanOrEqualTo;
|
||||||
|
import static org.hamcrest.Matchers.hasSize;
|
||||||
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
|
||||||
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = DemoApplication.class)
|
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = DemoApplication.class)
|
||||||
@AutoConfigureMockMvc
|
@AutoConfigureMockMvc
|
||||||
|
@ -49,11 +49,11 @@ public class EmployeeRestControllerIntegrationTest {
|
||||||
public void whenValidInput_thenCreateEmployee() throws IOException, Exception {
|
public void whenValidInput_thenCreateEmployee() throws IOException, Exception {
|
||||||
Employee bob = new Employee("bob");
|
Employee bob = new Employee("bob");
|
||||||
mvc.perform(post("/api/employees").contentType(MediaType.APPLICATION_JSON)
|
mvc.perform(post("/api/employees").contentType(MediaType.APPLICATION_JSON)
|
||||||
.content(JsonUtil.toJson(bob)));
|
.content(JsonUtil.toJson(bob)));
|
||||||
|
|
||||||
List<Employee> found = repository.findAll();
|
List<Employee> found = repository.findAll();
|
||||||
assertThat(found).extracting(Employee::getName)
|
assertThat(found).extracting(Employee::getName)
|
||||||
.containsOnly("bob");
|
.containsOnly("bob");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -63,12 +63,12 @@ public class EmployeeRestControllerIntegrationTest {
|
||||||
createTestEmployee("alex");
|
createTestEmployee("alex");
|
||||||
|
|
||||||
mvc.perform(get("/api/employees").contentType(MediaType.APPLICATION_JSON))
|
mvc.perform(get("/api/employees").contentType(MediaType.APPLICATION_JSON))
|
||||||
.andDo(print())
|
.andDo(print())
|
||||||
.andExpect(status().isOk())
|
.andExpect(status().isOk())
|
||||||
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
|
.andExpect(content().contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
|
||||||
.andExpect(jsonPath("$", hasSize(greaterThanOrEqualTo(2))))
|
.andExpect(jsonPath("$", hasSize(greaterThanOrEqualTo(2))))
|
||||||
.andExpect(jsonPath("$[0].name", is("bob")))
|
.andExpect(jsonPath("$[0].name", is("bob")))
|
||||||
.andExpect(jsonPath("$[1].name", is("alex")));
|
.andExpect(jsonPath("$[1].name", is("alex")));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void createTestEmployee(String name) {
|
private void createTestEmployee(String name) {
|
||||||
|
|
|
@ -1,10 +1,5 @@
|
||||||
package org.baeldung.boot.boottest;
|
package org.baeldung.boot.boottest;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
@ -16,6 +11,11 @@ import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.test.context.junit4.SpringRunner;
|
import org.springframework.test.context.junit4.SpringRunner;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
public class EmployeeServiceImplIntegrationTest {
|
public class EmployeeServiceImplIntegrationTest {
|
||||||
|
|
||||||
|
@ -44,27 +44,27 @@ public class EmployeeServiceImplIntegrationTest {
|
||||||
List<Employee> allEmployees = Arrays.asList(john, bob, alex);
|
List<Employee> allEmployees = Arrays.asList(john, bob, alex);
|
||||||
|
|
||||||
Mockito.when(employeeRepository.findByName(john.getName()))
|
Mockito.when(employeeRepository.findByName(john.getName()))
|
||||||
.thenReturn(john);
|
.thenReturn(john);
|
||||||
Mockito.when(employeeRepository.findByName(alex.getName()))
|
Mockito.when(employeeRepository.findByName(alex.getName()))
|
||||||
.thenReturn(alex);
|
.thenReturn(alex);
|
||||||
Mockito.when(employeeRepository.findByName("wrong_name"))
|
Mockito.when(employeeRepository.findByName("wrong_name"))
|
||||||
.thenReturn(null);
|
.thenReturn(null);
|
||||||
Mockito.when(employeeRepository.findById(john.getId()))
|
Mockito.when(employeeRepository.findById(john.getId()))
|
||||||
.thenReturn(john);
|
.thenReturn(john);
|
||||||
Mockito.when(employeeRepository.findAll())
|
Mockito.when(employeeRepository.findAll())
|
||||||
.thenReturn(allEmployees);
|
.thenReturn(allEmployees);
|
||||||
Mockito.when(employeeRepository.findById(-99L))
|
Mockito.when(employeeRepository.findById(-99L))
|
||||||
.thenReturn(null);
|
.thenReturn(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whenValidName_thenEmployeeShouldBeFound() {
|
public void whenValidName_thenEmployeeShouldBeFound() {
|
||||||
String name = "alex";
|
String name = "alex";
|
||||||
Employee found = employeeService.getEmployeeByName(name);
|
Employee found = employeeService.getEmployeeByName(name);
|
||||||
|
|
||||||
assertThat(found.getName())
|
assertThat(found.getName())
|
||||||
.isEqualTo(name);
|
.isEqualTo(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whenInValidName_thenEmployeeShouldNotBeFound() {
|
public void whenInValidName_thenEmployeeShouldNotBeFound() {
|
||||||
|
@ -114,25 +114,25 @@ public class EmployeeServiceImplIntegrationTest {
|
||||||
List<Employee> allEmployees = employeeService.getAllEmployees();
|
List<Employee> allEmployees = employeeService.getAllEmployees();
|
||||||
verifyFindAllEmployeesIsCalledOnce();
|
verifyFindAllEmployeesIsCalledOnce();
|
||||||
assertThat(allEmployees).hasSize(3)
|
assertThat(allEmployees).hasSize(3)
|
||||||
.extracting(Employee::getName)
|
.extracting(Employee::getName)
|
||||||
.contains(alex.getName(), john.getName(), bob.getName());
|
.contains(alex.getName(), john.getName(), bob.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void verifyFindByNameIsCalledOnce(String name) {
|
private void verifyFindByNameIsCalledOnce(String name) {
|
||||||
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
||||||
.findByName(name);
|
.findByName(name);
|
||||||
Mockito.reset(employeeRepository);
|
Mockito.reset(employeeRepository);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void verifyFindByIdIsCalledOnce() {
|
private void verifyFindByIdIsCalledOnce() {
|
||||||
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
||||||
.findById(Mockito.anyLong());
|
.findById(Mockito.anyLong());
|
||||||
Mockito.reset(employeeRepository);
|
Mockito.reset(employeeRepository);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void verifyFindAllEmployeesIsCalledOnce() {
|
private void verifyFindAllEmployeesIsCalledOnce() {
|
||||||
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
Mockito.verify(employeeRepository, VerificationModeFactory.times(1))
|
||||||
.findAll();
|
.findAll();
|
||||||
Mockito.reset(employeeRepository);
|
Mockito.reset(employeeRepository);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
package org.baeldung.boot.boottest;
|
package org.baeldung.boot.boottest;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
class JsonUtil {
|
class JsonUtil {
|
||||||
static byte[] toJson(Object object) throws IOException {
|
static byte[] toJson(Object object) throws IOException {
|
||||||
ObjectMapper mapper = new ObjectMapper();
|
ObjectMapper mapper = new ObjectMapper();
|
||||||
|
|
|
@ -28,9 +28,17 @@ import static org.springframework.restdocs.hypermedia.HypermediaDocumentation.li
|
||||||
import static org.springframework.restdocs.hypermedia.HypermediaDocumentation.links;
|
import static org.springframework.restdocs.hypermedia.HypermediaDocumentation.links;
|
||||||
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
|
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
|
||||||
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration;
|
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration;
|
||||||
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.*;
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.delete;
|
||||||
import static org.springframework.restdocs.operation.preprocess.Preprocessors.*;
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get;
|
||||||
import static org.springframework.restdocs.payload.PayloadDocumentation.*;
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.patch;
|
||||||
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.post;
|
||||||
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.put;
|
||||||
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessRequest;
|
||||||
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessResponse;
|
||||||
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint;
|
||||||
|
import static org.springframework.restdocs.payload.PayloadDocumentation.fieldWithPath;
|
||||||
|
import static org.springframework.restdocs.payload.PayloadDocumentation.requestFields;
|
||||||
|
import static org.springframework.restdocs.payload.PayloadDocumentation.responseFields;
|
||||||
import static org.springframework.restdocs.snippet.Attributes.key;
|
import static org.springframework.restdocs.snippet.Attributes.key;
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
import static org.springframework.util.StringUtils.collectionToDelimitedString;
|
import static org.springframework.util.StringUtils.collectionToDelimitedString;
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
package com.example;
|
package com.example;
|
||||||
|
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.jayway.jsonpath.JsonPath;
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
@ -14,21 +12,19 @@ import org.springframework.restdocs.RestDocumentation;
|
||||||
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.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.MockMvc;
|
||||||
import org.springframework.test.web.servlet.MvcResult;
|
|
||||||
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
||||||
import org.springframework.web.context.WebApplicationContext;
|
import org.springframework.web.context.WebApplicationContext;
|
||||||
|
|
||||||
import java.io.UnsupportedEncodingException;
|
import static org.hamcrest.Matchers.is;
|
||||||
import java.util.Arrays;
|
import static org.hamcrest.Matchers.notNullValue;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import static org.hamcrest.Matchers.*;
|
|
||||||
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
|
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
|
||||||
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration;
|
import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration;
|
||||||
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.*;
|
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get;
|
||||||
import static org.springframework.restdocs.operation.preprocess.Preprocessors.*;
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessRequest;
|
||||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessResponse;
|
||||||
|
import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
|
||||||
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringApplicationConfiguration(classes = SpringRestDocsApplication.class)
|
@SpringApplicationConfiguration(classes = SpringRestDocsApplication.class)
|
||||||
|
|
|
@ -37,7 +37,7 @@ public abstract class AbstractDiscoverabilityLiveTest<T extends Serializable> ex
|
||||||
|
|
||||||
// Then
|
// Then
|
||||||
final String allowHeader = res.getHeader(HttpHeaders.ALLOW);
|
final String allowHeader = res.getHeader(HttpHeaders.ALLOW);
|
||||||
assertThat(allowHeader, AnyOf.<String> anyOf(containsString("GET"), containsString("PUT"), containsString("DELETE")));
|
assertThat(allowHeader, AnyOf.anyOf(containsString("GET"), containsString("PUT"), containsString("DELETE")));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -31,7 +31,7 @@ public abstract class CsrfAbstractIntegrationTest {
|
||||||
@Autowired
|
@Autowired
|
||||||
private Filter springSecurityFilterChain;
|
private Filter springSecurityFilterChain;
|
||||||
|
|
||||||
protected MockMvc mvc;
|
MockMvc mvc;
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
|
@ -40,15 +40,15 @@ public abstract class CsrfAbstractIntegrationTest {
|
||||||
mvc = MockMvcBuilders.webAppContextSetup(context).addFilters(springSecurityFilterChain).build();
|
mvc = MockMvcBuilders.webAppContextSetup(context).addFilters(springSecurityFilterChain).build();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected RequestPostProcessor testUser() {
|
RequestPostProcessor testUser() {
|
||||||
return user("user1").password("user1Pass").roles("USER");
|
return user("user1").password("user1Pass").roles("USER");
|
||||||
}
|
}
|
||||||
|
|
||||||
protected RequestPostProcessor testAdmin() {
|
RequestPostProcessor testAdmin() {
|
||||||
return user("admin").password("adminPass").roles("USER", "ADMIN");
|
return user("admin").password("adminPass").roles("USER", "ADMIN");
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String createFoo() throws JsonProcessingException {
|
String createFoo() throws JsonProcessingException {
|
||||||
return new ObjectMapper().writeValueAsString(new Foo(randomAlphabetic(6)));
|
return new ObjectMapper().writeValueAsString(new Foo(randomAlphabetic(6)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,10 +33,6 @@ public final class JacksonMarshaller implements IMarshaller {
|
||||||
String entityAsJSON = null;
|
String entityAsJSON = null;
|
||||||
try {
|
try {
|
||||||
entityAsJSON = objectMapper.writeValueAsString(resource);
|
entityAsJSON = objectMapper.writeValueAsString(resource);
|
||||||
} catch (final JsonParseException parseEx) {
|
|
||||||
logger.error("", parseEx);
|
|
||||||
} catch (final JsonMappingException mappingEx) {
|
|
||||||
logger.error("", mappingEx);
|
|
||||||
} catch (final IOException ioEx) {
|
} catch (final IOException ioEx) {
|
||||||
logger.error("", ioEx);
|
logger.error("", ioEx);
|
||||||
}
|
}
|
||||||
|
@ -51,10 +47,6 @@ public final class JacksonMarshaller implements IMarshaller {
|
||||||
T entity = null;
|
T entity = null;
|
||||||
try {
|
try {
|
||||||
entity = objectMapper.readValue(resourceAsString, clazz);
|
entity = objectMapper.readValue(resourceAsString, clazz);
|
||||||
} catch (final JsonParseException parseEx) {
|
|
||||||
logger.error("", parseEx);
|
|
||||||
} catch (final JsonMappingException mappingEx) {
|
|
||||||
logger.error("", mappingEx);
|
|
||||||
} catch (final IOException ioEx) {
|
} catch (final IOException ioEx) {
|
||||||
logger.error("", ioEx);
|
logger.error("", ioEx);
|
||||||
}
|
}
|
||||||
|
@ -76,10 +68,6 @@ public final class JacksonMarshaller implements IMarshaller {
|
||||||
} else {
|
} else {
|
||||||
entities = objectMapper.readValue(resourcesAsString, List.class);
|
entities = objectMapper.readValue(resourcesAsString, List.class);
|
||||||
}
|
}
|
||||||
} catch (final JsonParseException parseEx) {
|
|
||||||
logger.error("", parseEx);
|
|
||||||
} catch (final JsonMappingException mappingEx) {
|
|
||||||
logger.error("", mappingEx);
|
|
||||||
} catch (final IOException ioEx) {
|
} catch (final IOException ioEx) {
|
||||||
logger.error("", ioEx);
|
logger.error("", ioEx);
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,21 +10,21 @@ public final class IDUtil {
|
||||||
|
|
||||||
// API
|
// API
|
||||||
|
|
||||||
public final static String randomPositiveLongAsString() {
|
public static String randomPositiveLongAsString() {
|
||||||
return Long.toString(randomPositiveLong());
|
return Long.toString(randomPositiveLong());
|
||||||
}
|
}
|
||||||
|
|
||||||
public final static String randomNegativeLongAsString() {
|
public static String randomNegativeLongAsString() {
|
||||||
return Long.toString(randomNegativeLong());
|
return Long.toString(randomNegativeLong());
|
||||||
}
|
}
|
||||||
|
|
||||||
public final static long randomPositiveLong() {
|
public static long randomPositiveLong() {
|
||||||
long id = new Random().nextLong() * 10000;
|
long id = new Random().nextLong() * 10000;
|
||||||
id = (id < 0) ? (-1 * id) : id;
|
id = (id < 0) ? (-1 * id) : id;
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
public final static long randomNegativeLong() {
|
private static long randomNegativeLong() {
|
||||||
long id = new Random().nextLong() * 10000;
|
long id = new Random().nextLong() * 10000;
|
||||||
id = (id > 0) ? (-1 * id) : id;
|
id = (id > 0) ? (-1 * id) : id;
|
||||||
return id;
|
return id;
|
||||||
|
|
|
@ -27,6 +27,7 @@ public class LoggerInterceptorIntegrationTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
WebApplicationContext wac;
|
WebApplicationContext wac;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
MockHttpSession session;
|
MockHttpSession session;
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,5 @@
|
||||||
package org.baeldung.web.util;
|
package org.baeldung.web.util;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import com.google.common.base.Preconditions;
|
|
||||||
import com.google.common.collect.Lists;
|
|
||||||
|
|
||||||
public final class HTTPLinkHeaderUtil {
|
public final class HTTPLinkHeaderUtil {
|
||||||
|
|
||||||
private HTTPLinkHeaderUtil() {
|
private HTTPLinkHeaderUtil() {
|
||||||
|
@ -13,23 +8,6 @@ public final class HTTPLinkHeaderUtil {
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
/**
|
|
||||||
* ex. <br>
|
|
||||||
* https://api.github.com/users/steveklabnik/gists?page=2>; rel="next", <https://api.github.com/users/steveklabnik/gists?page=3>; rel="last"
|
|
||||||
*/
|
|
||||||
public static List<String> extractAllURIs(final String linkHeader) {
|
|
||||||
Preconditions.checkNotNull(linkHeader);
|
|
||||||
|
|
||||||
final List<String> linkHeaders = Lists.newArrayList();
|
|
||||||
final String[] links = linkHeader.split(", ");
|
|
||||||
for (final String link : links) {
|
|
||||||
final int positionOfSeparator = link.indexOf(';');
|
|
||||||
linkHeaders.add(link.substring(1, positionOfSeparator - 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
return linkHeaders;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String extractURIByRel(final String linkHeader, final String rel) {
|
public static String extractURIByRel(final String linkHeader, final String rel) {
|
||||||
if (linkHeader == null) {
|
if (linkHeader == null) {
|
||||||
return null;
|
return null;
|
||||||
|
@ -37,7 +15,7 @@ public final class HTTPLinkHeaderUtil {
|
||||||
|
|
||||||
String uriWithSpecifiedRel = null;
|
String uriWithSpecifiedRel = null;
|
||||||
final String[] links = linkHeader.split(", ");
|
final String[] links = linkHeader.split(", ");
|
||||||
String linkRelation = null;
|
String linkRelation;
|
||||||
for (final String link : links) {
|
for (final String link : links) {
|
||||||
final int positionOfSeparator = link.indexOf(';');
|
final int positionOfSeparator = link.indexOf(';');
|
||||||
linkRelation = link.substring(positionOfSeparator + 1, link.length()).trim();
|
linkRelation = link.substring(positionOfSeparator + 1, link.length()).trim();
|
||||||
|
@ -50,20 +28,9 @@ public final class HTTPLinkHeaderUtil {
|
||||||
return uriWithSpecifiedRel;
|
return uriWithSpecifiedRel;
|
||||||
}
|
}
|
||||||
|
|
||||||
static Object extractTypeOfRelation(final String linkRelation) {
|
private static Object extractTypeOfRelation(final String linkRelation) {
|
||||||
final int positionOfEquals = linkRelation.indexOf('=');
|
final int positionOfEquals = linkRelation.indexOf('=');
|
||||||
return linkRelation.substring(positionOfEquals + 2, linkRelation.length() - 1).trim();
|
return linkRelation.substring(positionOfEquals + 2, linkRelation.length() - 1).trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* ex. <br>
|
|
||||||
* https://api.github.com/users/steveklabnik/gists?page=2>; rel="next"
|
|
||||||
*/
|
|
||||||
public static String extractSingleURI(final String linkHeader) {
|
|
||||||
Preconditions.checkNotNull(linkHeader);
|
|
||||||
final int positionOfSeparator = linkHeader.indexOf(';');
|
|
||||||
|
|
||||||
return linkHeader.substring(1, positionOfSeparator - 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@ public class ExpressionUtilityObjectsControllerIntegrationTest {
|
||||||
@Autowired
|
@Autowired
|
||||||
private Filter springSecurityFilterChain;
|
private Filter springSecurityFilterChain;
|
||||||
|
|
||||||
protected RequestPostProcessor testUser() {
|
private RequestPostProcessor testUser() {
|
||||||
return user("user1").password("user1Pass").roles("USER");
|
return user("user1").password("user1Pass").roles("USER");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@ public class LayoutDialectControllerIntegrationTest {
|
||||||
@Autowired
|
@Autowired
|
||||||
private Filter springSecurityFilterChain;
|
private Filter springSecurityFilterChain;
|
||||||
|
|
||||||
protected RequestPostProcessor testUser() {
|
private RequestPostProcessor testUser() {
|
||||||
return user("user1").password("user1Pass").roles("USER");
|
return user("user1").password("user1Pass").roles("USER");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@ public class CsrfEnabledIntegrationTest {
|
||||||
@Autowired
|
@Autowired
|
||||||
private Filter springSecurityFilterChain;
|
private Filter springSecurityFilterChain;
|
||||||
|
|
||||||
protected RequestPostProcessor testUser() {
|
private RequestPostProcessor testUser() {
|
||||||
return user("user1").password("user1Pass").roles("USER");
|
return user("user1").password("user1Pass").roles("USER");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,20 +1,20 @@
|
||||||
package com.baeldung.junitparams;
|
package com.baeldung.junitparams;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
|
|
||||||
import junitparams.FileParameters;
|
import junitparams.FileParameters;
|
||||||
import junitparams.JUnitParamsRunner;
|
import junitparams.JUnitParamsRunner;
|
||||||
import junitparams.Parameters;
|
import junitparams.Parameters;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
@RunWith(JUnitParamsRunner.class)
|
@RunWith(JUnitParamsRunner.class)
|
||||||
public class SafeAdditionUtilTest {
|
public class SafeAdditionUtilTest {
|
||||||
|
|
||||||
private SafeAdditionUtil serviceUnderTest = new SafeAdditionUtil();
|
private SafeAdditionUtil serviceUnderTest = new SafeAdditionUtil();
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Parameters({ "1, 2, 3", "-10, 30, 20", "15, -5, 10", "-5, -10, -15" })
|
@Parameters({"1, 2, 3", "-10, 30, 20", "15, -5, 10", "-5, -10, -15"})
|
||||||
public void whenWithAnnotationProvidedParams_thenSafeAdd(int a, int b, int expectedValue) {
|
public void whenWithAnnotationProvidedParams_thenSafeAdd(int a, int b, int expectedValue) {
|
||||||
assertEquals(expectedValue, serviceUnderTest.safeAdd(a, b));
|
assertEquals(expectedValue, serviceUnderTest.safeAdd(a, b));
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@ public class SafeAdditionUtilTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
private Object[] parametersToTestAdd() {
|
private Object[] parametersToTestAdd() {
|
||||||
return new Object[] { new Object[] { 1, 2, 3 }, new Object[] { -10, 30, 20 }, new Object[] { Integer.MAX_VALUE, 2, Integer.MAX_VALUE }, new Object[] { Integer.MIN_VALUE, -8, Integer.MIN_VALUE } };
|
return new Object[]{new Object[]{1, 2, 3}, new Object[]{-10, 30, 20}, new Object[]{Integer.MAX_VALUE, 2, Integer.MAX_VALUE}, new Object[]{Integer.MIN_VALUE, -8, Integer.MIN_VALUE}};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -36,7 +36,7 @@ public class SafeAdditionUtilTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
private Object[] parametersForWhenWithnoParam_thenLoadByNameSafeAdd() {
|
private Object[] parametersForWhenWithnoParam_thenLoadByNameSafeAdd() {
|
||||||
return new Object[] { new Object[] { 1, 2, 3 }, new Object[] { -10, 30, 20 }, new Object[] { Integer.MAX_VALUE, 2, Integer.MAX_VALUE }, new Object[] { Integer.MIN_VALUE, -8, Integer.MIN_VALUE } };
|
return new Object[]{new Object[]{1, 2, 3}, new Object[]{-10, 30, 20}, new Object[]{Integer.MAX_VALUE, 2, Integer.MAX_VALUE}, new Object[]{Integer.MIN_VALUE, -8, Integer.MIN_VALUE}};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -3,11 +3,11 @@ package com.baeldung.junitparams;
|
||||||
public class TestDataProvider {
|
public class TestDataProvider {
|
||||||
|
|
||||||
public static Object[] provideBasicData() {
|
public static Object[] provideBasicData() {
|
||||||
return new Object[] { new Object[] { 1, 2, 3 }, new Object[] { -10, 30, 20 }, new Object[] { 15, -5, 10 }, new Object[] { -5, -10, -15 } };
|
return new Object[]{new Object[]{1, 2, 3}, new Object[]{-10, 30, 20}, new Object[]{15, -5, 10}, new Object[]{-5, -10, -15}};
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Object[] provideEdgeCaseData() {
|
public static Object[] provideEdgeCaseData() {
|
||||||
return new Object[] { new Object[] { Integer.MAX_VALUE, 2, Integer.MAX_VALUE }, new Object[] { Integer.MIN_VALUE, -2, Integer.MIN_VALUE }, };
|
return new Object[]{new Object[]{Integer.MAX_VALUE, 2, Integer.MAX_VALUE}, new Object[]{Integer.MIN_VALUE, -2, Integer.MIN_VALUE},};
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,15 +1,14 @@
|
||||||
package com.baeldung.testing.calculator;
|
package com.baeldung.testing.calculator;
|
||||||
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
import cucumber.api.CucumberOptions;
|
import cucumber.api.CucumberOptions;
|
||||||
import cucumber.api.junit.Cucumber;
|
import cucumber.api.junit.Cucumber;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
|
||||||
@RunWith(Cucumber.class)
|
@RunWith(Cucumber.class)
|
||||||
@CucumberOptions(
|
@CucumberOptions(
|
||||||
features={"classpath:features/calculator.feature", "classpath:features/calculator-scenario-outline.feature"}
|
features = {"classpath:features/calculator.feature", "classpath:features/calculator-scenario-outline.feature"}
|
||||||
, plugin = { "pretty", "json:target/reports/json/calculator.json" }
|
, plugin = {"pretty", "json:target/reports/json/calculator.json"}
|
||||||
, glue = {"com.baeldung.cucumber.calculator"}
|
, glue = {"com.baeldung.cucumber.calculator"}
|
||||||
)
|
)
|
||||||
public class CalculatorIntegrationTest {
|
public class CalculatorIntegrationTest {
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,16 +1,5 @@
|
||||||
package com.baeldung.vavr.collections;
|
package com.baeldung.vavr.collections;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertFalse;
|
|
||||||
import static org.junit.Assert.assertNotSame;
|
|
||||||
import static org.junit.Assert.assertSame;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.util.Comparator;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import io.vavr.Tuple;
|
|
||||||
import io.vavr.Tuple2;
|
import io.vavr.Tuple2;
|
||||||
import io.vavr.collection.Array;
|
import io.vavr.collection.Array;
|
||||||
import io.vavr.collection.CharSeq;
|
import io.vavr.collection.CharSeq;
|
||||||
|
@ -26,6 +15,16 @@ import io.vavr.collection.Stream;
|
||||||
import io.vavr.collection.TreeMap;
|
import io.vavr.collection.TreeMap;
|
||||||
import io.vavr.collection.TreeSet;
|
import io.vavr.collection.TreeSet;
|
||||||
import io.vavr.collection.Vector;
|
import io.vavr.collection.Vector;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import java.util.Comparator;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertFalse;
|
||||||
|
import static org.junit.Assert.assertNotSame;
|
||||||
|
import static org.junit.Assert.assertSame;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
public class CollectionAPIUnitTest {
|
public class CollectionAPIUnitTest {
|
||||||
|
|
||||||
|
@ -34,7 +33,7 @@ public class CollectionAPIUnitTest {
|
||||||
List<Integer> intList = List.empty();
|
List<Integer> intList = List.empty();
|
||||||
|
|
||||||
List<Integer> anotherList = intList.push(4)
|
List<Integer> anotherList = intList.push(4)
|
||||||
.push(0);
|
.push(0);
|
||||||
Iterator<Integer> iterator = anotherList.iterator();
|
Iterator<Integer> iterator = anotherList.iterator();
|
||||||
|
|
||||||
assertEquals(new Integer(0), iterator.next());
|
assertEquals(new Integer(0), iterator.next());
|
||||||
|
@ -46,7 +45,7 @@ public class CollectionAPIUnitTest {
|
||||||
List<Integer> intList = List.of(1, 2, 3);
|
List<Integer> intList = List.of(1, 2, 3);
|
||||||
|
|
||||||
List<Integer> newList = intList.tail()
|
List<Integer> newList = intList.tail()
|
||||||
.prepend(0);
|
.prepend(0);
|
||||||
|
|
||||||
assertEquals(new Integer(1), intList.get(0));
|
assertEquals(new Integer(1), intList.get(0));
|
||||||
assertEquals(new Integer(2), intList.get(1));
|
assertEquals(new Integer(2), intList.get(1));
|
||||||
|
@ -62,45 +61,45 @@ public class CollectionAPIUnitTest {
|
||||||
public void givenQueue_whenEnqueued_thenCorrect() {
|
public void givenQueue_whenEnqueued_thenCorrect() {
|
||||||
Queue<Integer> queue = Queue.of(1, 2, 3);
|
Queue<Integer> queue = Queue.of(1, 2, 3);
|
||||||
Queue<Integer> secondQueue = queue.enqueue(4)
|
Queue<Integer> secondQueue = queue.enqueue(4)
|
||||||
.enqueue(5);
|
.enqueue(5);
|
||||||
|
|
||||||
assertEquals(3, queue.size());
|
assertEquals(3, queue.size());
|
||||||
assertEquals(5, secondQueue.size());
|
assertEquals(5, secondQueue.size());
|
||||||
|
|
||||||
secondQueue.dequeue()
|
secondQueue.dequeue()
|
||||||
.map((k, v) -> {
|
.map((k, v) -> {
|
||||||
assertEquals(new Integer(1), k);
|
assertEquals(new Integer(1), k);
|
||||||
return v.dequeue();
|
return v.dequeue();
|
||||||
})
|
})
|
||||||
.map((k, v) -> {
|
.map((k, v) -> {
|
||||||
assertEquals(new Integer(2), k);
|
assertEquals(new Integer(2), k);
|
||||||
return v.dequeue();
|
return v.dequeue();
|
||||||
})
|
})
|
||||||
.map((k, v) -> {
|
.map((k, v) -> {
|
||||||
assertEquals(new Integer(3), k);
|
assertEquals(new Integer(3), k);
|
||||||
return v.dequeue();
|
return v.dequeue();
|
||||||
})
|
})
|
||||||
.map((k, v) -> {
|
.map((k, v) -> {
|
||||||
assertEquals(new Integer(4), k);
|
assertEquals(new Integer(4), k);
|
||||||
return v.dequeue();
|
return v.dequeue();
|
||||||
})
|
})
|
||||||
.map((k, v) -> {
|
.map((k, v) -> {
|
||||||
assertEquals(new Integer(5), k);
|
assertEquals(new Integer(5), k);
|
||||||
assertTrue(v.isEmpty());
|
assertTrue(v.isEmpty());
|
||||||
return null;
|
return null;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenStream_whenProcessed_thenCorrect() {
|
public void givenStream_whenProcessed_thenCorrect() {
|
||||||
Stream<Integer> intStream = Stream.iterate(0, i -> i + 1)
|
Stream<Integer> intStream = Stream.iterate(0, i -> i + 1)
|
||||||
.take(10);
|
.take(10);
|
||||||
|
|
||||||
assertEquals(10, intStream.size());
|
assertEquals(10, intStream.size());
|
||||||
|
|
||||||
long evenSum = intStream.filter(i -> i % 2 == 0)
|
long evenSum = intStream.filter(i -> i % 2 == 0)
|
||||||
.sum()
|
.sum()
|
||||||
.longValue();
|
.longValue();
|
||||||
|
|
||||||
assertEquals(20L, evenSum);
|
assertEquals(20L, evenSum);
|
||||||
assertEquals(new Integer(5), intStream.get(5));
|
assertEquals(new Integer(5), intStream.get(5));
|
||||||
|
@ -170,7 +169,7 @@ public class CollectionAPIUnitTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenSortedSet_whenReversed_thenCorrect() {
|
public void givenSortedSet_whenReversed_thenCorrect() {
|
||||||
Comparator<String> reverseCompare = (a, b) -> b.compareTo(a);
|
Comparator<String> reverseCompare = Comparator.reverseOrder();
|
||||||
SortedSet<String> set = TreeSet.of(reverseCompare, "Green", "Red", "Blue");
|
SortedSet<String> set = TreeSet.of(reverseCompare, "Green", "Red", "Blue");
|
||||||
|
|
||||||
Iterator<String> iterator = set.iterator();
|
Iterator<String> iterator = set.iterator();
|
||||||
|
@ -182,17 +181,17 @@ public class CollectionAPIUnitTest {
|
||||||
@Test
|
@Test
|
||||||
public void givenMap_whenIterated_thenCorrect() {
|
public void givenMap_whenIterated_thenCorrect() {
|
||||||
Map<Integer, List<Integer>> map = List.rangeClosed(0, 10)
|
Map<Integer, List<Integer>> map = List.rangeClosed(0, 10)
|
||||||
.groupBy(i -> i % 2);
|
.groupBy(i -> i % 2);
|
||||||
|
|
||||||
assertEquals(2, map.size());
|
assertEquals(2, map.size());
|
||||||
|
|
||||||
Iterator<Tuple2<Integer, List<Integer>>> iterator = map.iterator();
|
Iterator<Tuple2<Integer, List<Integer>>> iterator = map.iterator();
|
||||||
assertEquals(6, iterator.next()
|
assertEquals(6, iterator.next()
|
||||||
._2()
|
._2()
|
||||||
.size());
|
.size());
|
||||||
assertEquals(5, iterator.next()
|
assertEquals(5, iterator.next()
|
||||||
._2()
|
._2()
|
||||||
.size());
|
.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -201,11 +200,11 @@ public class CollectionAPIUnitTest {
|
||||||
|
|
||||||
Iterator<Tuple2<Integer, String>> iterator = map.iterator();
|
Iterator<Tuple2<Integer, String>> iterator = map.iterator();
|
||||||
assertEquals(new Integer(1), iterator.next()
|
assertEquals(new Integer(1), iterator.next()
|
||||||
._1());
|
._1());
|
||||||
assertEquals(new Integer(2), iterator.next()
|
assertEquals(new Integer(2), iterator.next()
|
||||||
._1());
|
._1());
|
||||||
assertEquals(new Integer(3), iterator.next()
|
assertEquals(new Integer(3), iterator.next()
|
||||||
._1());
|
._1());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -223,19 +222,14 @@ public class CollectionAPIUnitTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenVavrList_whenConverted_thenCorrect() {
|
public void givenVavrList_whenConverted_thenCorrect() {
|
||||||
Integer[] array = List.of(1, 2, 3)
|
java.util.Set<Integer> collect = List.of(1, 2, 3)
|
||||||
.toJavaArray(Integer.class);
|
.collect(Collectors.toSet());
|
||||||
assertEquals(3, array.length);
|
|
||||||
|
|
||||||
java.util.Map<String, Integer> map = List.of("1", "2", "3")
|
|
||||||
.toJavaMap(i -> Tuple.of(i, Integer.valueOf(i)));
|
|
||||||
assertEquals(new Integer(2), map.get("2"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void givenVavrList_whenConvertedView_thenCorrect() {
|
public void givenVavrList_whenConvertedView_thenCorrect() {
|
||||||
java.util.List<Integer> javaList = List.of(1, 2, 3)
|
java.util.List<Integer> javaList = List.of(1, 2, 3)
|
||||||
.asJavaMutable();
|
.asJavaMutable();
|
||||||
javaList.add(4);
|
javaList.add(4);
|
||||||
|
|
||||||
assertEquals(new Integer(4), javaList.get(3));
|
assertEquals(new Integer(4), javaList.get(3));
|
||||||
|
@ -244,7 +238,7 @@ public class CollectionAPIUnitTest {
|
||||||
@Test(expected = UnsupportedOperationException.class)
|
@Test(expected = UnsupportedOperationException.class)
|
||||||
public void givenVavrList_whenConvertedView_thenException() {
|
public void givenVavrList_whenConvertedView_thenException() {
|
||||||
java.util.List<Integer> javaList = List.of(1, 2, 3)
|
java.util.List<Integer> javaList = List.of(1, 2, 3)
|
||||||
.asJava();
|
.asJava();
|
||||||
|
|
||||||
assertEquals(new Integer(3), javaList.get(2));
|
assertEquals(new Integer(3), javaList.get(2));
|
||||||
javaList.add(4);
|
javaList.add(4);
|
||||||
|
@ -254,8 +248,8 @@ public class CollectionAPIUnitTest {
|
||||||
public void givenList_whenSquared_thenCorrect() {
|
public void givenList_whenSquared_thenCorrect() {
|
||||||
List<Integer> vavrList = List.of(1, 2, 3);
|
List<Integer> vavrList = List.of(1, 2, 3);
|
||||||
Number sum = vavrList.map(i -> i * i)
|
Number sum = vavrList.map(i -> i * i)
|
||||||
.sum();
|
.sum();
|
||||||
|
|
||||||
assertEquals(new Long(14), sum);
|
assertEquals(14L, sum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,10 +21,10 @@ public class JsonCreatorUnitTest {
|
||||||
|
|
||||||
// arrange
|
// arrange
|
||||||
String authorJson =
|
String authorJson =
|
||||||
"{" +
|
"{" +
|
||||||
" \"christianName\": \"Alex\"," +
|
" \"christianName\": \"Alex\"," +
|
||||||
" \"surname\": \"Theedom\"" +
|
" \"surname\": \"Theedom\"" +
|
||||||
"}";
|
"}";
|
||||||
|
|
||||||
// act
|
// act
|
||||||
final Author author = new ObjectMapper().readerFor(Author.class).readValue(authorJson);
|
final Author author = new ObjectMapper().readerFor(Author.class).readValue(authorJson);
|
||||||
|
|
|
@ -24,7 +24,7 @@ public class JsonFilterUnitTest {
|
||||||
// arrange
|
// arrange
|
||||||
Author author = new Author("Alex", "Theedom");
|
Author author = new Author("Alex", "Theedom");
|
||||||
FilterProvider filters = new SimpleFilterProvider()
|
FilterProvider filters = new SimpleFilterProvider()
|
||||||
.addFilter("authorFilter", SimpleBeanPropertyFilter.filterOutAllExcept("lastName"));
|
.addFilter("authorFilter", SimpleBeanPropertyFilter.filterOutAllExcept("lastName"));
|
||||||
|
|
||||||
// act
|
// act
|
||||||
String result = new ObjectMapper().writer(filters).writeValueAsString(author);
|
String result = new ObjectMapper().writer(filters).writeValueAsString(author);
|
||||||
|
|
|
@ -32,8 +32,8 @@ public class JsonFormatUnitTest {
|
||||||
Date date = df.parse(toParse);
|
Date date = df.parse(toParse);
|
||||||
|
|
||||||
Book book = new Book(
|
Book book = new Book(
|
||||||
"Design Patterns: Elements of Reusable Object-oriented Software",
|
"Design Patterns: Elements of Reusable Object-oriented Software",
|
||||||
new Author("The", "GoF")
|
new Author("The", "GoF")
|
||||||
);
|
);
|
||||||
book.setPublished(date);
|
book.setPublished(date);
|
||||||
|
|
||||||
|
|
|
@ -22,8 +22,8 @@ public class JsonPropertyUnitTest {
|
||||||
|
|
||||||
// arrange
|
// arrange
|
||||||
Book book = new Book(
|
Book book = new Book(
|
||||||
"Design Patterns: Elements of Reusable Object-oriented Software",
|
"Design Patterns: Elements of Reusable Object-oriented Software",
|
||||||
new Author("The", "GoF")
|
new Author("The", "GoF")
|
||||||
);
|
);
|
||||||
book.configureBinding("Hardback");
|
book.configureBinding("Hardback");
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue