From 2e9f27b7697e3384742cd4a53f535e4734948a1a Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson Date: Sat, 5 Dec 2015 16:56:45 +0100 Subject: [PATCH] Some more test cases --- .../net/sf/jabref/bibtex/DuplicateCheck.java | 4 ++-- .../sf/jabref/bibtex/DuplicateCheckTest.java | 22 +++++++++++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/sf/jabref/bibtex/DuplicateCheck.java b/src/main/java/net/sf/jabref/bibtex/DuplicateCheck.java index b5f18074ad9..18e708762d0 100644 --- a/src/main/java/net/sf/jabref/bibtex/DuplicateCheck.java +++ b/src/main/java/net/sf/jabref/bibtex/DuplicateCheck.java @@ -30,6 +30,8 @@ */ public class DuplicateCheck { + private static final Log LOGGER = LogFactory.getLog(DuplicateCheck.class); + /* * Integer values for indicating result of duplicate check (for entries): * @@ -50,8 +52,6 @@ public class DuplicateCheck { // Extra weighting of those fields that are most likely to provide correct duplicate detection: private static final HashMap fieldWeights = new HashMap<>(); - private static final Log LOGGER = LogFactory.getLog(DuplicateCheck.class); - static { DuplicateCheck.fieldWeights.put("author", 2.5); diff --git a/src/test/java/net/sf/jabref/bibtex/DuplicateCheckTest.java b/src/test/java/net/sf/jabref/bibtex/DuplicateCheckTest.java index d245874016a..b2cea13acaf 100644 --- a/src/test/java/net/sf/jabref/bibtex/DuplicateCheckTest.java +++ b/src/test/java/net/sf/jabref/bibtex/DuplicateCheckTest.java @@ -48,18 +48,36 @@ public void testDuplicateDetection() { one.setField("title", "A title"); two.setField("title", "A title"); one.setField("journal", "A"); + two.setField("journal", "A"); + Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); + Assert.assertEquals(1.01, DuplicateCheck.compareEntriesStrictly(one, two), 0.01); + + two.setField("journal", "B"); + Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); + Assert.assertEquals(0.75, DuplicateCheck.compareEntriesStrictly(one, two), 0.01); + two.setField("journal", "A"); one.setField("number", "1"); + two.setField("volume", "21"); + one.setField("pages", "334--337"); + two.setField("pages", "334--337"); + Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); + two.setField("number", "1"); one.setField("volume", "21"); - two.setField("volume", "21"); Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); two.setField("volume", "22"); Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); - two.setField("title", "Another title"); two.setField("journal", "B"); + Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); + + one.setField("journal", ""); + two.setField("journal", ""); + Assert.assertTrue(DuplicateCheck.isDuplicate(one, two)); + + two.setField("title", "Another title"); Assert.assertFalse(DuplicateCheck.isDuplicate(one, two)); }