public virtual void TestCommonScore_TotallyDifferentFiles()
        {
            SimilarityIndex src = Hash("A\n");
            SimilarityIndex dst = Hash("D\n");

            NUnit.Framework.Assert.AreEqual(0, src.Common(dst));
            NUnit.Framework.Assert.AreEqual(0, dst.Common(src));
        }
        public virtual void TestCommonScore_EmptyFiles()
        {
            SimilarityIndex src = Hash(string.Empty);
            SimilarityIndex dst = Hash(string.Empty);

            NUnit.Framework.Assert.AreEqual(0, src.Common(dst));
            NUnit.Framework.Assert.AreEqual(0, dst.Common(src));
        }
        public virtual void TestCommonScore_SimiliarBy75()
        {
            SimilarityIndex src = Hash("A\nB\nC\nD\n");
            SimilarityIndex dst = Hash("A\nB\nC\nQ\n");

            NUnit.Framework.Assert.AreEqual(6, src.Common(dst));
            NUnit.Framework.Assert.AreEqual(6, dst.Common(src));
            NUnit.Framework.Assert.AreEqual(75, src.Score(dst, 100));
            NUnit.Framework.Assert.AreEqual(75, dst.Score(src, 100));
        }
        public virtual void TestCommonScore_SameFiles()
        {
            string text = string.Empty + "A\n" + "B\n" + "D\n" + "B\n";
            //
            //
            //
            //
            SimilarityIndex src = Hash(text);
            SimilarityIndex dst = Hash(text);

            NUnit.Framework.Assert.AreEqual(8, src.Common(dst));
            NUnit.Framework.Assert.AreEqual(8, dst.Common(src));
            NUnit.Framework.Assert.AreEqual(100, src.Score(dst, 100));
            NUnit.Framework.Assert.AreEqual(100, dst.Score(src, 100));
        }