DATACMNS-866 - Improved error message in invalid invocations of BasicPersistentEntity.getPropertyAccessor(…).

We now explicitly report the given object's type and the one expected in case of a mismatch when BasicPersistentEntity.getPropertyAccessor(…) is invoked.
This commit is contained in:
Oliver Gierke
2016-06-08 16:04:06 +02:00
parent 241d18a212
commit d4c0aa70ba
2 changed files with 20 additions and 2 deletions

View File

@@ -17,7 +17,7 @@ package org.springframework.data.mapping.model;
import static org.hamcrest.CoreMatchers.*;
import static org.junit.Assert.*;
import static org.junit.Assume.assumeThat;
import static org.junit.Assume.*;
import static org.mockito.Mockito.*;
import java.lang.annotation.Retention;
@@ -261,6 +261,20 @@ public class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
assertThat(entity.getTypeAlias(), is((Object) "bar"));
}
/**
* @see DATACMNS-866
*/
@Test
public void invalidBeanAccessCreatesDescriptiveErrorMessage() {
PersistentEntity<Entity, T> entity = createEntity(Entity.class);
exception.expectMessage(Entity.class.getName());
exception.expectMessage(Object.class.getName());
entity.getPropertyAccessor(new Object());
}
private <S> BasicPersistentEntity<S, T> createEntity(Class<S> type) {
return createEntity(type, null);
}