public void FNV1a_Implementation_HashSizeInBits_MatchesConfig() { var validHashSizes = Enumerable.Range(1, 1024).Select(i => i * 32); foreach (var hashSize in validHashSizes) { var fnvConfigMock = new Mock <IFNVConfig>(); { fnvConfigMock.SetupGet(fc => fc.HashSizeInBits) .Returns(hashSize); fnvConfigMock.SetupGet(fc => fc.Prime) .Returns(BigInteger.One); fnvConfigMock.SetupGet(fc => fc.Offset) .Returns(BigInteger.One); fnvConfigMock.Setup(fc => fc.Clone()) .Returns(() => fnvConfigMock.Object); } var fnv1a = new FNV1a_Implementation(fnvConfigMock.Object); Assert.Equal(hashSize, fnv1a.HashSizeInBits); } }
public void FNV1a_Implementation_Config_IsCloneOfClone() { var fnvConfig3 = Mock.Of <IFNVConfig>(); var fnvConfig2 = Mock.Of <IFNVConfig>(fc => fc.HashSizeInBits == 32 && fc.Prime == BigInteger.One && fc.Offset == BigInteger.One && fc.Clone() == fnvConfig3); var fnvConfig = Mock.Of <IFNVConfig>(fc => fc.Clone() == fnvConfig2); var fnv1aHash = new FNV1a_Implementation(fnvConfig); Assert.Equal(fnvConfig3, fnv1aHash.Config); }