Program: 65026
Project: 65026
Buggy source:
public void addJoinTests(){
  PopulationManager manager=PopulationManager.getDefaultManager();
  Employee object=(Employee)manager.getObject(Employee.class,"String_Node_Str");
  ReadObjectTest test=new ReadObjectTest(object);
  test.setName("String_Node_Str");
  ReadObjectQuery query=new ReadObjectQuery();
  query.setSelectionObject(object);
  query.addJoinedAttribute("String_Node_Str");
  test.setQuery(query);
  addTest(test);
  ReadObjectTest test1a=new ReadObjectTest(object);
  test1a.setName("String_Node_Str");
  ReadObjectQuery query1a=new ReadObjectQuery();
  query1a.setSelectionObject(object);
  query1a.addJoinedAttribute("String_Node_Str");
  query1a.addJoinedAttribute("String_Node_Str");
  test1a.setQuery(query1a);
  addTest(test1a);
  ReadObjectTest test1m=new ReadObjectTest(object);
  test1m.setName("String_Node_Str");
  ReadObjectQuery query1m=new ReadObjectQuery();
  query1m.setSelectionObject(object);
  query1m.addJoinedAttribute(query1m.getExpressionBuilder().anyOf("String_Node_Str"));
  test1m.setQuery(query1m);
  addTest(test1m);
  test1m=new ReadObjectTest(object);
  test1m.setName("String_Node_Str");
  query1m=new ReadObjectQuery();
  query1m.setSelectionObject(object);
  query1m.addJoinedAttribute(query1m.getExpressionBuilder().anyOfAllowingNone("String_Node_Str"));
  test1m.setQuery(query1m);
  addTest(test1m);
  addTest(new ReadAnyObjectJoinPhoneTest());
  Object person=manager.getObject(Engineer.class,"String_Node_Str");
  ReadObjectTest test1b=new ReadObjectTest(person);
  test1b.setName("String_Node_Str");
  ReadObjectQuery query1b=new ReadObjectQuery();
  query1b.setSelectionObject(person);
  query1b.addJoinedAttribute("String_Node_Str");
  query1b.addJoinedAttribute("String_Node_Str");
  test1b.setQuery(query1b);
  addTest(test1b);
  ReadObjectTest test1bx=new ReadObjectTest(person);
  test1bx.setName("String_Node_Str");
  ReadObjectQuery query1bx=new ReadObjectQuery();
  query1bx.setSelectionObject(person);
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str").getAllowingNull("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str").getAllowingNull("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str"));
  test1bx.setQuery(query1bx);
  addTest(test1bx);
  ReadObjectTest test1c=new ReadObjectTest(object);
  test1c.setName("String_Node_Str");
  ReadObjectQuery query1c=new ReadObjectQuery();
  query1c.setSelectionObject(object);
  query1c.addJoinedAttribute("String_Node_Str");
  query1c.addJoinedAttribute("String_Node_Str");
  query1c.addJoinedAttribute(query1c.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test1c.setQuery(query1c);
  addTest(test1c);
  ReadAllTest test2=new ReadAllTest(Employee.class,12);
  test2.setName("String_Node_Str");
  ReadAllQuery query2=new ReadAllQuery();
  query2.setReferenceClass(Employee.class);
  query2.addJoinedAttribute("String_Node_Str");
  query2.addJoinedAttribute(query2.getExpressionBuilder().getAllowingNull("String_Node_Str"));
  test2.setQuery(query2);
  addTest(test2);
  ReadAllTest testReadAll1m=new ReadAllTest(Employee.class,12);
  testReadAll1m.setName("String_Node_Str");
  ReadAllQuery queryReadAll1m=new ReadAllQuery();
  queryReadAll1m.setReferenceClass(Employee.class);
  queryReadAll1m.addJoinedAttribute(queryReadAll1m.getExpressionBuilder().anyOf("String_Node_Str"));
  testReadAll1m.setQuery(queryReadAll1m);
  addTest(testReadAll1m);
  ReadAllTest testReadAll21m=new ReadAllTest(Employee.class,5);
  testReadAll21m.setName("String_Node_Str");
  ReadAllQuery queryReadAll21m=new ReadAllQuery();
  queryReadAll21m.setReferenceClass(Employee.class);
  Expression managedEmployee=queryReadAll21m.getExpressionBuilder().anyOf("String_Node_Str");
  queryReadAll21m.addJoinedAttribute(queryReadAll21m.getExpressionBuilder().anyOf("String_Node_Str"));
  queryReadAll21m.addJoinedAttribute(managedEmployee);
  queryReadAll21m.addJoinedAttribute(managedEmployee.anyOf("String_Node_Str"));
  testReadAll21m.setQuery(queryReadAll21m);
  addTest(testReadAll21m);
  ReadAllTest test2a=new ReadAllTest(Employee.class,2);
  test2a.setName("String_Node_Str");
  ReadAllQuery query2a=new ReadAllQuery();
  query2a.setReferenceClass(Employee.class);
  query2a.addJoinedAttribute("String_Node_Str");
  query2a.setSelectionCriteria(new ExpressionBuilder().get("String_Node_Str").equal("String_Node_Str"));
  test2a.setQuery(query2a);
  addTest(test2a);
  ReadObjectTest test2az=new ReadObjectTest(object);
  test2az.setName("String_Node_Str");
  ReadObjectQuery query2az=new ReadObjectQuery();
  query2az.setReferenceClass(Employee.class);
  query2az.addJoinedAttribute("String_Node_Str");
  query2az.setSQLString("String_Node_Str" + object.getId());
  test2az.setQuery(query2az);
  addTest(test2az);
  ReadAllTest test2ax=new ReadAllTest(Employee.class,2);
  test2ax.setName("String_Node_Str");
  ReadAllQuery query2ax=new ReadAllQuery();
  query2ax.setReferenceClass(Employee.class);
  query2ax.addJoinedAttribute("String_Node_Str");
  query2ax.setSQLString("String_Node_Str");
  test2ax.setQuery(query2ax);
  addTest(test2ax);
  ReadAllTest test2aa=new ReadAllTest(Employee.class,2);
  test2aa.setName("String_Node_Str");
  ReadAllQuery query2aa=new ReadAllQuery();
  query2aa.setReferenceClass(Employee.class);
  query2aa.useCursoredStream();
  query2aa.addJoinedAttribute("String_Node_Str");
  query2aa.setSelectionCriteria(new org.eclipse.persistence.expressions.ExpressionBuilder().get("String_Node_Str").equal("String_Node_Str"));
  test2aa.setQuery(query2aa);
  addTest(test2aa);
  ReadAllJoinReadingTest test2b=new ReadAllJoinReadingTest(3,"String_Node_Str");
  ReadAllQuery query2b=new ReadAllQuery();
  query2b.setReferenceClass(LargeProject.class);
  query2b.addJoinedAttribute(query2b.getExpressionBuilder().get("String_Node_Str"));
  query2b.addJoinedAttribute(query2b.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test2b.setQuery(query2b);
  addTest(test2b);
  ReadAllTest ownerTest=new ReadAllTest(ObjectA.class,3);
  ownerTest.setName("String_Node_Str");
  ReadAllQuery ownerQuery=new ReadAllQuery();
  ownerQuery.setReferenceClass(ObjectA.class);
  ownerQuery.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str"));
  ownerQuery.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str").anyOf("String_Node_Str"));
  ownerTest.setQuery(ownerQuery);
  addTest(ownerTest);
  ReadAllTest ownerTest3=new ReadAllTest(ObjectA.class,3);
  ownerTest3.setName("String_Node_Str");
  ReadAllQuery ownerQuery3=new ReadAllQuery();
  ownerQuery3.setReferenceClass(ObjectA.class);
  ownerQuery3.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str"));
  Expression join=ownerQuery.getExpressionBuilder().get("String_Node_Str").anyOf("String_Node_Str");
  ownerQuery3.addJoinedAttribute(join);
  ownerQuery3.addJoinedAttribute(join.get("String_Node_Str"));
  ownerTest3.setQuery(ownerQuery3);
  addTest(ownerTest3);
  ReadAllTest ownerTest2=new ReadAllTest(ObjectA.class,3);
  ownerTest2.setName("String_Node_Str");
  ReadAllQuery ownerQuery2=new ReadAllQuery();
  ownerQuery2.setReferenceClass(ObjectA.class);
  ownerTest2.setQuery(ownerQuery2);
  addTest(ownerTest2);
  ReadAllTest test3=new ReadAllTest(LargeProject.class,3);
  ReadAllQuery query3=new ReadAllQuery();
  query3.setReferenceClass(LargeProject.class);
  query3.useCursoredStream();
  query3.addJoinedAttribute(query3.getExpressionBuilder().get("String_Node_Str"));
  query3.addJoinedAttribute(query3.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test3.setQuery(query3);
  addTest(test3);
  addTest(new ReadObjectMappingJoinReadingTest());
  addTest(new MultipleJoinedAttributeQueryTest());
}

Fixed version (ground truth):
public void addJoinTests(){
  PopulationManager manager=PopulationManager.getDefaultManager();
  Employee object=(Employee)manager.getObject(Employee.class,"String_Node_Str");
  ReadObjectTest test=new ReadObjectTest(object);
  test.setName("String_Node_Str");
  ReadObjectQuery query=new ReadObjectQuery();
  query.setSelectionObject(object);
  query.addJoinedAttribute("String_Node_Str");
  test.setQuery(query);
  addTest(test);
  ReadObjectTest test1a=new ReadObjectTest(object);
  test1a.setName("String_Node_Str");
  ReadObjectQuery query1a=new ReadObjectQuery();
  query1a.setSelectionObject(object);
  query1a.addJoinedAttribute("String_Node_Str");
  query1a.addJoinedAttribute("String_Node_Str");
  test1a.setQuery(query1a);
  addTest(test1a);
  ReadObjectTest test1m=new ReadObjectTest(object);
  test1m.setName("String_Node_Str");
  ReadObjectQuery query1m=new ReadObjectQuery();
  query1m.setSelectionObject(object);
  query1m.addJoinedAttribute(query1m.getExpressionBuilder().anyOf("String_Node_Str"));
  test1m.setQuery(query1m);
  addTest(test1m);
  test1m=new ReadObjectTest(object);
  test1m.setName("String_Node_Str");
  query1m=new ReadObjectQuery();
  query1m.setSelectionObject(object);
  query1m.addJoinedAttribute(query1m.getExpressionBuilder().anyOfAllowingNone("String_Node_Str"));
  test1m.setQuery(query1m);
  addTest(test1m);
  addTest(new ReadAnyObjectJoinPhoneTest());
  Object person=manager.getObject(Engineer.class,"String_Node_Str");
  ReadObjectTest test1b=new ReadObjectTest(person);
  test1b.setName("String_Node_Str");
  ReadObjectQuery query1b=new ReadObjectQuery();
  query1b.setSelectionObject(person);
  query1b.addJoinedAttribute("String_Node_Str");
  query1b.addJoinedAttribute("String_Node_Str");
  test1b.setQuery(query1b);
  addTest(test1b);
  ReadObjectTest test1bx=new ReadObjectTest(person);
  test1bx.setName("String_Node_Str");
  ReadObjectQuery query1bx=new ReadObjectQuery();
  query1bx.setSelectionObject(person);
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str").getAllowingNull("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str").getAllowingNull("String_Node_Str"));
  query1bx.addJoinedAttribute(query1bx.getExpressionBuilder().get("String_Node_Str"));
  test1bx.setQuery(query1bx);
  addTest(test1bx);
  ReadObjectTest test1c=new ReadObjectTest(object);
  test1c.setName("String_Node_Str");
  ReadObjectQuery query1c=new ReadObjectQuery();
  query1c.setSelectionObject(object);
  query1c.addJoinedAttribute("String_Node_Str");
  query1c.addJoinedAttribute("String_Node_Str");
  query1c.addJoinedAttribute(query1c.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test1c.setQuery(query1c);
  addTest(test1c);
  ReadAllTest test2=new ReadAllTest(Employee.class,12);
  test2.setName("String_Node_Str");
  ReadAllQuery query2=new ReadAllQuery();
  query2.setReferenceClass(Employee.class);
  query2.addJoinedAttribute("String_Node_Str");
  query2.addJoinedAttribute(query2.getExpressionBuilder().getAllowingNull("String_Node_Str"));
  test2.setQuery(query2);
  addTest(test2);
  ReadAllTest testReadAll1m=new ReadAllTest(Employee.class,12);
  testReadAll1m.setName("String_Node_Str");
  ReadAllQuery queryReadAll1m=new ReadAllQuery();
  queryReadAll1m.setReferenceClass(Employee.class);
  queryReadAll1m.addJoinedAttribute(queryReadAll1m.getExpressionBuilder().anyOf("String_Node_Str"));
  testReadAll1m.setQuery(queryReadAll1m);
  addTest(testReadAll1m);
  ReadAllTest testReadAll21m=new ReadAllTest(Employee.class,5);
  testReadAll21m.setName("String_Node_Str");
  ReadAllQuery queryReadAll21m=new ReadAllQuery();
  queryReadAll21m.setReferenceClass(Employee.class);
  Expression managedEmployee=queryReadAll21m.getExpressionBuilder().anyOf("String_Node_Str");
  queryReadAll21m.addJoinedAttribute(queryReadAll21m.getExpressionBuilder().anyOf("String_Node_Str"));
  queryReadAll21m.addJoinedAttribute(managedEmployee);
  queryReadAll21m.addJoinedAttribute(managedEmployee.anyOf("String_Node_Str"));
  testReadAll21m.setQuery(queryReadAll21m);
  addTest(testReadAll21m);
  ReadAllTest test2a=new ReadAllTest(Employee.class,2);
  test2a.setName("String_Node_Str");
  ReadAllQuery query2a=new ReadAllQuery();
  query2a.setReferenceClass(Employee.class);
  query2a.addJoinedAttribute("String_Node_Str");
  query2a.setSelectionCriteria(new ExpressionBuilder().get("String_Node_Str").equal("String_Node_Str"));
  test2a.setQuery(query2a);
  addTest(test2a);
  ReadObjectTest test2az=new ReadObjectTest(object);
  test2az.setName("String_Node_Str");
  ReadObjectQuery query2az=new ReadObjectQuery();
  query2az.setReferenceClass(Employee.class);
  query2az.addJoinedAttribute("String_Node_Str");
  query2az.setSQLString("String_Node_Str" + object.getId());
  test2az.setQuery(query2az);
  addTest(test2az);
  ReadAllTest test2ax=new ReadAllTest(Employee.class,2);
  test2ax.setName("String_Node_Str");
  ReadAllQuery query2ax=new ReadAllQuery();
  query2ax.setReferenceClass(Employee.class);
  query2ax.addJoinedAttribute("String_Node_Str");
  query2ax.setSQLString("String_Node_Str");
  test2ax.setQuery(query2ax);
  addTest(test2ax);
  ReadAllTest test2aa=new ReadAllTest(Employee.class,2);
  test2aa.setName("String_Node_Str");
  ReadAllQuery query2aa=new ReadAllQuery();
  query2aa.setReferenceClass(Employee.class);
  query2aa.useCursoredStream();
  query2aa.addJoinedAttribute("String_Node_Str");
  query2aa.setSelectionCriteria(new org.eclipse.persistence.expressions.ExpressionBuilder().get("String_Node_Str").equal("String_Node_Str"));
  test2aa.setQuery(query2aa);
  addTest(test2aa);
  ReadAllJoinReadingTest test2b=new ReadAllJoinReadingTest(3,"String_Node_Str");
  ReadAllQuery query2b=new ReadAllQuery();
  query2b.setReferenceClass(LargeProject.class);
  query2b.addJoinedAttribute(query2b.getExpressionBuilder().get("String_Node_Str"));
  query2b.addJoinedAttribute(query2b.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test2b.setQuery(query2b);
  addTest(test2b);
  ReadAllTest ownerTest=new ReadAllTest(ObjectA.class,3);
  ownerTest.setName("String_Node_Str");
  ReadAllQuery ownerQuery=new ReadAllQuery();
  ownerQuery.setReferenceClass(ObjectA.class);
  ownerQuery.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str"));
  ownerQuery.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str").anyOf("String_Node_Str"));
  ownerTest.setQuery(ownerQuery);
  addTest(ownerTest);
  ReadAllTest ownerTest3=new ReadAllTest(ObjectA.class,3);
  ownerTest3.setName("String_Node_Str");
  ReadAllQuery ownerQuery3=new ReadAllQuery();
  ownerQuery3.setReferenceClass(ObjectA.class);
  ownerQuery3.addJoinedAttribute(ownerQuery.getExpressionBuilder().get("String_Node_Str"));
  Expression join=ownerQuery.getExpressionBuilder().get("String_Node_Str").anyOf("String_Node_Str");
  ownerQuery3.addJoinedAttribute(join);
  ownerQuery3.addJoinedAttribute(join.get("String_Node_Str"));
  ownerTest3.setQuery(ownerQuery3);
  addTest(ownerTest3);
  ReadAllTest ownerTest2=new ReadAllTest(ObjectA.class,3);
  ownerTest2.setName("String_Node_Str");
  ReadAllQuery ownerQuery2=new ReadAllQuery();
  ownerQuery2.setReferenceClass(ObjectA.class);
  ownerTest2.setQuery(ownerQuery2);
  addTest(ownerTest2);
  ReadAllTest test3=new ReadAllTest(LargeProject.class,3);
  ReadAllQuery query3=new ReadAllQuery();
  query3.setReferenceClass(LargeProject.class);
  query3.useCursoredStream();
  query3.addJoinedAttribute(query3.getExpressionBuilder().get("String_Node_Str"));
  query3.addJoinedAttribute(query3.getExpressionBuilder().get("String_Node_Str").get("String_Node_Str"));
  test3.setQuery(query3);
  addTest(test3);
  addTest(new ReadObjectMappingJoinReadingTest());
  addTest(new MultipleJoinedAttributeQueryTest());
  addTest(new ComplexJoinedAttributeQueryTest());
}