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);
PCCountry country = (PCCountry) PCAddress.reflect(caddr, "country");
assertNotNull("country is null", country);
}