A DAO invoker is a bridge between a DAO and the object that needs to invoke the DAO without knowing the actual DAO. @author maurice.zeijen@smies.com
121122123124125126127128129130131132
} public void test_flush() { DaoInvoker invoker = new InterfaceDaoInvoker(fullDao); invoker.flush(); verify(fullDao).flush(); }
132133134135136137138139140141
} @Test(expectedExceptions = UnsupportedOperationException.class) public void test_flush_non_flushable_dao() { DaoInvoker invoker = new InterfaceDaoInvoker(minimumDao); invoker.flush(); }
140141142143144145146147148149150151152153
} public void test_lookup() { DaoInvoker invoker = new InterfaceDaoInvoker(fullDao); Map<String, Object> params = new HashMap<String, Object>(); invoker.lookup("id", params); verify(fullDao).lookup(eq("id"), same(params)); }
154155156157158159160161162163164165
@Test(expectedExceptions = UnsupportedOperationException.class) public void test_findBy_non_finder_dao() { DaoInvoker invoker = new InterfaceDaoInvoker(minimumDao); Map<String, Object> params = new HashMap<String, Object>(); invoker.lookup("id", params); }
164165166167168169170171172173174175176177
} public void test_lookupByQuery_map_params() { DaoInvoker invoker = new InterfaceDaoInvoker(fullDao); Map<String, Object> params = new HashMap<String, Object>(); invoker.lookupByQuery("query", params); verify(fullDao).lookupByQuery(eq("query"), same(params)); }
176177178179180181182183184185186187
} public void test_lookupByQuery_array_params() { DaoInvoker invoker = new InterfaceDaoInvoker(fullDao); invoker.lookupByQuery("query", "test", "test2"); verify(fullDao).lookupByQuery(eq("query"), eq("test"), eq("test2")); }
188189190191192193194195196197198199
@Test(expectedExceptions = UnsupportedOperationException.class) public void test_lookupByQuery_non_query_finder_dao_map_params() { DaoInvoker invoker = new InterfaceDaoInvoker(minimumDao); Map<String, Object> params = new HashMap<String, Object>(); invoker.lookupByQuery("id", params); }
199200201202203204205206207208
} @Test(expectedExceptions = UnsupportedOperationException.class) public void test_lookupByQuery_non_query_finder_dao_array_params() { DaoInvoker invoker = new InterfaceDaoInvoker(minimumDao); invoker.lookupByQuery("id", "test", "test2"); }