/* * 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.config.AnnotationDrivenGeDABeanDefinitionParser; import com.inspiresoftware.lib.dto.geda.interceptor.AdviceConfigResolver; import com.inspiresoftware.lib.dto.geda.interceptor.GeDAInterceptor; import com.inspiresoftware.lib.dto.geda.test.impl.AnnotatedExtendedDataTransferObjectImpl; import com.inspiresoftware.lib.dto.geda.test.impl.DomainObjectImpl; import org.springframework.aop.PointcutAdvisor; import org.springframework.test.context.testng.AbstractTestNGSpringContextTests; import org.testng.annotations.Test; import java.util.Date; import static org.testng.Assert.*; /** * . * <p/> * User: denispavlov * Date: Jan 25, 2012 * Time: 5:30:53 PM */ public abstract class IntegrationMinimalTest 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 AdviceConfigResolver resolver = this.applicationContext.getBean(AdviceConfigResolver.class); assertNotNull(resolver); final GeDAInterceptor interceptor = this.applicationContext.getBean(GeDAInterceptor.class); assertNotNull(interceptor); final PointcutAdvisor advisor = this.applicationContext.getBean( AnnotationDrivenGeDABeanDefinitionParser.ADVISOR_BEAN_NAME, PointcutAdvisor.class); assertNotNull(advisor); } @Test(dependsOnMethods = "testBeansSetup") public void testDtoToEntityBeforeExact() { final TestService service = this.applicationContext.getBean("annSimpleTransferableService", TestService.class); final Date time = new Date(); final ExtendedDataTransferObject dto = new AnnotatedExtendedDataTransferObjectImpl(); dto.setValue("dtoVal1"); dto.setValue2("dtoVal2"); dto.setTimestamp(time); final DomainObject entity = new DomainObjectImpl(); service.dtoToEntityBeforeExact(dto, entity); assertEquals(entity.getValue(), "dtoVal1"); assertEquals(entity.getValue2(), "dtoVal2"); assertNull(entity.getTimestamp()); assertEquals(dto.getValue(), "dtoVal1"); assertEquals(dto.getValue2(), "dtoVal2"); assertEquals(dto.getTimestamp(), time); } }