ContadorManagerImpl extends BaseManagerImpl<ContadorVO, String> implements ContadorManager { public String updateContador(String codigoEntidadRegistral, TipoContadorEnum tipoContador) { Assert.hasText(codigoEntidadRegistral, "'codigoEntidadRegistral' must not be empty"); Assert.notNull(tipoContador, "'tipoContador' must not be null"); ContadorVO contador = ((ContadorDao)getDao()).get(codigoEntidadRegistral, tipoContador); if (contador != null) { contador.setContador(contador.getContador() + 1); ((ContadorDao)getDao()).update(contador); } else { contador = new ContadorVO(); contador.setCodigoEntidadRegistral(codigoEntidadRegistral); contador.setTipoContador(tipoContador); contador.setContador(0); ((ContadorDao)getDao()).save(contador); } return StringUtils.leftPad(String.valueOf(contador.getContador()), 8, "0"); } ContadorManagerImpl(BaseDao<ContadorVO, String> aGenericDao); String updateContador(String codigoEntidadRegistral, TipoContadorEnum tipoContador);  }
@Test public void testUpdateContador() { String contador = getContadorManager().updateContador( CODIGO_ENTIDAD_REGISTRAL, TIPO_CONTADOR); Assert.assertNotNull(contador); Assert.assertEquals("00000051", contador); contador = getContadorManager().updateContador( CODIGO_ENTIDAD_REGISTRAL_2, TIPO_CONTADOR); Assert.assertNotNull(contador); Assert.assertEquals("00000000", contador); }