PCDepartment dept = (PCDepartment) departments.iterator().next();
assertNotNull("dept is null", dept);
Set employees = (Set) PCDepartment.reflect(dept, "employees");
assertNotNull("employee is null", employees);
assertEquals("employees size not 1", 1, employees.size());
PCEmployee emp = (PCEmployee) employees.iterator().next();
assertNotNull("emp is null", emp);
PCAddress eaddr = (PCAddress) PCPerson.reflect(emp, "address");
PCAddress caddr = (PCAddress) PCCompany.reflect(company, "address");
assertNull("eaddr is not null", eaddr);
assertNotNull("caddr is null", caddr);