@SuppressWarnings({"rawtypes", "unchecked"}) private void checkLoad(CatalogDAO catalog, Persistable obj, String defaultDatabase) throws Exception { // this is all about loading, so force the global cache to be cleaned out SchemaSourceFactory.reset(); SchemaContext pc = buildContext(catalog); if (defaultDatabase != null) pc.setCurrentDatabase(pc.findDatabase(defaultDatabase)); Persistable loaded = obj.reload(pc); String diffs = obj.differs(pc, loaded, false); if (diffs != null) fail(diffs); }
@Test public void testOrderEntitiesByPrimaryKeys() { final List<Persistable> entities = new ArrayList<Persistable>(); final Persistable persistable1 = control.createMock(Persistable.class); final Persistable persistable2 = control.createMock(Persistable.class); final Persistable persistable3 = control.createMock(Persistable.class); CollectionUtils.addAll(entities, persistable1, persistable2, persistable3); final String pk1 = new String("pk1"); final String pk2 = new String("pk2"); final String pk3 = new String("pk3"); expect(persistable1.getPrimaryKey()).andReturn(pk1); expect(persistable2.getPrimaryKey()).andReturn(pk2); expect(persistable3.getPrimaryKey()).andReturn(pk3); final List<String> primaryKeys = new LinkedList<String>(); CollectionUtils.addAll(primaryKeys, pk1, pk3, pk2); control.replay(); final List<Persistable> orderedList = DaoUtils.orderEntitiesByPrimaryKeys(entities, primaryKeys); control.verify(); assertEquals(orderedList.get(0), persistable1); assertEquals(orderedList.get(1), persistable3); assertEquals(orderedList.get(2), persistable2); }