@Test
public void testfindAllLocalUsersByRole() {
UserEntity entity = new UserEntity();
RoleEntity roleEntity = new RoleEntity();
TypedQuery<UserEntity> query = createStrictMock(TypedQuery.class);
// set expectations
expect(entityManager.createQuery(eq("SELECT role.userEntities FROM RoleEntity role WHERE role = :roleEntity"), eq(UserEntity.class))).andReturn(query);
roleEntity.setRoleName("admin");
expect(query.setParameter("roleEntity", roleEntity)).andReturn(query);
expect(query.getResultList()).andReturn(Collections.singletonList(entity));
replay(entityManager, query);
UserDAO dao = new UserDAO();
dao.entityManagerProvider = entityManagerProvider;
roleEntity.setRoleName("admin");
List<UserEntity> results = dao.findAllLocalUsersByRole(roleEntity);
assertEquals(1, results.size());
assertSame(entity, results.get(0));