/* * TODO problemas con el constructor */ package mx.edu.um.mateo.colportor.dao; import java.util.List; import java.util.Map; import java.util.TreeMap; import mx.edu.um.mateo.colportor.model.Asociado; import mx.edu.um.mateo.colportor.model.Colportor; import mx.edu.um.mateo.colportor.model.Temporada; import mx.edu.um.mateo.colportor.model.TemporadaColportor; import mx.edu.um.mateo.colportor.utils.UltimoException; import mx.edu.um.mateo.general.model.Usuario; import mx.edu.um.mateo.general.test.BaseDaoTest; import mx.edu.um.mateo.general.utils.Constantes; import mx.edu.um.mateo.rh.model.Colegio; import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; /** * * @author gibrandemetrioo */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"classpath:mateo.xml", "classpath:security.xml"}) @Transactional public class TemporadaColportorDaoTest extends BaseDaoTest { @Autowired private TemporadaColportorDao instance; @Test public void listaPorEmpresa() { log.debug("Debiera mostrar lista Campanias por empresa"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadacolportor = null; for (int i = 0; i < 20; i++) { temporadacolportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"+i); temporadacolportor.setColportor((Colportor) colportor); temporadacolportor.setAsociado((Asociado) asociado); temporadacolportor.setTemporada(temporada); temporadacolportor.setColegio(colegio); currentSession().save(temporadacolportor); assertNotNull(temporadacolportor.getId()); } Map<String, Object> params = new TreeMap(); params.put("empresa", asociado.getEmpresa().getId()); Map result = instance.lista(params); assertNotNull(result.get(Constantes.TEMPORADACOLPORTOR_LIST)); assertNotNull(result.get(Constantes.CONTAINSKEY_CANTIDAD)); assertEquals(10, ((List<TemporadaColportor>) result.get(Constantes.TEMPORADACOLPORTOR_LIST)).size()); assertEquals(20, ((Long) result.get(Constantes.CONTAINSKEY_CANTIDAD)).intValue()); } @Test public void listaPorAsociado() { log.debug("Debiera mostrar lista Campanias por Asociado"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadacolportor = null; for (int i = 0; i < 20; i++) { temporadacolportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"+i); temporadacolportor.setColportor((Colportor) colportor); temporadacolportor.setAsociado((Asociado) asociado); temporadacolportor.setTemporada(temporada); temporadacolportor.setColegio(colegio); currentSession().save(temporadacolportor); assertNotNull(temporadacolportor.getId()); } Map<String, Object> params = new TreeMap(); params.put("asociado", asociado.getId()); Map result = instance.lista(params); assertNotNull(result.get(Constantes.TEMPORADACOLPORTOR_LIST)); assertNotNull(result.get(Constantes.CONTAINSKEY_CANTIDAD)); assertEquals(10, ((List<TemporadaColportor>) result.get(Constantes.TEMPORADACOLPORTOR_LIST)).size()); assertEquals(20, ((Long) result.get(Constantes.CONTAINSKEY_CANTIDAD)).intValue()); } @Test public void obtenerPorId() { log.debug("Debiera obtener Campania por Id"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); currentSession().save(temporadaColportor); assertNotNull(temporadaColportor.getId()); Long id = temporadaColportor.getId(); TemporadaColportor result = instance.obtiene(id); assertNotNull(result.getId()); assertEquals("TEST", result.getObservaciones()); } @Test public void obtenerPorColportor() { log.debug("Debiera obtener una Campania por Colportor"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); currentSession().save(temporadaColportor); assertNotNull(temporadaColportor.getId()); TemporadaColportor result = instance.obtiene((Colportor) colportor); assertNotNull(result); assertNotNull(result.getId()); assertEquals("TEST", result.getObservaciones()); } @Test public void obtenerPorColportorAndTemporada() { log.debug("Debiera obtener Temporada Colportor por Colportor"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Temporada temporada2 = new Temporada("test"); temporada2.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada2); assertNotNull(temporada2.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); currentSession().save(temporadaColportor); assertNotNull(temporadaColportor.getId()); TemporadaColportor temporadaColportor2 = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor2.setColportor((Colportor) colportor); temporadaColportor2.setAsociado((Asociado) asociado); temporadaColportor2.setTemporada(temporada2); temporadaColportor2.setColegio(colegio); currentSession().save(temporadaColportor2); assertNotNull(temporadaColportor2.getId()); TemporadaColportor result = instance.obtiene((Colportor)colportor, temporada2); assertNotNull(result); assertEquals(result, temporadaColportor2); } @Test public void crear() { log.debug("Deberia crear Temporada Colportor"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); instance.crea(temporadaColportor); assertNotNull(temporadaColportor.getId()); TemporadaColportor result = instance.obtiene((Colportor) colportor); assertNotNull(result); assertNotNull(result.getId()); assertEquals(temporadaColportor, result); } @Test public void actualiza() { log.debug("Deberia actualizar Temporada Colportor"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); instance.crea(temporadaColportor); assertNotNull(temporadaColportor.getId()); temporadaColportor.setObservaciones("modificado"); instance.actualiza(temporadaColportor); TemporadaColportor temporadaClp = instance.obtiene(temporadaColportor.getId()); assertNotNull(temporadaClp); assertEquals(temporadaColportor, temporadaClp); } @Test public void elimina() throws UltimoException { log.debug("Debiera eliminar Temporada Colportor"); Usuario colportor = obtieneColportor(); Usuario asociado = obtieneAsociado(colportor); Temporada temporada = new Temporada("test"); temporada.setOrganizacion(asociado.getEmpresa().getOrganizacion()); currentSession().save(temporada); assertNotNull(temporada.getId()); Colegio colegio = new Colegio("UM", Constantes.STATUS_ACTIVO); currentSession().save(colegio); TemporadaColportor temporadaColportor = new TemporadaColportor(Constantes.STATUS_ACTIVO, "TEST", "TEST"); temporadaColportor.setColportor((Colportor) colportor); temporadaColportor.setAsociado((Asociado) asociado); temporadaColportor.setTemporada(temporada); temporadaColportor.setColegio(colegio); currentSession().save(temporadaColportor); assertNotNull(temporadaColportor.getId()); String nombre2 = instance.elimina(temporadaColportor.getId()); assertEquals(nombre2, temporadaColportor.getColportor().getClave()); TemporadaColportor prueba = instance.obtiene(temporadaColportor.getId()); if (!prueba.getStatus().equals(Constantes.STATUS_INACTIVO)) { fail("Fallo la prueba Eliminar"); } } }