Beispiel #1
0
 public void TestCosineSimilarityWithDifferentValues()
 {
     this.TestRange(0.9.ToPercentValue(), Similarity.CalculateCosineSimilarity("test", "test2"), 1.ToPercentValue());
     this.TestRange(0.8.ToPercentValue(), Similarity.CalculateCosineSimilarity("test1", "test2"), 0.9.ToPercentValue());
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity("test", string.Empty).Value);
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity(string.Empty, "test").Value);
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity("test", "a").Value);
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity("a", "test").Value);
     this.TestRange(0.1.ToPercentValue(), Similarity.CalculateCosineSimilarity("test", "aeaa"), 0.2.ToPercentValue());
     this.TestRange(0.1.ToPercentValue(), Similarity.CalculateCosineSimilarity("aeaa", "test"), 0.2.ToPercentValue());
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity("abcd", "efgh").Value);
     this.TestRange(0.1.ToPercentValue(), Similarity.CalculateCosineSimilarity("xx345xxx", "yy345yyy"), 0.2.ToPercentValue());
     this.TestRange(0.3.ToPercentValue(), Similarity.CalculateCosineSimilarity("12xxx678", "12yyy678"), 0.4.ToPercentValue());
     this.TestRange(0.7.ToPercentValue(), Similarity.CalculateCosineSimilarity("12345678", "1x34567890"), 0.8.ToPercentValue());
 }
Beispiel #2
0
 public void TestCosineSimilarityWithCompletelyDifferentStrings()
 {
     Assert.AreEqual(0, Similarity.CalculateCosineSimilarity("abcd", "efgh").Value);
 }
Beispiel #3
0
        public void TestCosineSimilarityWithEqualStrings()
        {
            string testString = "test";

            Assert.AreEqual(1, Similarity.CalculateCosineSimilarity(testString, testString).Value);
        }