summaryrefslogtreecommitdiff
path: root/core/src/test/scala/com/rockymadden/stringmetric/similarity
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/test/scala/com/rockymadden/stringmetric/similarity')
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/DiceSorensenMetricSpec.scala85
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/HammingMetricSpec.scala47
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/JaccardMetricSpec.scala85
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/JaroMetricSpec.scala73
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/JaroWinklerMetricSpec.scala73
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/LevenshteinMetricSpec.scala73
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/NGramMetricSpec.scala85
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/OverlapMetricSpec.scala89
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/RatcliffObershelpMetricSpec.scala53
-rwxr-xr-xcore/src/test/scala/com/rockymadden/stringmetric/similarity/WeightedLevenshteinMetricSpec.scala69
10 files changed, 297 insertions, 435 deletions
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/DiceSorensenMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/DiceSorensenMetricSpec.scala
index b7a3b58..4912e9e 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/DiceSorensenMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/DiceSorensenMetricSpec.scala
@@ -1,60 +1,45 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class DiceSorensenMetricSpec extends ScalaTest { "DiceSorensenMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- DiceSorensenMetric(1).compare("", "").isDefined should be (false)
- DiceSorensenMetric(1).compare("abc", "").isDefined should be (false)
- DiceSorensenMetric(1).compare("", "xyz").isDefined should be (false)
- }
+object DiceSorensenMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "DiceSorensenMetric compare()" should {
+ "return None with empty arguments" in {
+ DiceSorensenMetric(1).compare("", "").isDefined must beFalse
+ DiceSorensenMetric(1).compare("abc", "").isDefined must beFalse
+ DiceSorensenMetric(1).compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "1" in {
- DiceSorensenMetric(1).compare("abc", "abc").get should be (1)
- DiceSorensenMetric(2).compare("abc", "abc").get should be (1)
- DiceSorensenMetric(2).compare("abc", "abc").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ DiceSorensenMetric(1).compare("abc", "abc").get must beEqualTo(1)
+ DiceSorensenMetric(2).compare("abc", "abc").get must beEqualTo(1)
+ DiceSorensenMetric(2).compare("abc", "abc").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- DiceSorensenMetric(1).compare("abc", "xyz").get should be (0)
- DiceSorensenMetric(2).compare("abc", "xyz").get should be (0)
- DiceSorensenMetric(3).compare("abc", "xyz").get should be (0)
- }
+ "return 0 with unequal arguments" in {
+ DiceSorensenMetric(1).compare("abc", "xyz").get must beEqualTo(0)
+ DiceSorensenMetric(2).compare("abc", "xyz").get must beEqualTo(0)
+ DiceSorensenMetric(3).compare("abc", "xyz").get must beEqualTo(0)
}
- "invalid arguments" should returns {
- "None" in {
- DiceSorensenMetric(2).compare("n", "naght").isDefined should be (false)
- DiceSorensenMetric(2).compare("night", "n").isDefined should be (false)
- DiceSorensenMetric(3).compare("ni", "naght").isDefined should be (false)
- DiceSorensenMetric(3).compare("night", "na").isDefined should be (false)
- }
+ "return None with invalid arguments" in {
+ DiceSorensenMetric(2).compare("n", "naght").isDefined must beFalse
+ DiceSorensenMetric(2).compare("night", "n").isDefined must beFalse
+ DiceSorensenMetric(3).compare("ni", "naght").isDefined must beFalse
+ DiceSorensenMetric(3).compare("night", "na").isDefined must beFalse
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- DiceSorensenMetric(1).compare("night", "nacht").get should be (0.6)
- DiceSorensenMetric(1).compare("night", "naght").get should be (0.8)
- DiceSorensenMetric(1).compare("context", "contact").get should be (0.7142857142857143)
+ "return distance with valid arguments" in {
+ DiceSorensenMetric(1).compare("night", "nacht").get must beEqualTo(0.6)
+ DiceSorensenMetric(1).compare("night", "naght").get must beEqualTo(0.8)
+ DiceSorensenMetric(1).compare("context", "contact").get must beEqualTo(0.7142857142857143)
- DiceSorensenMetric(2).compare("night", "nacht").get should be (0.25)
- DiceSorensenMetric(2).compare("night", "naght").get should be (0.5)
- DiceSorensenMetric(2).compare("context", "contact").get should be (0.5)
- DiceSorensenMetric(2).compare("contextcontext", "contact").get should be (0.3157894736842105)
- DiceSorensenMetric(2).compare("context", "contactcontact").get should be (0.3157894736842105)
- DiceSorensenMetric(2).compare("ht", "nacht").get should be (0.4)
- DiceSorensenMetric(2).compare("xp", "nacht").get should be (0)
- DiceSorensenMetric(2).compare("ht", "hththt").get should be (0.3333333333333333)
+ DiceSorensenMetric(2).compare("night", "nacht").get must beEqualTo(0.25)
+ DiceSorensenMetric(2).compare("night", "naght").get must beEqualTo(0.5)
+ DiceSorensenMetric(2).compare("context", "contact").get must beEqualTo(0.5)
+ DiceSorensenMetric(2).compare("contextcontext", "contact").get must beEqualTo(0.3157894736842105)
+ DiceSorensenMetric(2).compare("context", "contactcontact").get must beEqualTo(0.3157894736842105)
+ DiceSorensenMetric(2).compare("ht", "nacht").get must beEqualTo(0.4)
+ DiceSorensenMetric(2).compare("xp", "nacht").get must beEqualTo(0)
+ DiceSorensenMetric(2).compare("ht", "hththt").get must beEqualTo(0.3333333333333333)
- DiceSorensenMetric(3).compare("night", "nacht").get should be (0)
- DiceSorensenMetric(3).compare("night", "naght").get should be (0.3333333333333333)
- DiceSorensenMetric(3).compare("context", "contact").get should be (0.4)
- }
+ DiceSorensenMetric(3).compare("night", "nacht").get must beEqualTo(0)
+ DiceSorensenMetric(3).compare("night", "naght").get must beEqualTo(0.3333333333333333)
+ DiceSorensenMetric(3).compare("context", "contact").get must beEqualTo(0.4)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/HammingMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/HammingMetricSpec.scala
index abb56db..b2831bc 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/HammingMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/HammingMetricSpec.scala
@@ -1,37 +1,24 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class HammingMetricSpec extends ScalaTest { "HammingMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- HammingMetric.compare("", "").isDefined should be (false)
- HammingMetric.compare("abc", "").isDefined should be (false)
- HammingMetric.compare("", "xyz").isDefined should be (false)
- }
+object HammingMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "HammingMetric compare()" should {
+ "return None with empty arguments" in {
+ HammingMetric.compare("", "").isDefined must beFalse
+ HammingMetric.compare("abc", "").isDefined must beFalse
+ HammingMetric.compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "0" in {
- HammingMetric.compare("abc", "abc").get should be (0)
- HammingMetric.compare("123", "123").get should be (0)
- }
+ "return 0 with equal arguments" in {
+ HammingMetric.compare("abc", "abc").get must beEqualTo(0)
+ HammingMetric.compare("123", "123").get must beEqualTo(0)
}
- "unequal arguments" should returns {
- "Int indicating distance" in {
- HammingMetric.compare("abc", "xyz").get should be (3)
- HammingMetric.compare("123", "456").get should be (3)
- }
+ "return distance with unequal arguments" in {
+ HammingMetric.compare("abc", "xyz").get must beEqualTo(3)
+ HammingMetric.compare("123", "456").get must beEqualTo(3)
}
- "valid arguments" should returns {
- "Int indicating distance" in {
- HammingMetric.compare("toned", "roses").get should be (3)
- HammingMetric.compare("1011101", "1001001").get should be (2)
- HammingMetric.compare("2173896", "2233796").get should be (3)
- }
+ "return distance with valid arguments" in {
+ HammingMetric.compare("toned", "roses").get must beEqualTo(3)
+ HammingMetric.compare("1011101", "1001001").get must beEqualTo(2)
+ HammingMetric.compare("2173896", "2233796").get must beEqualTo(3)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaccardMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaccardMetricSpec.scala
index 4c04193..145a1e9 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaccardMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaccardMetricSpec.scala
@@ -1,60 +1,45 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class JaccardMetricSpec extends ScalaTest { "JaccardMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- JaccardMetric(1).compare("", "").isDefined should be (false)
- JaccardMetric(1).compare("abc", "").isDefined should be (false)
- JaccardMetric(1).compare("", "xyz").isDefined should be (false)
- }
+object JaccardMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "JaccardMetric compare()" should {
+ "return None with empty arguments" in {
+ JaccardMetric(1).compare("", "").isDefined must beFalse
+ JaccardMetric(1).compare("abc", "").isDefined must beFalse
+ JaccardMetric(1).compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "1" in {
- JaccardMetric(1).compare("abc", "abc").get should be (1)
- JaccardMetric(2).compare("abc", "abc").get should be (1)
- JaccardMetric(3).compare("abc", "abc").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ JaccardMetric(1).compare("abc", "abc").get must beEqualTo(1)
+ JaccardMetric(2).compare("abc", "abc").get must beEqualTo(1)
+ JaccardMetric(3).compare("abc", "abc").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- JaccardMetric(1).compare("abc", "xyz").get should be (0)
- JaccardMetric(2).compare("abc", "xyz").get should be (0)
- JaccardMetric(3).compare("abc", "xyz").get should be (0)
- }
+ "return 0 with unequal arguments" in {
+ JaccardMetric(1).compare("abc", "xyz").get must beEqualTo(0)
+ JaccardMetric(2).compare("abc", "xyz").get must beEqualTo(0)
+ JaccardMetric(3).compare("abc", "xyz").get must beEqualTo(0)
}
- "invalid arguments" should returns {
- "None" in {
- JaccardMetric(2).compare("n", "naght").isDefined should be (false)
- JaccardMetric(2).compare("night", "n").isDefined should be (false)
- JaccardMetric(3).compare("ni", "naght").isDefined should be (false)
- JaccardMetric(3).compare("night", "na").isDefined should be (false)
- }
+ "return None with invalid arguments" in {
+ JaccardMetric(2).compare("n", "naght").isDefined must beFalse
+ JaccardMetric(2).compare("night", "n").isDefined must beFalse
+ JaccardMetric(3).compare("ni", "naght").isDefined must beFalse
+ JaccardMetric(3).compare("night", "na").isDefined must beFalse
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- JaccardMetric(1).compare("night", "nacht").get should be (0.42857142857142855)
- JaccardMetric(1).compare("night", "naght").get should be (0.6666666666666666)
- JaccardMetric(1).compare("context", "contact").get should be (0.5555555555555556)
+ "return distance with valid arguments" in {
+ JaccardMetric(1).compare("night", "nacht").get must beEqualTo(0.42857142857142855)
+ JaccardMetric(1).compare("night", "naght").get must beEqualTo(0.6666666666666666)
+ JaccardMetric(1).compare("context", "contact").get must beEqualTo(0.5555555555555556)
- JaccardMetric(2).compare("night", "nacht").get should be (0.14285714285714285)
- JaccardMetric(2).compare("night", "naght").get should be (0.3333333333333333)
- JaccardMetric(2).compare("context", "contact").get should be (0.3333333333333333)
- JaccardMetric(2).compare("contextcontext", "contact").get should be (0.1875)
- JaccardMetric(2).compare("context", "contactcontact").get should be (0.1875)
- JaccardMetric(2).compare("ht", "nacht").get should be (0.25)
- JaccardMetric(2).compare("xp", "nacht").get should be (0)
- JaccardMetric(2).compare("ht", "hththt").get should be (0.2)
+ JaccardMetric(2).compare("night", "nacht").get must beEqualTo(0.14285714285714285)
+ JaccardMetric(2).compare("night", "naght").get must beEqualTo(0.3333333333333333)
+ JaccardMetric(2).compare("context", "contact").get must beEqualTo(0.3333333333333333)
+ JaccardMetric(2).compare("contextcontext", "contact").get must beEqualTo(0.1875)
+ JaccardMetric(2).compare("context", "contactcontact").get must beEqualTo(0.1875)
+ JaccardMetric(2).compare("ht", "nacht").get must beEqualTo(0.25)
+ JaccardMetric(2).compare("xp", "nacht").get must beEqualTo(0)
+ JaccardMetric(2).compare("ht", "hththt").get must beEqualTo(0.2)
- JaccardMetric(3).compare("night", "nacht").get should be (0)
- JaccardMetric(3).compare("night", "naght").get should be (0.2)
- JaccardMetric(3).compare("context", "contact").get should be (0.25)
- }
+ JaccardMetric(3).compare("night", "nacht").get must beEqualTo(0)
+ JaccardMetric(3).compare("night", "naght").get must beEqualTo(0.2)
+ JaccardMetric(3).compare("context", "contact").get must beEqualTo(0.25)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroMetricSpec.scala
index 26ae38e..c445033 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroMetricSpec.scala
@@ -1,51 +1,38 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class JaroMetricSpec extends ScalaTest { "JaroMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- JaroMetric.compare("", "").isDefined should be (false)
- JaroMetric.compare("abc", "").isDefined should be (false)
- JaroMetric.compare("", "xyz").isDefined should be (false)
- }
+object JaroMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "JaroMetric compare()" should {
+ "return None with empty arguments" in {
+ JaroMetric.compare("", "").isDefined should beFalse
+ JaroMetric.compare("abc", "").isDefined should beFalse
+ JaroMetric.compare("", "xyz").isDefined should beFalse
}
- "equal arguments" should returns {
- "1" in {
- JaroMetric.compare("a", "a").get should be (1)
- JaroMetric.compare("abc", "abc").get should be (1)
- JaroMetric.compare("123", "123").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ JaroMetric.compare("a", "a").get must beEqualTo(1)
+ JaroMetric.compare("abc", "abc").get must beEqualTo(1)
+ JaroMetric.compare("123", "123").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- JaroMetric.compare("abc", "xyz").get should be (0)
- JaroMetric.compare("123", "456").get should be (0)
- }
+ "return with 0 with unequal arguments" in {
+ JaroMetric.compare("abc", "xyz").get must beEqualTo(0)
+ JaroMetric.compare("123", "456").get must beEqualTo(0)
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- JaroMetric.compare("aa", "a").get should be (0.8333333333333334)
- JaroMetric.compare("a", "aa").get should be (0.8333333333333334)
- JaroMetric.compare("veryveryverylong", "v").get should be (0.6875)
- JaroMetric.compare("v", "veryveryverylong").get should be (0.6875)
- JaroMetric.compare("martha", "marhta").get should be (0.9444444444444445)
- JaroMetric.compare("dwayne", "duane").get should be (0.8222222222222223)
- JaroMetric.compare("dixon", "dicksonx").get should be (0.7666666666666666)
- JaroMetric.compare("abcvwxyz", "cabvwxyz").get should be (0.9583333333333334)
- JaroMetric.compare("jones", "johnson").get should be (0.7904761904761904)
- JaroMetric.compare("henka", "henkan").get should be (0.9444444444444445)
- JaroMetric.compare("fvie", "ten").get should be (0)
+ "return distance with valid arguments" in {
+ JaroMetric.compare("aa", "a").get must beEqualTo(0.8333333333333334)
+ JaroMetric.compare("a", "aa").get must beEqualTo(0.8333333333333334)
+ JaroMetric.compare("veryveryverylong", "v").get must beEqualTo(0.6875)
+ JaroMetric.compare("v", "veryveryverylong").get must beEqualTo(0.6875)
+ JaroMetric.compare("martha", "marhta").get must beEqualTo(0.9444444444444445)
+ JaroMetric.compare("dwayne", "duane").get must beEqualTo(0.8222222222222223)
+ JaroMetric.compare("dixon", "dicksonx").get must beEqualTo(0.7666666666666666)
+ JaroMetric.compare("abcvwxyz", "cabvwxyz").get must beEqualTo(0.9583333333333334)
+ JaroMetric.compare("jones", "johnson").get must beEqualTo(0.7904761904761904)
+ JaroMetric.compare("henka", "henkan").get must beEqualTo(0.9444444444444445)
+ JaroMetric.compare("fvie", "ten").get must beEqualTo(0)
- JaroMetric.compare("zac ephron", "zac efron").get should be >
- JaroMetric.compare("zac ephron", "kai ephron").get
- JaroMetric.compare("brittney spears", "britney spears").get should be >
- JaroMetric.compare("brittney spears", "brittney startzman").get
- }
+ JaroMetric.compare("zac ephron", "zac efron").get must
+ beGreaterThan(JaroMetric.compare("zac ephron", "kai ephron").get)
+ JaroMetric.compare("brittney spears", "britney spears").get must
+ beGreaterThan(JaroMetric.compare("brittney spears", "brittney startzman").get)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroWinklerMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroWinklerMetricSpec.scala
index d645456..79a4df0 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroWinklerMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/JaroWinklerMetricSpec.scala
@@ -1,51 +1,38 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class JaroWinklerMetricSpec extends ScalaTest { "JaroWinklerMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- JaroWinklerMetric.compare("", "").isDefined should be (false)
- JaroWinklerMetric.compare("abc", "").isDefined should be (false)
- JaroWinklerMetric.compare("", "xyz").isDefined should be (false)
- }
+object JaroWinklerMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "JaroWinklerMetric compare()" should {
+ "return None with empty arguments" in {
+ JaroWinklerMetric.compare("", "").isDefined must beFalse
+ JaroWinklerMetric.compare("abc", "").isDefined must beFalse
+ JaroWinklerMetric.compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "1" in {
- JaroWinklerMetric.compare("a", "a").get should be (1)
- JaroWinklerMetric.compare("abc", "abc").get should be (1)
- JaroWinklerMetric.compare("123", "123").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ JaroWinklerMetric.compare("a", "a").get must beEqualTo(1)
+ JaroWinklerMetric.compare("abc", "abc").get must beEqualTo(1)
+ JaroWinklerMetric.compare("123", "123").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- JaroWinklerMetric.compare("abc", "xyz").get should be (0)
- JaroWinklerMetric.compare("123", "456").get should be (0)
- }
+ "return 0 with unequal arguments" in {
+ JaroWinklerMetric.compare("abc", "xyz").get must beEqualTo(0)
+ JaroWinklerMetric.compare("123", "456").get must beEqualTo(0)
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- JaroWinklerMetric.compare("aa", "a").get should be (0.8500000000000001)
- JaroWinklerMetric.compare("a", "aa").get should be (0.8500000000000001)
- JaroWinklerMetric.compare("veryveryverylong", "v").get should be (0.71875)
- JaroWinklerMetric.compare("v", "veryveryverylong").get should be (0.71875)
- JaroWinklerMetric.compare("martha", "marhta").get should be (0.9611111111111111)
- JaroWinklerMetric.compare("dwayne", "duane").get should be (0.8400000000000001)
- JaroWinklerMetric.compare("dixon", "dicksonx").get should be (0.8133333333333332)
- JaroWinklerMetric.compare("abcvwxyz", "cabvwxyz").get should be (0.9583333333333334)
- JaroWinklerMetric.compare("jones", "johnson").get should be (0.8323809523809523)
- JaroWinklerMetric.compare("henka", "henkan").get should be (0.9666666666666667)
- JaroWinklerMetric.compare("fvie", "ten").get should be (0)
+ "return distance with valid arguments" in {
+ JaroWinklerMetric.compare("aa", "a").get must beEqualTo(0.8500000000000001)
+ JaroWinklerMetric.compare("a", "aa").get must beEqualTo(0.8500000000000001)
+ JaroWinklerMetric.compare("veryveryverylong", "v").get must beEqualTo(0.71875)
+ JaroWinklerMetric.compare("v", "veryveryverylong").get must beEqualTo(0.71875)
+ JaroWinklerMetric.compare("martha", "marhta").get must beEqualTo(0.9611111111111111)
+ JaroWinklerMetric.compare("dwayne", "duane").get must beEqualTo(0.8400000000000001)
+ JaroWinklerMetric.compare("dixon", "dicksonx").get must beEqualTo(0.8133333333333332)
+ JaroWinklerMetric.compare("abcvwxyz", "cabvwxyz").get must beEqualTo(0.9583333333333334)
+ JaroWinklerMetric.compare("jones", "johnson").get must beEqualTo(0.8323809523809523)
+ JaroWinklerMetric.compare("henka", "henkan").get must beEqualTo(0.9666666666666667)
+ JaroWinklerMetric.compare("fvie", "ten").get must beEqualTo(0)
- JaroWinklerMetric.compare("zac ephron", "zac efron").get should be >
- JaroWinklerMetric.compare("zac ephron", "kai ephron").get
- JaroWinklerMetric.compare("brittney spears", "britney spears").get should be >
- JaroWinklerMetric.compare("brittney spears", "brittney startzman").get
- }
+ JaroWinklerMetric.compare("zac ephron", "zac efron").get must
+ beGreaterThan(JaroWinklerMetric.compare("zac ephron", "kai ephron").get)
+ JaroWinklerMetric.compare("brittney spears", "britney spears").get must
+ beGreaterThan(JaroWinklerMetric.compare("brittney spears", "brittney startzman").get)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/LevenshteinMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/LevenshteinMetricSpec.scala
index 8e1538b..111d75f 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/LevenshteinMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/LevenshteinMetricSpec.scala
@@ -1,50 +1,37 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class LevenshteinMetricSpec extends ScalaTest { "LevenshteinMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- LevenshteinMetric.compare("", "").isDefined should be (false)
- LevenshteinMetric.compare("abc", "").isDefined should be (false)
- LevenshteinMetric.compare("", "xyz").isDefined should be (false)
- }
+object LevenshteinMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "LevenshteinMetric compare()" should {
+ "return None with empty arguments" in {
+ LevenshteinMetric.compare("", "").isDefined must beFalse
+ LevenshteinMetric.compare("abc", "").isDefined must beFalse
+ LevenshteinMetric.compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "0" in {
- LevenshteinMetric.compare("abc", "abc").get should be (0)
- LevenshteinMetric.compare("123", "123").get should be (0)
- }
+ "return 0 with equal arguments" in {
+ LevenshteinMetric.compare("abc", "abc").get must beEqualTo(0)
+ LevenshteinMetric.compare("123", "123").get must beEqualTo(0)
}
- "unequal arguments" should returns {
- "Int indicating distance" in {
- LevenshteinMetric.compare("abc", "xyz").get should be (3)
- LevenshteinMetric.compare("123", "456").get should be (3)
- }
+ "return distance with unequal arguments" in {
+ LevenshteinMetric.compare("abc", "xyz").get must beEqualTo(3)
+ LevenshteinMetric.compare("123", "456").get must beEqualTo(3)
}
- "valid arguments" should returns {
- "Int indicating distance" in {
- LevenshteinMetric.compare("abc", "a").get should be (2)
- LevenshteinMetric.compare("a", "abc").get should be (2)
- LevenshteinMetric.compare("abc", "c").get should be (2)
- LevenshteinMetric.compare("c", "abc").get should be (2)
- LevenshteinMetric.compare("sitting", "kitten").get should be (3)
- LevenshteinMetric.compare("kitten", "sitting").get should be (3)
- LevenshteinMetric.compare("cake", "drake").get should be (2)
- LevenshteinMetric.compare("drake", "cake").get should be (2)
- LevenshteinMetric.compare("saturday", "sunday").get should be (3)
- LevenshteinMetric.compare("sunday", "saturday").get should be (3)
- LevenshteinMetric.compare("book", "back").get should be (2)
- LevenshteinMetric.compare("dog", "fog").get should be (1)
- LevenshteinMetric.compare("foq", "fog").get should be (1)
- LevenshteinMetric.compare("fvg", "fog").get should be (1)
- LevenshteinMetric.compare("encyclopedia", "encyclopediaz").get should be (1)
- LevenshteinMetric.compare("encyclopediz", "encyclopediaz").get should be (1)
- }
+ "return distance with valid arguments" in {
+ LevenshteinMetric.compare("abc", "a").get must beEqualTo(2)
+ LevenshteinMetric.compare("a", "abc").get must beEqualTo(2)
+ LevenshteinMetric.compare("abc", "c").get must beEqualTo(2)
+ LevenshteinMetric.compare("c", "abc").get must beEqualTo(2)
+ LevenshteinMetric.compare("sitting", "kitten").get must beEqualTo(3)
+ LevenshteinMetric.compare("kitten", "sitting").get must beEqualTo(3)
+ LevenshteinMetric.compare("cake", "drake").get must beEqualTo(2)
+ LevenshteinMetric.compare("drake", "cake").get must beEqualTo(2)
+ LevenshteinMetric.compare("saturday", "sunday").get must beEqualTo(3)
+ LevenshteinMetric.compare("sunday", "saturday").get must beEqualTo(3)
+ LevenshteinMetric.compare("book", "back").get must beEqualTo(2)
+ LevenshteinMetric.compare("dog", "fog").get must beEqualTo(1)
+ LevenshteinMetric.compare("foq", "fog").get must beEqualTo(1)
+ LevenshteinMetric.compare("fvg", "fog").get must beEqualTo(1)
+ LevenshteinMetric.compare("encyclopedia", "encyclopediaz").get must beEqualTo(1)
+ LevenshteinMetric.compare("encyclopediz", "encyclopediaz").get must beEqualTo(1)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/NGramMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/NGramMetricSpec.scala
index 5e1abb8..501a331 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/NGramMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/NGramMetricSpec.scala
@@ -1,60 +1,45 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class NGramMetricSpec extends ScalaTest { "NGramMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- NGramMetric(1).compare("", "").isDefined should be (false)
- NGramMetric(1).compare("abc", "").isDefined should be (false)
- NGramMetric(1).compare("", "xyz").isDefined should be (false)
- }
+object NGramMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "NGramMetric compare()" should {
+ "return None with empty arguments" in {
+ NGramMetric(1).compare("", "").isDefined must beFalse
+ NGramMetric(1).compare("abc", "").isDefined must beFalse
+ NGramMetric(1).compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "1" in {
- NGramMetric(1).compare("abc", "abc").get should be (1)
- NGramMetric(2).compare("abc", "abc").get should be (1)
- NGramMetric(3).compare("abc", "abc").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ NGramMetric(1).compare("abc", "abc").get must beEqualTo(1)
+ NGramMetric(2).compare("abc", "abc").get must beEqualTo(1)
+ NGramMetric(3).compare("abc", "abc").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- NGramMetric(1).compare("abc", "xyz").get should be (0)
- NGramMetric(2).compare("abc", "xyz").get should be (0)
- NGramMetric(3).compare("abc", "xyz").get should be (0)
- }
+ "return 0 with unequal arguments" in {
+ NGramMetric(1).compare("abc", "xyz").get must beEqualTo(0)
+ NGramMetric(2).compare("abc", "xyz").get must beEqualTo(0)
+ NGramMetric(3).compare("abc", "xyz").get must beEqualTo(0)
}
- "invalid arguments" should returns {
- "None" in {
- NGramMetric(2).compare("n", "naght").isDefined should be (false)
- NGramMetric(2).compare("night", "n").isDefined should be (false)
- NGramMetric(3).compare("ni", "naght").isDefined should be (false)
- NGramMetric(3).compare("night", "na").isDefined should be (false)
- }
+ "return None with invalid arguments" in {
+ NGramMetric(2).compare("n", "naght").isDefined must beFalse
+ NGramMetric(2).compare("night", "n").isDefined must beFalse
+ NGramMetric(3).compare("ni", "naght").isDefined must beFalse
+ NGramMetric(3).compare("night", "na").isDefined must beFalse
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- NGramMetric(1).compare("night", "nacht").get should be (0.6)
- NGramMetric(1).compare("night", "naght").get should be (0.8)
- NGramMetric(1).compare("context", "contact").get should be (0.7142857142857143)
+ "return distance with valid arguments" in {
+ NGramMetric(1).compare("night", "nacht").get must beEqualTo(0.6)
+ NGramMetric(1).compare("night", "naght").get must beEqualTo(0.8)
+ NGramMetric(1).compare("context", "contact").get must beEqualTo(0.7142857142857143)
- NGramMetric(2).compare("night", "nacht").get should be (0.25)
- NGramMetric(2).compare("night", "naght").get should be (0.5)
- NGramMetric(2).compare("context", "contact").get should be (0.5)
- NGramMetric(2).compare("contextcontext", "contact").get should be (0.23076923076923078)
- NGramMetric(2).compare("context", "contactcontact").get should be (0.23076923076923078)
- NGramMetric(2).compare("ht", "nacht").get should be (0.25)
- NGramMetric(2).compare("xp", "nacht").get should be (0)
- NGramMetric(2).compare("ht", "hththt").get should be (0.2)
+ NGramMetric(2).compare("night", "nacht").get must beEqualTo(0.25)
+ NGramMetric(2).compare("night", "naght").get must beEqualTo(0.5)
+ NGramMetric(2).compare("context", "contact").get must beEqualTo(0.5)
+ NGramMetric(2).compare("contextcontext", "contact").get must beEqualTo(0.23076923076923078)
+ NGramMetric(2).compare("context", "contactcontact").get must beEqualTo(0.23076923076923078)
+ NGramMetric(2).compare("ht", "nacht").get must beEqualTo(0.25)
+ NGramMetric(2).compare("xp", "nacht").get must beEqualTo(0)
+ NGramMetric(2).compare("ht", "hththt").get must beEqualTo(0.2)
- NGramMetric(3).compare("night", "nacht").get should be (0)
- NGramMetric(3).compare("night", "naght").get should be (0.3333333333333333)
- NGramMetric(3).compare("context", "contact").get should be (0.4)
- }
+ NGramMetric(3).compare("night", "nacht").get must beEqualTo(0)
+ NGramMetric(3).compare("night", "naght").get must beEqualTo(0.3333333333333333)
+ NGramMetric(3).compare("context", "contact").get must beEqualTo(0.4)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/OverlapMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/OverlapMetricSpec.scala
index ec1e7b2..ba50592 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/OverlapMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/OverlapMetricSpec.scala
@@ -1,62 +1,47 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class OverlapMetricSpec extends ScalaTest { "OverlapMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- OverlapMetric(1).compare("", "").isDefined should be (false)
- OverlapMetric(1).compare("abc", "").isDefined should be (false)
- OverlapMetric(1).compare("", "xyz").isDefined should be (false)
- }
+object OverlapMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "OverlapMetric compare()" should {
+ "return None with empty arguments" in {
+ OverlapMetric(1).compare("", "").isDefined must beFalse
+ OverlapMetric(1).compare("abc", "").isDefined must beFalse
+ OverlapMetric(1).compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "1" in {
- OverlapMetric(1).compare("abc", "abc").get should be (1)
- OverlapMetric(2).compare("abc", "abc").get should be (1)
- OverlapMetric(3).compare("abc", "abc").get should be (1)
- }
+ "return 1 with equal arguments" in {
+ OverlapMetric(1).compare("abc", "abc").get must beEqualTo(1)
+ OverlapMetric(2).compare("abc", "abc").get must beEqualTo(1)
+ OverlapMetric(3).compare("abc", "abc").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "0" in {
- OverlapMetric(1).compare("abc", "xyz").get should be (0)
- OverlapMetric(2).compare("abc", "xyz").get should be (0)
- OverlapMetric(3).compare("abc", "xyz").get should be (0)
- }
+ "return 0 with unequal arguments" in {
+ OverlapMetric(1).compare("abc", "xyz").get must beEqualTo(0)
+ OverlapMetric(2).compare("abc", "xyz").get must beEqualTo(0)
+ OverlapMetric(3).compare("abc", "xyz").get must beEqualTo(0)
}
- "invalid arguments" should returns {
- "None" in {
- OverlapMetric(2).compare("n", "naght").isDefined should be (false)
- OverlapMetric(2).compare("night", "n").isDefined should be (false)
- OverlapMetric(3).compare("ni", "naght").isDefined should be (false)
- OverlapMetric(3).compare("night", "na").isDefined should be (false)
- }
+ "return None with invalid arguments" in {
+ OverlapMetric(2).compare("n", "naght").isDefined must beFalse
+ OverlapMetric(2).compare("night", "n").isDefined must beFalse
+ OverlapMetric(3).compare("ni", "naght").isDefined must beFalse
+ OverlapMetric(3).compare("night", "na").isDefined must beFalse
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- OverlapMetric(1).compare("bob", "bobman").get should be (1)
- OverlapMetric(1).compare("bob", "manbobman").get should be (1)
- OverlapMetric(1).compare("night", "nacht").get should be (0.6)
- OverlapMetric(1).compare("night", "naght").get should be (0.8)
- OverlapMetric(1).compare("context", "contact").get should be (0.7142857142857143)
+ "return distance with valid arguments" in {
+ OverlapMetric(1).compare("bob", "bobman").get must beEqualTo(1)
+ OverlapMetric(1).compare("bob", "manbobman").get must beEqualTo(1)
+ OverlapMetric(1).compare("night", "nacht").get must beEqualTo(0.6)
+ OverlapMetric(1).compare("night", "naght").get must beEqualTo(0.8)
+ OverlapMetric(1).compare("context", "contact").get must beEqualTo(0.7142857142857143)
- OverlapMetric(2).compare("night", "nacht").get should be (0.25)
- OverlapMetric(2).compare("night", "naght").get should be (0.5)
- OverlapMetric(2).compare("context", "contact").get should be (0.5)
- OverlapMetric(2).compare("contextcontext", "contact").get should be (0.5)
- OverlapMetric(2).compare("context", "contactcontact").get should be (0.5)
- OverlapMetric(2).compare("ht", "nacht").get should be (1)
- OverlapMetric(2).compare("xp", "nacht").get should be (0)
- OverlapMetric(2).compare("ht", "hththt").get should be (1)
+ OverlapMetric(2).compare("night", "nacht").get must beEqualTo(0.25)
+ OverlapMetric(2).compare("night", "naght").get must beEqualTo(0.5)
+ OverlapMetric(2).compare("context", "contact").get must beEqualTo(0.5)
+ OverlapMetric(2).compare("contextcontext", "contact").get must beEqualTo(0.5)
+ OverlapMetric(2).compare("context", "contactcontact").get must beEqualTo(0.5)
+ OverlapMetric(2).compare("ht", "nacht").get must beEqualTo(1)
+ OverlapMetric(2).compare("xp", "nacht").get must beEqualTo(0)
+ OverlapMetric(2).compare("ht", "hththt").get must beEqualTo(1)
- OverlapMetric(3).compare("night", "nacht").get should be (0)
- OverlapMetric(3).compare("night", "naght").get should be (0.3333333333333333)
- OverlapMetric(3).compare("context", "contact").get should be (0.4)
- }
+ OverlapMetric(3).compare("night", "nacht").get must beEqualTo(0)
+ OverlapMetric(3).compare("night", "naght").get must beEqualTo(0.3333333333333333)
+ OverlapMetric(3).compare("context", "contact").get must beEqualTo(0.4)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/RatcliffObershelpMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/RatcliffObershelpMetricSpec.scala
index 30bbf49..61394ea 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/RatcliffObershelpMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/RatcliffObershelpMetricSpec.scala
@@ -1,40 +1,27 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class RatcliffObershelpMetricSpec extends ScalaTest { "RatcliffObershelpMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- RatcliffObershelpMetric.compare("", "").isDefined should be (false)
- RatcliffObershelpMetric.compare("abc", "").isDefined should be (false)
- RatcliffObershelpMetric.compare("", "xyz").isDefined should be (false)
- }
+object RatcliffObershelpMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "RatcliffObershelpMetric compare()" should {
+ "return None with empty arguments" in {
+ RatcliffObershelpMetric.compare("", "").isDefined must beFalse
+ RatcliffObershelpMetric.compare("abc", "").isDefined must beFalse
+ RatcliffObershelpMetric.compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "0" in {
- RatcliffObershelpMetric.compare("abc", "abc").get should be (1)
- RatcliffObershelpMetric.compare("123", "123").get should be (1)
- }
+ "return 0 with equal arguments" in {
+ RatcliffObershelpMetric.compare("abc", "abc").get must beEqualTo(1)
+ RatcliffObershelpMetric.compare("123", "123").get must beEqualTo(1)
}
- "unequal arguments" should returns {
- "Double indicating distance" in {
- RatcliffObershelpMetric.compare("abc", "xyz").get should be (0)
- RatcliffObershelpMetric.compare("123", "456").get should be (0)
- }
+ "return distance with unequal arguments" in {
+ RatcliffObershelpMetric.compare("abc", "xyz").get must beEqualTo(0)
+ RatcliffObershelpMetric.compare("123", "456").get must beEqualTo(0)
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- RatcliffObershelpMetric.compare("aleksander", "alexandre").get should be (0.7368421052631579)
- RatcliffObershelpMetric.compare("alexandre", "aleksander").get should be (0.7368421052631579)
- RatcliffObershelpMetric.compare("pennsylvania", "pencilvaneya").get should be (0.6666666666666666)
- RatcliffObershelpMetric.compare("pencilvaneya", "pennsylvania").get should be (0.6666666666666666)
- RatcliffObershelpMetric.compare("abcefglmn", "abefglmo").get should be (0.8235294117647058)
- RatcliffObershelpMetric.compare("abefglmo", "abcefglmn").get should be (0.8235294117647058)
- }
+ "return distance with valid arguments" in {
+ RatcliffObershelpMetric.compare("aleksander", "alexandre").get must beEqualTo(0.7368421052631579)
+ RatcliffObershelpMetric.compare("alexandre", "aleksander").get must beEqualTo(0.7368421052631579)
+ RatcliffObershelpMetric.compare("pennsylvania", "pencilvaneya").get must beEqualTo(0.6666666666666666)
+ RatcliffObershelpMetric.compare("pencilvaneya", "pennsylvania").get must beEqualTo(0.6666666666666666)
+ RatcliffObershelpMetric.compare("abcefglmn", "abefglmo").get must beEqualTo(0.8235294117647058)
+ RatcliffObershelpMetric.compare("abefglmo", "abcefglmn").get must beEqualTo(0.8235294117647058)
}
}
-}}
+}
diff --git a/core/src/test/scala/com/rockymadden/stringmetric/similarity/WeightedLevenshteinMetricSpec.scala b/core/src/test/scala/com/rockymadden/stringmetric/similarity/WeightedLevenshteinMetricSpec.scala
index 070458a..53c1254 100755
--- a/core/src/test/scala/com/rockymadden/stringmetric/similarity/WeightedLevenshteinMetricSpec.scala
+++ b/core/src/test/scala/com/rockymadden/stringmetric/similarity/WeightedLevenshteinMetricSpec.scala
@@ -1,48 +1,35 @@
package com.rockymadden.stringmetric.similarity
-import com.rockymadden.stringmetric.ScalaTest
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-final class WeightedLevenshteinMetricSpec extends ScalaTest { "WeightedLevenshteinMetric" should provide {
- "compare method" when passed {
- "empty arguments" should returns {
- "None" in {
- WeightedLevenshteinMetric(10, 0.1, 1).compare("", "").isDefined should be (false)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "").isDefined should be (false)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("", "xyz").isDefined should be (false)
- }
+object WeightedLevenshteinMetricSpec extends org.specs2.mutable.SpecificationWithJUnit {
+ "WeightedLevenshteinMetric compare()" should {
+ "return None with empty arguments" in {
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("", "").isDefined must beFalse
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "").isDefined must beFalse
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("", "xyz").isDefined must beFalse
}
- "equal arguments" should returns {
- "0" in {
- WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "abc").get should be (0)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("123", "123").get should be (0)
- }
+ "return 0 with equal arguments" in {
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "abc").get must beEqualTo(0)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("123", "123").get must beEqualTo(0)
}
- "unequal arguments" should returns {
- "Double indicating distance" in {
- WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "xyz").get should be (3)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("123", "456").get should be (3)
- }
+ "return distance with unequal arguments" in {
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("abc", "xyz").get must beEqualTo(3)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("123", "456").get must beEqualTo(3)
}
- "valid arguments" should returns {
- "Double indicating distance" in {
- WeightedLevenshteinMetric(10, 0.1, 1).compare("az", "z").get should be (10)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("z", "az").get should be (0.1)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("a", "z").get should be (1)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("z", "a").get should be (1)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("ab", "yz").get should be (2)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("yz", "ab").get should be (2)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("0", "0123456789").get should be (0.9)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("0123456789", "0").get should be (90)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("book", "back").get should be (2)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("back", "book").get should be (2)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("hosp", "hospital").get should be (0.4)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("hospital", "hosp").get should be (40)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("clmbs blvd", "columbus boulevard").get should be (0.8)
- WeightedLevenshteinMetric(10, 0.1, 1).compare("columbus boulevard", "clmbs blvd").get should be (80)
- }
+ "return distance with valid arguments" in {
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("az", "z").get must beEqualTo(10)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("z", "az").get must beEqualTo(0.1)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("a", "z").get must beEqualTo(1)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("z", "a").get must beEqualTo(1)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("ab", "yz").get must beEqualTo(2)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("yz", "ab").get must beEqualTo(2)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("0", "0123456789").get must beEqualTo(0.9)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("0123456789", "0").get must beEqualTo(90)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("book", "back").get must beEqualTo(2)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("back", "book").get must beEqualTo(2)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("hosp", "hospital").get must beEqualTo(0.4)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("hospital", "hosp").get must beEqualTo(40)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("clmbs blvd", "columbus boulevard").get must beEqualTo(0.8)
+ WeightedLevenshteinMetric(10, 0.1, 1).compare("columbus boulevard", "clmbs blvd").get must beEqualTo(80)
}
}
-}}
+}