@Test public void testGetAllLinksForEmpty() { assertTrue(linkdb.getAllLinksFor("nonexistentid").isEmpty()); }
@Test public void emptyTest() { assertEquals(linkdb.getAllLinks().size(), 0); assertEquals(linkdb.getAllLinksFor("1").size(), 0); }
@Test public void testAddOne() { Link link = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link); Collection<Link> links = linkdb.getAllLinks(); assertEquals(links.size(), 1); assertTrue(links.contains(link)); links = linkdb.getAllLinksFor("1"); assertEquals(links.size(), 1); assertTrue(links.contains(link)); links = linkdb.getAllLinksFor("2"); assertEquals(links.size(), 1); assertTrue(links.contains(link)); }
Collection<Link> oldlinks = linkdb.getAllLinksFor(getIdentity(current));
@Test public void testAddIdempotent() { Link link = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link); link = new Link("2", "1", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link); Collection<Link> links = linkdb.getAllLinks(); assertEquals(links.size(), 1); assertTrue(links.contains(link)); links = linkdb.getAllLinksFor("1"); assertEquals(links.size(), 1); assertTrue(links.contains(link)); links = linkdb.getAllLinksFor("2"); assertEquals(links.size(), 1); assertTrue(links.contains(link)); }
@Test public void testInferenceDifferent() { ((InMemoryLinkDatabase) linkdb).setDoInference(true); Link link1 = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); linkdb.assertLink(link1); Link link2 = new Link("1", "3", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); linkdb.assertLink(link2); Collection<Link> links = linkdb.getAllLinks(); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); links = linkdb.getAllLinksFor("1"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); links = linkdb.getAllLinksFor("2"); assertEquals(1, links.size()); assertTrue(links.contains(link1)); links = linkdb.getAllLinksFor("3"); assertEquals(1, links.size()); assertTrue(links.contains(link2)); }
@Test public void testInference() { ((InMemoryLinkDatabase) linkdb).setDoInference(true); Link link1 = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link1); Link link2 = new Link("1", "3", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link2); Link link3 = new Link("2", "3", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); Collection<Link> links = linkdb.getAllLinks(); assertEquals(3, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("1"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); links = linkdb.getAllLinksFor("2"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("3"); assertEquals(2, links.size()); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); }
@Test public void testInferenceDifferent2() { ((InMemoryLinkDatabase) linkdb).setDoInference(true); Link link2 = new Link("1", "3", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link2); Link link1 = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); linkdb.assertLink(link1); // since 1==3, and 1!=2, it follows that 3!=2, too Link link3 = new Link("2", "3", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); Collection<Link> links = linkdb.getAllLinks(); assertEquals(3, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("1"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); links = linkdb.getAllLinksFor("2"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("3"); assertEquals(2, links.size()); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); }
@Test public void testInferenceDifferent2b() { ((InMemoryLinkDatabase) linkdb).setDoInference(true); Link link1 = new Link("1", "2", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); linkdb.assertLink(link1); Link link2 = new Link("1", "3", LinkStatus.ASSERTED, LinkKind.SAME, 1.0); linkdb.assertLink(link2); // since 1==3, and 1!=2, it follows that 3!=2, too Link link3 = new Link("2", "3", LinkStatus.ASSERTED, LinkKind.DIFFERENT, 1.0); Collection<Link> links = linkdb.getAllLinks(); assertEquals(3, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("1"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link2)); links = linkdb.getAllLinksFor("2"); assertEquals(2, links.size()); assertTrue(links.contains(link1)); assertTrue(links.contains(link3)); links = linkdb.getAllLinksFor("3"); assertEquals(2, links.size()); assertTrue(links.contains(link2)); assertTrue(links.contains(link3)); }
public synchronized void noMatchFor(Record r) { // we missed all of the correct links for this record (if any). // count, and tell the user. for (Link link : golddb.getAllLinksFor(getid(r))) { if (link.getKind() != LinkKind.SAME) continue; // it's a bad link, so never mind missed++; Record r1 = database.findRecordById(link.getID1()); Record r2 = database.findRecordById(link.getID2()); if (r1 != null && r2 != null) { if (debug && !showmatches) PrintMatchListener.show(r1, r2, processor.compare(r1, r2), "\nNOT FOUND", props, pretty); } else if (debug && !showmatches) { System.out.println("\nIDENTITIES IN TEST FILE NOT FOUND IN DATA"); System.out.println("ID1: " + link.getID1() + " -> " + r1); System.out.println("ID2: " + link.getID2() + " -> " + r2); } } }
assertTrue(links.contains(link5)); links = linkdb.getAllLinksFor("1"); assertEquals(4, links.size()); links = linkdb.getAllLinksFor("2"); assertEquals(4, links.size()); links = linkdb.getAllLinksFor("3"); assertEquals(4, links.size()); links = linkdb.getAllLinksFor("4"); assertEquals(4, links.size()); links = linkdb.getAllLinksFor("5"); assertEquals(4, links.size());
Collection<Link> oldlinks = linkdb.getAllLinksFor(getIdentity(current));
public synchronized void noMatchFor(Record r) { // we missed all of the correct links for this record (if any). // count, and tell the user. for (Link link : golddb.getAllLinksFor(getid(r))) { if (link.getKind() != LinkKind.SAME) continue; // it's a bad link, so never mind missed++; Record r1 = database.findRecordById(link.getID1()); Record r2 = database.findRecordById(link.getID2()); if (r1 != null && r2 != null) { if (debug && !showmatches) PrintMatchListener.show(r1, r2, processor.compare(r1, r2), "\nNOT FOUND", props, pretty); } else if (debug && !showmatches) { System.out.println("\nIDENTITIES IN TEST FILE NOT FOUND IN DATA"); System.out.println("ID1: " + link.getID1() + " -> " + r1); System.out.println("ID2: " + link.getID2() + " -> " + r2); } } }