@Test(expected = NotFoundException.class)
 @Transactional
 public void testSetTransientPropertyFieldNotManaged() {
   Person p = new Person("Michael", 35);
   p.setThought("food");
   p.getUnderlyingState().getProperty("Person.thought");
 }
 @Test
 @Transactional
 public void testGetTransientPropertyFieldNotManaged() {
   Person p = new Person("Michael", 35);
   p.setThought("food");
   p.getUnderlyingState().setProperty("Person.thought", "sleep");
   assertEquals("Should not have read transient value from graph.", "food", p.getThought());
 }
 @Test
 @Transactional
 public void testGetPropertyEnum() {
   Person p = new Person("Michael", 35);
   p.getUnderlyingState().setProperty("Person.personality", "EXTROVERT");
   assertEquals(
       "Did not deserialize property value properly.", Personality.EXTROVERT, p.getPersonality());
 }
 @Test
 @Transactional
 public void testRelationshipGetPropertyDate() {
   Person p = new Person("Michael", 35);
   Person p2 = new Person("David", 25);
   Friendship f = p.knows(p2);
   f.getUnderlyingState().setProperty("Friendship.firstMeetingDate", "3");
   assertEquals("Date not deserialized properly.", new Date(3), f.getFirstMeetingDate());
 }
 // Would like to have this working.
 @Ignore
 @Test
 @Transactional
 public void testRelationshipIdField() {
   Person p = new Person("Michael", 35);
   Person p2 = new Person("David", 25);
   Friendship f = p.knows(p2);
   //		assertEquals("Wrong ID.", f.getUnderlyingState().getId(), f.getId());
 }
 @Test(expected = NotFoundException.class)
 @Transactional
 public void testRelationshipSetTransientPropertyFieldNotManaged() {
   Person p = new Person("Michael", 35);
   Person p2 = new Person("David", 25);
   Friendship f = p.knows(p2);
   f.setLatestLocation("Menlo Park");
   f.getUnderlyingState().getProperty("Friendship.latestLocation");
 }
 @Test
 @Transactional
 public void testSetPropertyEnum() {
   Person p = new Person("Michael", 35);
   p.setPersonality(Personality.EXTROVERT);
   assertEquals(
       "Wrong enum serialization.",
       "EXTROVERT",
       p.getUnderlyingState().getProperty("Person.personality"));
 }
 @Test
 @Transactional
 public void testRelationshipGetTransientPropertyFieldNotManaged() {
   Person p = new Person("Michael", 35);
   Person p2 = new Person("David", 25);
   Friendship f = p.knows(p2);
   f.setLatestLocation("Menlo Park");
   f.getUnderlyingState().setProperty("Friendship.latestLocation", "Palo Alto");
   assertEquals(
       "Should not have read transient value from graph.", "Menlo Park", f.getLatestLocation());
 }
 @Test
 @Transactional
 public void testEntityIdField() {
   Person p = new Person("Michael", 35);
   assertEquals("Wrong ID.", p.getUnderlyingState().getId(), p.getId());
 }