I am using Mockito to mock the result set of a Java Persistence Query:
Code being mocked:
public void queryMethod(String name){
List<Person> result = persistence.entityManager().createQuery(
"Select p from Person p +
" where p.name= :uniqueId" , Person.class)
.setParameter("name", name)
.getResultList();
}
test code:
String name = "anyName";
Person person = mock(Person.class);
List<Person> personList = new ArrayList<>();
personList.add(person);
TypedQuery query = mock(TypedQuery.class);
when(entityManager.createQuery(anyString(), Matchers.<Class<Object>>anyObject())).thenReturn(query);
when(query.setParameter(1, name)).thenReturn(query);
when(query.getResultList()).thenReturn(personList);
I am getting a null pointer error on the line:
List<Person> result = persistence.entityManager().createQuery(
What could be causing this?