A fuzzy matching string distance library for Scala and Java that includes Levenshtein distance, Jaro distance, Jaro-Winkler distance, Dice coefficient, N-Gram similarity, Cosine similarity, Jaccard similarity, Longest common subsequence, Hamming distance, and more..
TestCase and TestSoundCase are case classes with value members: Option[T] where T is either an Int or Double depending on whether the test is for a distance or fuzzy score metric. These classes need to be generalized to support adding more test cases with greater flexibility.
String and String sound tests may need to be refactored as well to support any new model:
The class that stores test case information needs to be refactored:
https://github.com/vickumar1981/stringdistance/blob/master/src/test/scala/fixtures/TestCases.scala#L6
TestCase
andTestSoundCase
are case classes with value members:Option[T]
whereT
is either anInt
orDouble
depending on whether the test is for a distance or fuzzy score metric. These classes need to be generalized to support adding more test cases with greater flexibility.String and String sound tests may need to be refactored as well to support any new model:
https://github.com/vickumar1981/stringdistance/blob/master/src/test/scala/TestStringDistance.scala
https://github.com/vickumar1981/stringdistance/blob/master/src/test/scala/TestStringSoundScore.scala