Example #1
0
        CachedObject <string> SetupDateTimeProvider(CachedObject <string> cache, DateTime dateTime)
        {
            var provider = new FixedDateTimeProvider(dateTime);

            cache.DateTimeProvider = provider;
            return(cache);
        }
        public void FixedDateTimeProvider_MinValueReturnsActualMinValue()
        {
            /* Create the test subject */
            DateTimeProvider testSubject = new FixedDateTimeProvider(new DateTime(2014, 12, 23));

            Assert.AreEqual(DateTime.MinValue, testSubject.MinValue);
        }
Example #3
0
        /// <summary>
        /// Create the JWT builder for encoding/decoding JWTs.
        /// </summary>
        /// <param name="forDecoding">
        /// Set to true if using the builder for decoding or false if encoding. If you are unsure use false which will
        /// work for decoding, but only with one algorithm.
        /// </param>
        /// <returns></returns>
        public JwtBuilder CreateJwtBuilder(bool forDecoding)
        {
            // IJsonSerializer serializer = new JsonNetSerializer();
            IDateTimeProvider dateTimeProvider = new FixedDateTimeProvider(_timestamp);
            // IJwtValidator validator = new JwtValidator(serializer, dateTimeProvider);
            // IBase64UrlEncoder urlEncoder = new JwtBase64UrlEncoder();
            // IJwtAlgorithm algorithm = new HMACSHA256Algorithm();
            // IJwtDecoder decoder = new JwtDecoder(serializer, validator, urlEncoder, algorithm);
            var builder = new JwtBuilder()
                          // .WithSerializer(new Serializer(new JsonNetSerializer()))
                          .WithSecret(_signingSecret)
                          .WithDateTimeProvider(dateTimeProvider)
                          .WithVerifySignature(true)
                          .AddHeader(HeaderName.KeyId, GetSigningClientID())
                          .AddClaim("v", GetVersion());

            if (forDecoding)
            {
                builder.WithAlgorithmFactory(new AlgorithmFactory());
            }
            else
            {
                builder.WithAlgorithm(CreateAlgorithm(_signingAlgorithm));
            }

            return(builder);
        }
        public void FixedDateTimeProvider_UtcTime_UtcNowReturnsConfiguredValue()
        {
            /* Create the test subject */
            DateTimeProvider testSubject = new FixedDateTimeProvider(new DateTime(2014, 12, 23, 9, 33, 42, DateTimeKind.Utc));

            DateTime testvalue     = testSubject.UtcNow;
            DateTime expectedValue = new DateTime(2014, 12, 23, 9, 33, 42, DateTimeKind.Utc);

            Assert.AreEqual(expectedValue, testvalue);
        }
        public void FixedDateTimeProvider_TodayReturnsConfiguredValue()
        {
            /* Create the test subject */
            DateTimeProvider testSubject = new FixedDateTimeProvider(new DateTime(2014, 12, 23, 9, 33, 42));

            DateTime testvalue     = testSubject.Today;
            DateTime expectedValue = new DateTime(2014, 12, 23);

            Assert.AreEqual(expectedValue, testvalue);
        }
Example #6
0
        public void ItShouldReturnTheSameAge()
        {
            // Arrange
            IDateTimeProvider fixedDateProvider = new FixedDateTimeProvider(new DateTime(2020, 1, 1));
            var user = User.CreateForGettingAge("Javier", new DateTime(2000, 1, 1));

            // Act
            var age = user.GetAge(fixedDateProvider);

            // Assert
            Assert.Equal(20, age);
        }