@Test
 public void deleteDocumentoTest() {
   DocumentoEntity entity = data.get(0);
   documentoPersistence.deleteDocumento(entity.getId());
   DocumentoEntity deleted = em.find(DocumentoEntity.class, entity.getId());
   Assert.assertNull(deleted);
 }
 @Test
 public void getDocumentosTest() {
   List<DocumentoDTO> list = documentoPersistence.getDocumentos();
   Assert.assertEquals(list.size(), data.size());
   for (DocumentoDTO dto : list) {
     boolean found = false;
     for (DocumentoEntity entity : data) {
       if (dto.getId() == entity.getId()) {
         found = true;
       }
     }
     Assert.assertTrue(found);
   }
 }
 @Test
 public void getDocumentoTest() {
   DocumentoEntity entity = data.get(0);
   DocumentoDTO dto = documentoPersistence.getDocumento(entity.getId());
   Assert.assertNotNull(dto);
   Assert.assertEquals(entity.getType(), dto.getType());
   Assert.assertEquals(entity.getFecha(), dto.getFecha());
   Assert.assertEquals(entity.getAutor(), dto.getAutor());
   Assert.assertEquals(entity.getDescripcion(), dto.getDescripcion());
   Assert.assertEquals(entity.getName(), dto.getName());
 }
  @Test
  public void updateDocumentoTest() {
    DocumentoEntity entity = data.get(0);

    DocumentoDTO dto = new DocumentoDTO();
    dto.setId(entity.getId());
    dto.setType(generateRandom(String.class));
    dto.setFecha(generateRandom(Date.class));
    dto.setAutor(generateRandom(String.class));
    dto.setDescripcion(generateRandom(String.class));
    dto.setName(generateRandom(String.class));

    documentoPersistence.updateDocumento(dto);

    DocumentoEntity resp = em.find(DocumentoEntity.class, entity.getId());

    Assert.assertEquals(dto.getType(), resp.getType());
    Assert.assertEquals(dto.getFecha(), resp.getFecha());
    Assert.assertEquals(dto.getAutor(), resp.getAutor());
    Assert.assertEquals(dto.getDescripcion(), resp.getDescripcion());
    Assert.assertEquals(dto.getName(), resp.getName());
  }
 private void insertData() {
   for (int i = 0; i < 3; i++) {
     DocumentoEntity entity = new DocumentoEntity();
     entity.setType(generateRandom(String.class));
     entity.setFecha(generateRandom(Date.class));
     entity.setAutor(generateRandom(String.class));
     entity.setDescripcion(generateRandom(String.class));
     entity.setName(generateRandom(String.class));
     em.persist(entity);
     data.add(entity);
   }
 }
  @Test
  public void createDocumentoTest() {
    DocumentoDTO dto = new DocumentoDTO();
    dto.setType(generateRandom(String.class));
    dto.setFecha(generateRandom(Date.class));
    dto.setAutor(generateRandom(String.class));
    dto.setDescripcion(generateRandom(String.class));
    dto.setName(generateRandom(String.class));

    DocumentoDTO result = documentoPersistence.createDocumento(dto);

    Assert.assertNotNull(result);

    DocumentoEntity entity = em.find(DocumentoEntity.class, result.getId());

    Assert.assertEquals(dto.getType(), entity.getType());
    Assert.assertEquals(dto.getFecha(), entity.getFecha());
    Assert.assertEquals(dto.getAutor(), entity.getAutor());
    Assert.assertEquals(dto.getDescripcion(), entity.getDescripcion());
    Assert.assertEquals(dto.getName(), entity.getName());
  }