@Test public void testEntityManager() throws Exception { LOG.info("EntityManagerIT.testEntityManagerTest"); UUID applicationId = setup.createApplication("testOrganization", "testEntityManagerTest"); assertNotNull(applicationId); EntityManager em = setup.getEmf().getEntityManager(applicationId); assertNotNull(em); Map<String, Object> properties = new LinkedHashMap<String, Object>(); properties.put("username", "edanuff"); properties.put("email", "*****@*****.**"); Entity user = em.create("user", properties); assertNotNull(user); user = em.get(user); assertNotNull(user); assertEquals("user.username not expected value", "edanuff", user.getProperty("username")); assertEquals("user.email not expected value", "*****@*****.**", user.getProperty("email")); EntityRef userRef = em.getAlias(applicationId, "user", "edanuff"); assertNotNull(userRef); assertEquals("userRef.id not expected value", user.getUuid(), userRef.getUuid()); assertEquals("userRef.type not expected value", "user", userRef.getType()); LOG.info("user.username: "******"username")); LOG.info("user.email: " + user.getProperty("email")); Results results = em.searchCollection( em.getApplicationRef(), "users", new Query().addEqualityFilter("username", "edanuff")); assertNotNull(results); assertEquals(1, results.size()); user = results.getEntity(); assertNotNull(user); assertEquals("user.username not expected value", "edanuff", user.getProperty("username")); assertEquals("user.email not expected value", "*****@*****.**", user.getProperty("email")); LOG.info("user.username: "******"username")); LOG.info("user.email: " + user.getProperty("email")); results = em.searchCollection( em.getApplicationRef(), "users", new Query().addEqualityFilter("email", "*****@*****.**")); assertNotNull(results); assertEquals(1, results.size()); user = results.getEntity(); assertNotNull(user); assertEquals("user.username not expected value", "edanuff", user.getProperty("username")); assertEquals("user.email not expected value", "*****@*****.**", user.getProperty("email")); LOG.info("user.username: "******"username")); LOG.info("user.email: " + user.getProperty("email")); }
@Test public void testCreateAndDeleteUser() throws Exception { LOG.info("EntityDaoTest.testCreateAndDeleteUser"); UUID applicationId = setup.createApplication("testOrganization", "testCreateAndDeleteUser"); EntityManager em = setup.getEmf().getEntityManager(applicationId); String name = "test.thing" + UUIDUtils.newTimeUUID(); Map<String, Object> properties = new LinkedHashMap<String, Object>(); properties.put("username", name); properties.put("foo", "bar"); LOG.info("Starting entity create"); Entity user = em.create("user", properties); LOG.info("Entity created"); LOG.info("Starting entity delete"); em.delete(user); LOG.info("Entity deleted"); // now search by username, no results should be returned Results r = em.searchCollection( em.getApplicationRef(), "users", new Query().addEqualityFilter("username", name)); assertEquals(0, r.size()); // now re-create a new user with the same username properties = new LinkedHashMap<String, Object>(); properties.put("username", name); properties.put("foo", "bar"); LOG.info("Starting entity create"); user = em.create("user", properties); LOG.info("Entity created"); r = em.searchCollection( em.getApplicationRef(), "users", new Query().addEqualityFilter("username", name)); assertEquals(1, r.size()); assertEquals(user.getUuid(), r.getEntity().getUuid()); }