コード例 #1
0
        public void hash_the_same_string_should_return_the_same_result()
        {
            var text       = "!@#$@DSFSDAFS@#$@DSFA@#$";
            var hashFunc   = new Murmur3Hash();
            var hashBytes1 = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text));
            var hashBytes2 = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text));
            var str1       = hashBytes1.ToHex();
            var str2       = hashBytes2.ToHex();

            Assert.Equal(str1, str2);
        }
コード例 #2
0
        public void hash_different_string_should_return_different_result()
        {
            var text1 = "$1";
            var text2 = "$2";

            var hashFunc   = new Murmur3Hash();
            var hashBytes1 = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text1));
            var hashBytes2 = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text2));

            Assert.NotEqual(hashBytes1.ToHex(), hashBytes2.ToHex());
        }
コード例 #3
0
        public void hash_the_same_string_multiple_times_should_return_the_same_result()
        {
            var text       = "!@#$@DSFSDAFS@#$@DSFA@#$";
            var hashFunc   = new Murmur3Hash();
            var hashBytes1 = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text));

            for (int i = 0; i < 100000; i++)
            {
                var comparedHashBytes = hashFunc.ComputeHash(Encoding.Unicode.GetBytes(text));

                Assert.Equal(hashBytes1.ToHex(), comparedHashBytes.ToHex());
            }
        }
コード例 #4
0
 public byte[] Murmur3() => murmur3.ComputeHash(data);