/** * Тестирование на HashMap * * @throws Exception */ @Test public void testOnHashMap() throws Exception { Map<UserHashcode, Picture> users = new HashMap<>(); users.put(user1, user1.getPicture()); assertTrue(users.containsKey(user1)); // user3 копия user1 но не содержится в ключах Map. Поиск идет по equals, а он не переопределен assertFalse(users.containsKey(user3)); // В Map есть только user1, но присутствует value для user3, // т.к. у класса Picture переопределены оба метода, хотя объекты pic1 и pic3 разные по ссылкам assertTrue(users.containsValue(pic3)); // Объекты разные, а хэш-коды - одинаковые assertFalse(pic1 == pic3); assertEquals(pic1.hashCode(), pic3.hashCode()); users.put(user2, user2.getPicture()); users.put(user3, user3.getPicture()); // user3 не перезатирает user1, т.к. ключи не равны по equals, а только по hashCode assertEquals(3, users.size()); }
/** test methods that return Map of ids to Records and no sysout stuff */ @Test public void testGettingOutputAsMapOfRecords() throws IOException { String mhldRecFileName = testDataParentPath + File.separator + "summaryHld_1-1000.mrc"; String bibRecFileName = testDataParentPath + File.separator + "u335.mrc"; Map<String, Record> mergedRecs = MergeSummaryHoldings.mergeMhldsIntoBibRecordsAsMap(bibRecFileName, mhldRecFileName); junit.framework.Assert.assertEquals("results should have 1 record", 1, mergedRecs.size()); String expId = "u335"; assertTrue("Record with id " + expId + " should be in results", mergedRecs.containsKey(expId)); Record resultRec = mergedRecs.get(expId); RecordTestingUtils.assertEqualsIgnoreLeader(mergedSummaryHoldingsOutputNoUmlaut, resultRec); System.out.println("Test testGettingOutputAsMapOfRecords() successful"); }
@Test public void testRemove() { assertTrue(dict.containsKey("hello")); dict.remove("hello"); assertFalse(dict.containsKey("hello")); }
@Test public void testContainsKey() { assertTrue(dict.containsKey("hello")); assertTrue(dict.containsKey("goodbye")); assertFalse(dict.containsKey("foo")); }