@Test public void getAllItems_should_return_null_if_there_are_no_items() { dbHandler.populateGetAllItemsResult(new ArrayList<PrettyItem>()); initProvider(); assertNull(provider.getAllItems()); }
@Test public void placeBid_should_return_null_if_not_successful() { dbHandler.setReturnBid(-1); initProvider(); Bid incoming = new Bid(0, 1, 3, 15000, "User3"); String json = jsonHandler.bidToJSON(incoming); Bid result = provider.placeBid(json); assertNull(result); }
@Test public void verifyLogIn_should_return_a_user_with_id_0_if_login_failed() { dbHandler.populateUserResult(null); initProvider(); User loginUser = new User(123, "Derp", null, null, null, "123"); String json = jsonHandler.userToJSON(loginUser); User user = provider.verifyLogIn(json); assertEquals(0, user.getUserID()); }
@Test public void deleteItem_should_return_minus_one_if_unsuccessful() { Item item = new Item(1); String json = jsonHandler.itemToJSON(item); dbHandler.setDeleteResult(false); initProvider(); int result = provider.deleteItem(json); assertEquals(-1, result); }
@Test public void deleteItem_should_return_the_id_if_successful() { Item item = new Item(1); String json = jsonHandler.itemToJSON(item); dbHandler.setDeleteResult(true); initProvider(); int result = provider.deleteItem(json); assertEquals(item.getItemno(), result); }
@Test public void placeBid_should_return_the_bid_back_with_id_set_from_database() { Bid incoming = new Bid(0, 1, 3, 15000, "User3"); dbHandler.setReturnBid(1); initProvider(); String json = jsonHandler.bidToJSON(incoming); Bid result = provider.placeBid(json); assertNotNull(result); assertEquals(1, result.getBidID()); }
@Test public void registerUser_should_return_false_if_registration_was_unsuccessfull() { User user = new User(0, "User4", "Insert", "Insertson", "InjectStreet", "Ins"); String json = jsonHandler.userToJSON(user); dbHandler.setRegisterUserID(-1); initProvider(); boolean result = provider.registerUser(json); assertFalse(result); }
@Test public void verifyLogIn_should_return_a_user_with_matching_password_and_username_but_password_should_be_null() { User loginUser = new User(42, "User1", null, null, null, "123"); ArrayList<User> expected = new ArrayList<User>(); expected.add(loginUser); dbHandler.populateUserResult(expected); initProvider(); String json = jsonHandler.userToJSON(loginUser); User user = provider.verifyLogIn(json); assertEquals("User1", user.getUsername()); assertNull(user.getPassword()); }
@Test public void getAllItems_should_return_all_items_as_prettyItems() { ArrayList<PrettyItem> items = new ArrayList<PrettyItem>(); items.add( new PrettyItem(1, "Item1", "desc", "SomeUser", 1337, 1337, 1, new java.sql.Date(123))); items.add(new PrettyItem(2, "Item2", "desc", "SomeUser2", 42, 42, 2, new java.sql.Date(123))); dbHandler.populateGetAllItemsResult(items); initProvider(); ArrayList<PrettyItem> result = provider.getAllItems(); assertEquals(items.get(0).getName(), result.get(0).getName()); assertEquals(items.get(1).getName(), result.get(1).getName()); }
@Test public void registerItem_should_return_null_if_unsuccessful() { @SuppressWarnings("deprecation") Item item = new Item( 0, 1337, 1, "InsertItem", "Test insert", new java.sql.Date(2013 - 1900, 7, 23), ""); String json = jsonHandler.itemToJSON(item); dbHandler.setRegisterItemID(-1); initProvider(); Item result = provider.registerItem(json); assertNull(result); }
@SuppressWarnings("deprecation") @Test public void registerItem_should_return_the_item_back_with_id_set_from_database() { Item item = new Item( 0, 1337, 1, "InsertItem", "Test insert", new java.sql.Date(2013 - 1900, 7, 23), ""); String json = jsonHandler.itemToJSON(item); dbHandler.setRegisterItemID(1); initProvider(); Item result = provider.registerItem(json); assertNotNull(result); assertEquals(1, result.getItemno()); }
@Test public void getUsersBids_should_return_a_list_of_bids_corresponding_to_that_users_bids() { User bidsUser = new User( 1, "Irrelevant", null, null, null, null); // only ID relevant and username has to be set due to JSONHandler. String json = jsonHandler.userToJSON(bidsUser); ArrayList<Bid> expectedBids = new ArrayList<Bid>(); expectedBids.add(new Bid(1, 1, 1, 1337, bidsUser.getUsername())); expectedBids.add(new Bid(2, 2, 1, 42, bidsUser.getUsername())); dbHandler.populateUsersBidsResult(expectedBids); initProvider(); ArrayList<ViewBid> viewBids = provider.getUsersBids(json); assertEquals(2, viewBids.size()); assertEquals(2, viewBids.get(1).getItemno()); }
@Before public void prepare() { dbHandler = DummyDatabaseHandler.getInstance(); jsonHandler = JSONHandler.getInstance(); }