Search in sources :

Example 1 with AdvancedSearchContactSearch

use of com.autentia.tnt.dao.search.AdvancedSearchContactSearch in project TNTConcept by autentia.

the class ContactPositionManagerTest method testDoAdvancedSearchHistorical.

/**
 * Buscar por en historico y en activo
 */
@Test
public void testDoAdvancedSearchHistorical() {
    final PositionDAO positionDAO = (PositionDAO) SpringUtilsForTesting.getSpringBean("daoPosition");
    final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
    final EntityChangeDAO entityChangeDAO = (EntityChangeDAO) SpringUtilsForTesting.getSpringBean("daoEntityChange");
    final ContactPositionManager contactPositionManager = new ContactPositionManager(contactDAO, positionDAO);
    this.insertInitialData();
    this.insertContactData();
    // añadimos que Pilar Sancho fue becaria
    final EntityChange changePosition = new EntityChange();
    changePosition.setField(Contact.FIELD_POSITION);
    changePosition.setNewValue("");
    changePosition.setOldValue("becario");
    changePosition.setEntityId(pilarSancho.getId());
    changePosition.setEntityName("com.autentia.tnt.businessobject.Contact");
    entityChangeDAO.insert(changePosition);
    final AdvancedSearchContactSearch advancedSearch = new AdvancedSearchContactSearch();
    final List<Position> positions = new ArrayList<Position>();
    positions.add(becario);
    advancedSearch.setPositions(positions);
    final List<ContactPosition> contactPositions = contactPositionManager.doAdvancedSearch(advancedSearch, ACTIVE_AND_HISTORICAL);
    // debe salir dos resultados, ya que hay uno que es becario actualmente y otro que lo fue
    if (contactPositions.size() != 2) {
        fail("Deberian haber salido 2 resultados, pero han salido " + contactPositions.size());
    }
}
Also used : PositionDAO(com.autentia.tnt.dao.hibernate.PositionDAO) AdvancedSearchContactSearch(com.autentia.tnt.dao.search.AdvancedSearchContactSearch) ContactDAO(com.autentia.tnt.dao.hibernate.ContactDAO) Position(com.autentia.tnt.businessobject.Position) EntityChange(com.autentia.tnt.tracking.EntityChange) ArrayList(java.util.ArrayList) EntityChangeDAO(com.autentia.tnt.tracking.hibernate.dao.EntityChangeDAO) Test(org.junit.Test)

Example 2 with AdvancedSearchContactSearch

use of com.autentia.tnt.dao.search.AdvancedSearchContactSearch in project TNTConcept by autentia.

the class ContactPositionManagerTest method testDoAdvancedSearchWithoutCriteria.

/**
 * Busqueda sin filtrado
 */
@Test
public void testDoAdvancedSearchWithoutCriteria() {
    final PositionDAO positionDAO = (PositionDAO) SpringUtilsForTesting.getSpringBean("daoPosition");
    final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
    final ContactPositionManager contactPositionManager = new ContactPositionManager(contactDAO, positionDAO);
    this.insertInitialData();
    this.insertContactData();
    final AdvancedSearchContactSearch advancedSearch = new AdvancedSearchContactSearch();
    final List<ContactPosition> contactPositions = contactPositionManager.doAdvancedSearch(advancedSearch, JUST_ACTIVE);
    // deben salir 4 resultados, puesto que hay 2 contactos con puesto y 2 puestos sin asignar
    if (contactPositions.size() != 4) {
        fail("Deberian haber salido 4 resultados, pero han salido " + contactPositions.size());
    }
}
Also used : PositionDAO(com.autentia.tnt.dao.hibernate.PositionDAO) AdvancedSearchContactSearch(com.autentia.tnt.dao.search.AdvancedSearchContactSearch) ContactDAO(com.autentia.tnt.dao.hibernate.ContactDAO) Test(org.junit.Test)

Example 3 with AdvancedSearchContactSearch

use of com.autentia.tnt.dao.search.AdvancedSearchContactSearch in project TNTConcept by autentia.

the class ContactPositionManagerTest method testDoAdvancedSearchBusyPosition.

/**
 * Buscar por puesto ocupado
 */
@Test
public void testDoAdvancedSearchBusyPosition() {
    final PositionDAO positionDAO = (PositionDAO) SpringUtilsForTesting.getSpringBean("daoPosition");
    final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
    final ContactPositionManager contactPositionManager = new ContactPositionManager(contactDAO, positionDAO);
    this.insertInitialData();
    this.insertContactData();
    final AdvancedSearchContactSearch advancedSearch = new AdvancedSearchContactSearch();
    final List<Position> positions = new ArrayList<Position>();
    positions.add(becario);
    advancedSearch.setPositions(positions);
    final List<ContactPosition> contactPositions = contactPositionManager.doAdvancedSearch(advancedSearch, JUST_ACTIVE);
    // debe salir un resultado, que es Antonio Ruiz ya que posee el cargo de becario
    if (contactPositions.size() != 1) {
        fail("Deberia haber salido 1 resultado (1 contacto), pero han salido " + contactPositions.size());
    }
    if (!contactPositions.get(0).getName().equals("Antonio Ruiz")) {
        fail("El resultado debería haber sido 'Antonio Ruiz', pero ha sido " + contactPositions.get(0).getName());
    }
}
Also used : PositionDAO(com.autentia.tnt.dao.hibernate.PositionDAO) AdvancedSearchContactSearch(com.autentia.tnt.dao.search.AdvancedSearchContactSearch) ContactDAO(com.autentia.tnt.dao.hibernate.ContactDAO) Position(com.autentia.tnt.businessobject.Position) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 4 with AdvancedSearchContactSearch

