Skip to content

Prueba de asociaciones composite en la lógica

José Bocanegra edited this page Feb 12, 2020 · 1 revision

Para probar las asociaciones, vamos a modificar la clase DriverLicenseLogicTest para agregar el método createLicenseTest.

@Test
public void createLicenseTest() throws BusinessLogicException {
    DriverLicenseEntity newEntity = factory.manufacturePojo(DriverLicenseEntity.class);
    DriverLicenseEntity result = licenseLogic.createLicense(citizen.getId(), newEntity);
    Assert.assertNotNull(result);
}

En este método se crea una nueva licencia (newEntity). Luego se llama al método createLicense de la lógica que recibe como parámetros el Id del ciudadano y la nueva entidad que se acaba de crear.

Tenga en cuenta que el objeto citizen se creó previamente en el método insertData(), el cual se ejecuta antes de iniciar los tests.

 private void insertData() {
    citizen = factory.manufacturePojo(CitizenEntity.class);
    em.persist(citizen);
}

Mejorar la prueba

Luego de agregar el ciudadano a la licencia, se puede probar si los atributos de la licencia (id, categoría y fecha de expiración) que quedaron asociados con el ciudadano, son los mismos de la licencia que se creó previamente. Para eso incluya las siguientes líneas en el método createLicense:

DriverLicenseEntity entity = em.find(DriverLicenseEntity.class, result.getId());
Assert.assertEquals(newEntity.getId(), entity.getId());
Assert.assertEquals(newEntity.getCategory(), entity.getCategory());
Assert.assertEquals(newEntity.getDueDate(), entity.getDueDate());
Clone this wiki locally