public void CheckUnlessModifiedSince_HasNotBeenModifiedSince_True()
        {
            //Arrange
            var httpRequest = MockRepository.GenerateMock<HttpRequestBase>();
            var lastModified = new DateTime(2010, 01, 01, 01, 01, 01);
            var headerValue = lastModified.AddSeconds(1).ToString("r");
            var headerType = HttpRequestHeader.UnlessModifiedSince;
            var headerName = (string)headerType;

            httpRequest.Expect(x => x.Headers[headerName]).Return(headerValue);

            //Act
            var httpRequestHeaderHelper = new HttpRequestHeaderHelper();
            var hasNotBeenModifiedSince = httpRequestHeaderHelper.CheckUnlessModifiedSince(httpRequest, lastModified);

            //Assert
            httpRequest.VerifyAllExpectations();
            Assert.IsNotNull(hasNotBeenModifiedSince);
            Assert.True(hasNotBeenModifiedSince.Value);
        }
        public void CheckUnlessModifiedSince_DateUnlessModifiedSinceInvalid_False()
        {
            //Arrange
            var httpRequest = MockRepository.GenerateMock<HttpRequestBase>();
            var lastModified = new DateTime(2010, 01, 01, 01, 01, 01, DateTimeKind.Utc);
            var headerValue = "Invalid";
            var headerType = HttpRequestHeader.UnlessModifiedSince;
            var headerName = (string)headerType;

            httpRequest.Expect(x => x.Headers[headerName]).Return(headerValue);

            //Act
            var httpRequestHeaderHelper = new HttpRequestHeaderHelper();
            var hasNotBeenModifiedSince = httpRequestHeaderHelper.CheckUnlessModifiedSince(httpRequest, lastModified);

            //Assert
            httpRequest.VerifyAllExpectations();
            Assert.IsNull(hasNotBeenModifiedSince);
        }