summaryrefslogtreecommitdiff
path: root/spellchecker
diff options
context:
space:
mode:
authorPeter Wu <peter@lekensteyn.nl>2015-04-01 04:10:47 +0200
committerPeter Wu <peter@lekensteyn.nl>2015-04-01 04:10:47 +0200
commit94838f67f689bf2123631555f13b5b2287f07118 (patch)
treef022b8abcbc8c155a62bd80a8e7205e60465a854 /spellchecker
parentda199a9e8b3066eee67b947f2a8daeb368f8a7ee (diff)
downloadassignment4-94838f67f689bf2123631555f13b5b2287f07118.tar.gz
Do not include unchanged words
Diffstat (limited to 'spellchecker')
-rw-r--r--spellchecker/src/SpellCorrector.java2
-rw-r--r--spellchecker/test/SpellCorrectorTest.java5
2 files changed, 6 insertions, 1 deletions
diff --git a/spellchecker/src/SpellCorrector.java b/spellchecker/src/SpellCorrector.java
index a178a44..92f7479 100644
--- a/spellchecker/src/SpellCorrector.java
+++ b/spellchecker/src/SpellCorrector.java
@@ -41,7 +41,7 @@ public class SpellCorrector {
// tries to add word2 to the list of words. This word2 was generated
// from "word" by changing "error" to "correct".
TriFunction<String, String, String> push = (word2, error, correct) -> {
- if (!cr.inVocabulary(word2)) {
+ if (!cr.inVocabulary(word2) || word.equals(word2)) {
return;
}
diff --git a/spellchecker/test/SpellCorrectorTest.java b/spellchecker/test/SpellCorrectorTest.java
index d658914..a826212 100644
--- a/spellchecker/test/SpellCorrectorTest.java
+++ b/spellchecker/test/SpellCorrectorTest.java
@@ -23,9 +23,14 @@ public class SpellCorrectorTest {
private void checkGetCandidateWords(CorpusReader cr, String word,
Set<String> expResult)
throws IOException {
+ // ignore unchanged word
+ expResult.remove(word);
+
System.out.println("getCandidateWords(" + word + ")");
SpellCorrector instance = new SpellCorrector(cr, cmr);
Set<String> result = instance.getCandidateWords(word).keySet();
+
+ assertFalse("Should not contain word " + word, result.contains(word));
// quick check: are the results of the same size?
assertEquals(expResult.size(), result.size());
// verbose test: are all letters as expected?