createFt1234();
String ejbql = "SELECT f FROM FlattenedTest4 f, FlattenedTest1 ft "
+ "WHERE f MEMBER OF ft.ft4ArrayFor1 AND ft = :ft";
FlattenedTest1 ft = Cayenne.objectForPK(context, FlattenedTest1.class, 1);
EJBQLQuery query = new EJBQLQuery(ejbql);
query.setParameter("ft", ft);
List<?> objects = context.performQuery(query);
assertEquals(1, objects.size());
Set<Object> ids = new HashSet<Object>();
Iterator<?> it = objects.iterator();
while (it.hasNext()) {
Object id = Cayenne.pkForObject((Persistent) it.next());
ids.add(id);
}
assertTrue(ids.contains(new Integer(1)));
ft = Cayenne.objectForPK(context, FlattenedTest1.class, 2);
query = new EJBQLQuery(ejbql);
query.setParameter("ft", ft);
objects = context.performQuery(query);
assertEquals(0, objects.size());
}