@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); }