From b62fa162e9924c4962ba76c59c946411c5b3c12b Mon Sep 17 00:00:00 2001 From: Duncan Date: Tue, 24 Jan 2017 12:17:16 +0000 Subject: [PATCH] Added levenshtein distance method and corresponding tests --- pom.xml | 6 ++++++ .../exampleProject/LevenshteinDistance.java | 10 ++++++++++ .../exampleProject/LevenshteinDistanceTest.java | 17 +++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 src/main/java/exampleProject/LevenshteinDistance.java create mode 100644 src/test/java/exampleProject/LevenshteinDistanceTest.java diff --git a/pom.xml b/pom.xml index acb840c..eb856fa 100644 --- a/pom.xml +++ b/pom.xml @@ -11,5 +11,11 @@ junit 4.11 + + + org.apache.commons + commons-lang3 + 3.5 + \ No newline at end of file diff --git a/src/main/java/exampleProject/LevenshteinDistance.java b/src/main/java/exampleProject/LevenshteinDistance.java new file mode 100644 index 0000000..b9c671a --- /dev/null +++ b/src/main/java/exampleProject/LevenshteinDistance.java @@ -0,0 +1,10 @@ +package exampleProject; +import org.apache.commons.lang3.StringUtils; + +public class LevenshteinDistance { + + public int getLevDistance(String string1, String string2) { + return StringUtils.getLevenshteinDistance(string1, string2); + } + +} diff --git a/src/test/java/exampleProject/LevenshteinDistanceTest.java b/src/test/java/exampleProject/LevenshteinDistanceTest.java new file mode 100644 index 0000000..55cffb4 --- /dev/null +++ b/src/test/java/exampleProject/LevenshteinDistanceTest.java @@ -0,0 +1,17 @@ +package exampleProject; + +import static org.junit.Assert.*; + +import org.junit.Test; + +public class LevenshteinDistanceTest { + + @Test + public void test() { + LevenshteinDistance ld = new LevenshteinDistance(); + assertEquals(2, ld.getLevDistance("Dog", "God")); + assertEquals(1, ld.getLevDistance("Hello", "Hell")); + assertEquals(18, ld.getLevDistance("Maven is pretty cool", "Sandwich lady is life")); + } + +}