use of com.autentia.tnt.dao.search.AdvancedSearchContactSearch in project TNTConcept by autentia.

the class ContactPositionManagerTest method testDoAdvancedSearchEmptyPosition.

/**
 * Buscar por puesto libre
 */
@Test
public void testDoAdvancedSearchEmptyPosition() {
    final PositionDAO positionDAO = (PositionDAO) SpringUtilsForTesting.getSpringBean("daoPosition");
    final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
    final ContactPositionManager contactPositionManager = new ContactPositionManager(contactDAO, positionDAO);
    this.insertInitialData();
    this.insertContactData();
    final AdvancedSearchContactSearch advancedSearch = new AdvancedSearchContactSearch();
    final List<Position> positions = new ArrayList<Position>();
    positions.add(responsableDireccion);
    advancedSearch.setPositions(positions);
    final List<ContactPosition> contactPositions = contactPositionManager.doAdvancedSearch(advancedSearch, JUST_ACTIVE);
    // debe salir un resultado que es el puesto sin ocupantes
    if (contactPositions.size() != 1) {
        fail("Deberia haber salido 1 resultado (1 puesto), pero han salido " + contactPositions.size());
    }
    if (!contactPositions.get(0).getPosition().equals("Responsable de Dirección")) {
        fail("El resultado debería haber sido 'Responsable de Dirección', pero ha sido " + contactPositions.get(0).getPosition());
    }
}
Also used : PositionDAO(com.autentia.tnt.dao.hibernate.PositionDAO) AdvancedSearchContactSearch(com.autentia.tnt.dao.search.AdvancedSearchContactSearch) ContactDAO(com.autentia.tnt.dao.hibernate.ContactDAO) Position(com.autentia.tnt.businessobject.Position) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 5 with AdvancedSearchContactSearch

use of com.autentia.tnt.dao.search.AdvancedSearchContactSearch in project TNTConcept by autentia.

the class ContactPositionManagerTest method testDoAdvancedSearchHistoricalSimpleValue.

/**
 * Buscar por en historico y en activo
 */
@Test
public void testDoAdvancedSearchHistoricalSimpleValue() {
    final PositionDAO positionDAO = (PositionDAO) SpringUtilsForTesting.getSpringBean("daoPosition");
    final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
    final EntityChangeDAO entityChangeDAO = (EntityChangeDAO) SpringUtilsForTesting.getSpringBean("daoEntityChange");
    final ContactPositionManager contactPositionManager = new ContactPositionManager(contactDAO, positionDAO);
    this.insertInitialData();
    this.insertContactData();
    // añadimos que Pilar Sancho trabajaba en Italia
    final EntityChange changePosition = new EntityChange();
    changePosition.setField(Contact.FIELD_COUNTRY);
    changePosition.setNewValue("España");
    changePosition.setOldValue("Italia");
    changePosition.setEntityId(pilarSancho.getId());
    changePosition.setEntityName("com.autentia.tnt.businessobject.Contact");
    entityChangeDAO.insert(changePosition);
    final AdvancedSearchContactSearch advancedSearch = new AdvancedSearchContactSearch();
    advancedSearch.setCountry("Italia");
    final List<ContactPosition> contactPositions = contactPositionManager.doAdvancedSearch(advancedSearch, ACTIVE_AND_HISTORICAL);
    // debe salir dos resultados, ya que hay uno que es becario actualmente y otro que lo fue
    if (contactPositions.size() != 1) {
        fail("Deberia haber salido 1 resultado, pero han salido " + contactPositions.size());
    }
}
Also used : PositionDAO(com.autentia.tnt.dao.hibernate.PositionDAO) AdvancedSearchContactSearch(com.autentia.tnt.dao.search.AdvancedSearchContactSearch) ContactDAO(com.autentia.tnt.dao.hibernate.ContactDAO) EntityChange(com.autentia.tnt.tracking.EntityChange) EntityChangeDAO(com.autentia.tnt.tracking.hibernate.dao.EntityChangeDAO) Test(org.junit.Test)

Aggregations

ContactDAO (com.autentia.tnt.dao.hibernate.ContactDAO)5 PositionDAO (com.autentia.tnt.dao.hibernate.PositionDAO)5 AdvancedSearchContactSearch (com.autentia.tnt.dao.search.AdvancedSearchContactSearch)5 Test (org.junit.Test)5 Position (com.autentia.tnt.businessobject.Position)3 ArrayList (java.util.ArrayList)3 EntityChange (com.autentia.tnt.tracking.EntityChange)2 EntityChangeDAO (com.autentia.tnt.tracking.hibernate.dao.EntityChangeDAO)2