Here is a unit test function (that passes!) that tests the hash function:
/// <summary>
/// Test HashStringToString
/// </summary>
[Test]
public void TestHashStringToString()
{
Console.WriteLine("000000000111111111122222222223333333333444444444");
Console.WriteLine("123456789012345678901234567890123456789012345678");
string[] hash =
{
CommonData.HashStringToString("A"),
CommonData.HashStringToString("B"),
CommonData.HashStringToString("C"),
CommonData.HashStringToString("AB"),
CommonData.HashStringToString("ABC"),
CommonData.HashStringToString("ABCD"),
CommonData.HashStringToString("ABCDE"),
CommonData.HashStringToString("ABCDEF"),
CommonData.HashStringToString("FAAAAA"),
CommonData.HashStringToString("AFAAAA"),
CommonData.HashStringToString("AAFAAA"),
CommonData.HashStringToString("AAAFAA"),
CommonData.HashStringToString("AAAAFA"),
CommonData.HashStringToString("AAAAAF"),
CommonData.HashStringToString("BACDEF"),
CommonData.HashStringToString("AAAAAA"),
CommonData.HashStringToString("AAAAAB"),
CommonData.HashStringToString("AAAABA"),
CommonData.HashStringToString("AAABAA"),
CommonData.HashStringToString("AABAAA"),
CommonData.HashStringToString("ABAAAA"),
CommonData.HashStringToString("BAAAAA"),
CommonData.HashStringToString("FYYYYY"),
CommonData.HashStringToString("YFYYYY"),
CommonData.HashStringToString("YYFYYY"),
CommonData.HashStringToString("YYYFYY"),
CommonData.HashStringToString("YYYYFY"),
CommonData.HashStringToString("YYYYYF"),
CommonData.HashStringToString("BYCDEF"),
CommonData.HashStringToString("YYYYYY"),
CommonData.HashStringToString("YYYYYB"),
CommonData.HashStringToString("YYYYBY"),
CommonData.HashStringToString("YYYBYY"),
CommonData.HashStringToString("YYBYYY"),
CommonData.HashStringToString("YBYYYY"),
CommonData.HashStringToString("BYYYYY"),
CommonData.HashStringToString("FXXXXX"),
CommonData.HashStringToString("XFXXXX"),
CommonData.HashStringToString("XXFXXX"),
CommonData.HashStringToString("XXXFXX"),
CommonData.HashStringToString("XXXXFX"),
CommonData.HashStringToString("XXXXXF"),
CommonData.HashStringToString("BXCDEF"),
CommonData.HashStringToString("XXXXXX"),
CommonData.HashStringToString("XXXXXB"),
CommonData.HashStringToString("XXXXBX"),
CommonData.HashStringToString("XXXBXX"),
CommonData.HashStringToString("XXBXXX"),
CommonData.HashStringToString("XBXXXX"),
CommonData.HashStringToString("BXXXXX"),
CommonData.HashStringToString("FZZZZZ"),
CommonData.HashStringToString("ZFZZZZ"),
CommonData.HashStringToString("ZZFZZZ"),
CommonData.HashStringToString("ZZZFZZ"),
CommonData.HashStringToString("ZZZZFZ"),
CommonData.HashStringToString("ZZZZZF"),
CommonData.HashStringToString("BZCDEF"),
CommonData.HashStringToString("ZZZZZZ"),
CommonData.HashStringToString("ZZZZZB"),
CommonData.HashStringToString("ZZZZBZ"),
CommonData.HashStringToString("ZZZBZZ"),
CommonData.HashStringToString("ZZBZZZ"),
CommonData.HashStringToString("ZBZZZZ"),
CommonData.HashStringToString("BZZZZZ")
};
for (var i1 = 0; i1 < hash.Length; i1++)
{
Console.WriteLine(i1.ToString("000", CultureInfo.InvariantCulture) + ":" + hash[i1]
+ ": Len=" + hash[i1].Length.ToString(CultureInfo.InvariantCulture));
for (var i2 = i1 + 1; i2 < hash.Length; i2++)
{
Assert.AreNotEqual(hash[i1], hash[i2]);
}
}
}
Don't forget to click "Mark as Answer" on the post that helped you.
This credits that member, earns you a point and marks your thread as Resolved so we will all know you have been helped.