2015-08-11 5 views
0

У меня есть объект с UUID первичного ключаHibernate не проверяет объект с UUID первичного ключа на сохраняются с помощью теста JUnit

@Id 
@Type(type = "pg-uuid") 
@Column(name = "gid") 
@GeneratedValue(generator = "hibernate-uuid") 
@GenericGenerator(name = "hibernate-uuid", strategy = "uuid2") 
private UUID id; 

@NotBlank 
@Column(name = "full_name") 
private String fullName; 

Когда я сохранить объект с нулевой или пустой FULLNAME через JPA хранилище в режиме отладки все ОК. Но у меня есть Junit-тест

@RunWith(SpringJUnit4ClassRunner.class) 
@SpringWebApplicationTestCase 
public class OrganizationTest extends AbstractTestConfig { 

@Autowired 
OrganizationRepository organizationRepository; 

private Organization organization; 

@Before 
public void setUp() throws Exception { 
    organization = new Organization(); 
} 

@Test(expected = ConstraintViolationException.class) 
public void createOrganizationValidation() throws Exception { 
    organizationRepository.save(organization); 
} 
} 

Не удается, так как проверка не производится. Я обнаружил, что есть метод «выполнить» в EntityInsertAction, который не запускается.

гибернации-валидатор 5.2.1 Final зимуют 4.3.10 Final

ответ

2

Попробуйте вызвать organizationRepository.flush после операции сохранения. Проверка бина перед записью в базу данных.