Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2017
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.97 KB | None | 0 0
  1. package com.capgemini.mappers;
  2.  
  3. import com.capgemini.entities.*;
  4. import com.capgemini.to.*;
  5. import org.junit.Test;
  6. import org.junit.runner.RunWith;
  7. import org.springframework.boot.test.context.SpringBootTest;
  8. import org.springframework.test.context.TestPropertySource;
  9. import org.springframework.test.context.junit4.SpringRunner;
  10. import org.springframework.transaction.annotation.Transactional;
  11.  
  12. import javax.persistence.EntityManager;
  13. import javax.persistence.PersistenceContext;
  14.  
  15. import static org.junit.Assert.*;
  16.  
  17. @TestPropertySource(properties = {
  18.         "spring.profiles.active=mysql",
  19.         "spring.datasource.username=admin",
  20.         "spring.datasource.password=password"})
  21. @RunWith(SpringRunner.class)
  22. @SpringBootTest
  23. @Transactional
  24. public class MasterMapperTest {
  25.  
  26.     @PersistenceContext
  27.     private EntityManager entityManager;
  28.  
  29.     @Test
  30.     public void shouldMapApartmentEntityToApartmentToWithAllRelatedMapped() {
  31.         // given
  32.         long apartmentId = 1L;
  33.         ApartmentEntity apartmentEntity = entityManager.find(ApartmentEntity.class, apartmentId);
  34.  
  35.         // when
  36.         ApartmentTo result = (ApartmentTo) MasterMapper.entity2To(apartmentEntity);
  37.  
  38.         // then
  39.         // check if entities mapped correctly
  40.         assertApartmentIntegrity(apartmentEntity, result);
  41.         assertAddressIntegrity(apartmentEntity.getAddress(), result.getAddress());
  42.         assertBuildingIntegrity(apartmentEntity.getBuilding(), result.getBuilding());
  43.  
  44.         // checking if instances are not doubled
  45.         assertEquals(result, result.getBuilding().getApartments().get(0));
  46.         assertEquals(result.getBuilding(), result.getBuilding().getApartments().get(0).getBuilding());
  47.         assertEquals(result.getPurchasedBy().get(0),
  48.                 result.getBuilding().getApartments().get(0).getPurchasedBy().get(0));
  49.     }
  50.  
  51.     // PRIVATE
  52.  
  53.     private void assertAbstractIntegrity(AbstractEntity entity, AbstractTo tObject) {
  54.         assertEquals(entity.getId(), tObject.getId());
  55.         assertEquals(entity.getCreatedOn(), tObject.getCreatedOn());
  56.         assertEquals(entity.getModifiedOn(), tObject.getModifiedOn());
  57.         assertEquals(entity.getVersion(), tObject.getVersion().longValue());
  58.     }
  59.  
  60.     private void assertApartmentIntegrity(ApartmentEntity entity, ApartmentTo tObject) {
  61.         assertAbstractIntegrity(entity, tObject);
  62.         assertEquals(entity.getArea(), tObject.getArea());
  63.         assertEquals(entity.getRoomsCount(), tObject.getRoomsCount());
  64.         assertEquals(entity.getBalconiesCount(), tObject.getBalconiesCount());
  65.         assertEquals(entity.getFloor(), tObject.getFloor());
  66.         assertEquals(entity.getApartmentStatus(), tObject.getApartmentStatus());
  67.     }
  68.  
  69.     private void assertAddressIntegrity(AddressEntity entity, AddressTo tObject) {
  70.         assertAbstractIntegrity(entity, tObject);
  71.         assertEquals(entity.getStreet(), tObject.getStreet());
  72.         assertEquals(entity.getCity(), tObject.getCity());
  73.         assertEquals(entity.getCountry(), tObject.getCountry());
  74.         assertEquals(entity.getPostalCode(), tObject.getPostalCode());
  75.     }
  76.  
  77.     private void assertBuildingIntegrity(BuildingEntity entity, BuildingTo tObject) {
  78.         assertAbstractIntegrity(entity, tObject);
  79.         assertEquals(entity.getApartmentsCount(), tObject.getApartmentsCount());
  80.         assertEquals(entity.getFloorCount(), tObject.getFloorCount());
  81.         assertEquals(entity.getHasLift(), tObject.getHasLift());
  82.     }
  83.  
  84.     private void assertCustomerIntegrity(CustomerEntity entity, CustomerTo tObject) {
  85.         assertAbstractIntegrity(entity, tObject);
  86.         assertEquals(entity.getFirstName(), tObject.getFirstName());
  87.         assertEquals(entity.getSurname(), tObject.getSurname());
  88.         assertEquals(entity.getIdNumber(), tObject.getIdNumber());
  89.         assertEquals(entity.getEmailAddress(), tObject.getEmailAddress());
  90.         assertEquals(entity.getPhoneNumber(), tObject.getPhoneNumber());
  91.     }
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement