Exemple #1
0
        public void ShouldFailToValidateContentMd5()
        {
            // Arrange
            IHmacConfiguration configuration = CreateConfiguration();
            IHmacSigner        signer        = new HmacSigner(configuration, _keyRepository);
            HmacValidator      validator     = new HmacValidator(configuration, signer);

            const string incorrectBody = Body + "Modified";

            byte[] incorrectBodyBytes  = Encoding.UTF8.GetBytes(incorrectBody);
            Stream incorrectBodyStream = new MemoryStream(incorrectBodyBytes);

            // Act
            bool stringIsValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, incorrectBody, Encoding.UTF8);
            bool stringIsValidByteArray = validator.IsValidContentMd5(_md5Hash, incorrectBody, Encoding.UTF8);
            bool bytesAreValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, incorrectBodyBytes);
            bool bytesAreValidByteArray = validator.IsValidContentMd5(_md5Hash, incorrectBodyBytes);
            bool streamIsValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, incorrectBodyStream);
            bool streamIsValidByteArray = validator.IsValidContentMd5(_md5Hash, incorrectBodyStream);

            incorrectBodyStream.Dispose();

            // Assert
            Assert.IsFalse(stringIsValidBase64);
            Assert.IsFalse(stringIsValidByteArray);
            Assert.IsFalse(bytesAreValidBase64);
            Assert.IsFalse(bytesAreValidByteArray);
            Assert.IsFalse(streamIsValidBase64);
            Assert.IsFalse(streamIsValidByteArray);
        }
Exemple #2
0
        public void ShouldValidateContentMd5()
        {
            // Arrange
            IHmacConfiguration configuration = CreateConfiguration();
            IHmacSigner        signer        = new HmacSigner(configuration, _keyRepository);
            HmacValidator      validator     = new HmacValidator(configuration, signer);

            // Act
            bool stringIsValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, Body, Encoding.UTF8);
            bool stringIsValidByteArray = validator.IsValidContentMd5(_md5Hash, Body, Encoding.UTF8);
            bool bytesAreValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, _bodyBytes);
            bool bytesAreValidByteArray = validator.IsValidContentMd5(_md5Hash, _bodyBytes);
            bool streamIsValidBase64    = validator.IsValidContentMd5(_base64Md5Hash, _bodyStream);
            bool streamIsValidByteArray = validator.IsValidContentMd5(_md5Hash, _bodyStream);

            // Assert
            Assert.IsTrue(stringIsValidBase64);
            Assert.IsTrue(stringIsValidByteArray);
            Assert.IsTrue(bytesAreValidBase64);
            Assert.IsTrue(bytesAreValidByteArray);
            Assert.IsTrue(streamIsValidBase64);
            Assert.IsTrue(streamIsValidByteArray);
        }