public void testCRUD() {
AddressCouchOTO address = new AddressCouchOTO();
address.setAddressId("a");
address.setStreet("sector 11");
PersonCouchOTO person = new PersonCouchOTO();
person.setPersonId("1");
person.setPersonName("Kuldeep");
person.setAddress(address);
em.persist(person);
em = getNewEM();
PersonCouchOTO foundPerson = em.find(PersonCouchOTO.class, 1);
Assert.assertNotNull(foundPerson);
Assert.assertNotNull(foundPerson.getAddress());
Assert.assertEquals("1", foundPerson.getPersonId());
Assert.assertEquals("Kuldeep", foundPerson.getPersonName());
Assert.assertEquals("a", foundPerson.getAddress().getAddressId());
Assert.assertEquals("sector 11", foundPerson.getAddress().getStreet());
foundPerson.setPersonName("KK");
foundPerson.getAddress().setStreet("sector 12");
em.merge(foundPerson);
em = getNewEM();
foundPerson = em.find(PersonCouchOTO.class, 1);
Assert.assertNotNull(foundPerson);
Assert.assertNotNull(foundPerson.getAddress());
Assert.assertEquals("1", foundPerson.getPersonId());
Assert.assertEquals("KK", foundPerson.getPersonName());
Assert.assertEquals("a", foundPerson.getAddress().getAddressId());
Assert.assertEquals("sector 12", foundPerson.getAddress().getStreet());
em.remove(foundPerson);
foundPerson = em.find(PersonCouchOTO.class, 1);
Assert.assertNull(foundPerson);