@Test public void testTableInitialization() throws SQLException { Connection c = ((SessionImpl) DBManager.getInstance().getCurrentEntityManager().getDelegate()).connection(); Statement s = c.createStatement(); Set<String> tables = new LinkedHashSet<>(); ResultSet rs = s.executeQuery("select table_name " + "from INFORMATION_SCHEMA.system_tables " + "where table_type='TABLE' and table_schem='PUBLIC'"); while (rs.next()) { if (!rs.getString(1).startsWith("DUAL_")) { tables.add(rs.getString(1)); } } rs.close(); s.close(); Assert.assertTrue(tables.contains("KVPair_table".toUpperCase())); }
@Constraints(noNullInputs = true, notMutable = true, noDirectInsertion = true) public static <T> void injectEntityManager(@BoundInputVariable(initializer = true, atMostOnceWithSameParameters = true) T instance, Class<?> clazz) throws IllegalArgumentException{ Inputs.checkNull(instance,clazz); String field = entityManagerCache.getFieldName(clazz); assert field != null; inject(instance, clazz, field, DBManager.getInstance().getCurrentEntityManager()); }
@Test public void testDirectSQLInsertFollowedByClear() throws SQLException { String tableName = "KVPair_table"; Connection c = ((SessionImpl) DBManager.getInstance().getCurrentEntityManager().getDelegate()).connection(); Statement s = c.createStatement(); ResultSet rs = null; s.executeUpdate("INSERT INTO KVPair_table VALUES 'a', 'b'"); rs = s.executeQuery("SELECT * from "+tableName); Assert.assertTrue(rs.next()); rs.close(); s.close(); DBManager.getInstance().clearDatabase(); s = c.createStatement(); rs = s.executeQuery("SELECT * from " + tableName); Assert.assertFalse(rs.next()); // no data rs.close(); s.close(); }
@Test public void testDirectSQLModifications() throws SQLException { String tableName = "KVPair_table"; Connection c = ((SessionImpl) DBManager.getInstance().getCurrentEntityManager().getDelegate()).connection(); Statement s = c.createStatement(); ResultSet rs = s.executeQuery("select * from "+tableName); Assert.assertFalse(rs.next()); // no data rs.close(); s.executeUpdate("INSERT INTO KVPair_table VALUES 'a', 'b'"); rs = s.executeQuery("SELECT * from "+tableName); Assert.assertTrue(rs.next()); String a = rs.getString(1); String b = rs.getString(2); rs.close(); Assert.assertEquals("a", a); Assert.assertEquals("b", b); s.executeUpdate("DELETE from " + tableName); rs = s.executeQuery("select * from "+tableName); Assert.assertFalse(rs.next()); // no data s.close(); }
KVPair pair = new KVPair(key,value); EntityManager em = DBManager.getInstance().getCurrentEntityManager();