package org.openstack.atlas.api.mgmt.mapper.dozer; import org.openstack.atlas.service.domain.entities.IpVersion; import org.openstack.atlas.service.domain.entities.Ticket; import org.openstack.atlas.service.domain.entities.VirtualIp; import org.openstack.atlas.service.domain.entities.VirtualIpType; import org.dozer.DozerBeanMapper; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.experimental.runners.Enclosed; import org.junit.runner.RunWith; @RunWith(Enclosed.class) public class VirtualIpTest { private static final String managementDozerConfigFile = "loadbalancing-dozer-management-mapping.xml"; public static class WhenMappingAVirtualIpFromDomainToDataModel { private DozerBeanMapper mapper; private org.openstack.atlas.docs.loadbalancers.api.management.v1.VirtualIp dataModelVip; private VirtualIp vip; private Ticket ticket; @Before public void standUp() { mapper = MapperBuilder.getConfiguredMapper(managementDozerConfigFile); vip = new VirtualIp(); vip.setId(1234); vip.setIpAddress("10.0.0.1"); vip.setVipType(VirtualIpType.PUBLIC); ticket = new Ticket(); ticket.setTicketId("1234"); ticket.setComment("My first comment!"); vip.setTicket(ticket); dataModelVip = mapper.map(vip, org.openstack.atlas.docs.loadbalancers.api.management.v1.VirtualIp.class); } @Test public void shouldNotFailWhenDomainVirtualIpIsEmpty() { vip = new VirtualIp(); try { dataModelVip = mapper.map(vip, org.openstack.atlas.docs.loadbalancers.api.management.v1.VirtualIp.class); } catch (Exception e) { Assert.fail("Empty data model vip caused this exception"); } } @Test public void shouldMapTicket() { Assert.assertNotNull(dataModelVip.getTicket()); Assert.assertEquals(ticket.getTicketId(), dataModelVip.getTicket().getTicketId()); Assert.assertEquals(ticket.getComment(), dataModelVip.getTicket().getComment()); } } }