/* * This code is distributed under The GNU Lesser General Public License (LGPLv3) * Please visit GNU site for LGPLv3 http://www.gnu.org/copyleft/lesser.html * * Copyright Denis Pavlov 2009 * Web: http://www.genericdtoassembler.org * SVN: https://svn.code.sf.net/p/geda-genericdto/code/trunk/ * SVN (mirror): http://geda-genericdto.googlecode.com/svn/trunk/ */ package com.inspiresoftware.lib.dto.geda.test; import com.inspiresoftware.lib.dto.geda.DTOFactory; import com.inspiresoftware.lib.dto.geda.DTOSupport; import com.inspiresoftware.lib.dto.geda.test.impl.DomainObjectImpl; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.testng.AbstractTestNGSpringContextTests; import org.testng.annotations.Test; import java.util.Map; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotNull; /** * . * <p/> * User: denispavlov * Date: Jan 30, 2012 * Time: 6:35:10 PM */ @ContextConfiguration("/spring-xml.xml") public class IntegrationXmlTest extends AbstractTestNGSpringContextTests { @Test public void testBeansSetup() { final DTOFactory factory = this.applicationContext.getBean("dtoFactory", DTOFactory.class); assertNotNull(factory); final DTOSupport support = this.applicationContext.getBean("dtoSupport", DTOSupport.class); assertNotNull(support); final ExposedDTOAdaptersRegistrar registrar = this.applicationContext.getBean("adapterRegistrar", ExposedDTOAdaptersRegistrar.class); assertNotNull(registrar); final Map<String, Object> adapters = registrar.getAdapters(); assertNotNull(adapters); assertEquals(3, adapters.size()); final ExposedValueConverter vc = (ExposedValueConverter) adapters.get("vc"); assertNotNull(vc.getDtoSupport()); final ExposedEntityRetriever er = (ExposedEntityRetriever) adapters.get("er"); assertNotNull(er.getDtoSupport()); final ExposedMatcher ma = (ExposedMatcher) adapters.get("ma"); assertNotNull(ma.getDtoSupport()); } @Test(dependsOnMethods = "testBeansSetup") public void testTransferCustomProperty() { final TestXmlService service = this.applicationContext.getBean("xmlTestServiceCustomProperty", TestXmlService.class); final DomainObject entity = new DomainObjectImpl(); entity.setValue("entityVal1"); entity.setValue2("entityVal2"); final ExtendedDataTransferObject dto = service.transfer(entity); assertEquals(dto.getValue(), "entityVal1"); assertEquals(dto.getValue2(), "entityVal2"); } @Test(dependsOnMethods = "testBeansSetup") public void testTransferDefaultProperty() { final TestXmlService service = this.applicationContext.getBean("xmlTestServiceDefaultProperty", TestXmlService.class); final DomainObject entity = new DomainObjectImpl(); entity.setValue("entityVal1"); entity.setValue2("entityVal2"); final ExtendedDataTransferObject dto = service.transfer(entity); assertEquals(dto.getValue(), "entityVal1"); assertEquals(dto.getValue2(), "entityVal2"); } }