コード例 #1
0
        public void CreateToken_NullPayload()
        {
            TokenClaim  claim   = TestMsJwtProviderBase.CreateClaim();
            TestPayload payload = null;

            string token = GetProvider().CreateToken(claim, payload);

            MsJwtValidatorBase <TestPayload> validator = CreateValidator(TestConstants.Issuer, TestConstants.Audience);

            Assert.IsTrue(validator.ValidateToken(token, out ITokenClaim tokenClaim, out TestPayload tokenPayload, out TokenState state, out string errorMessage));

            Assert.IsTrue(ValueEquals(claim, tokenClaim));
            Assert.IsNull(tokenPayload);
            Assert.AreEqual(state, TokenState.Valid);
        }
コード例 #2
0
        public void CreateToken_NotBefore()
        {
            TokenClaim  claim   = TestMsJwtProviderBase.CreateClaim();
            TestPayload payload = TestMsJwtProviderBase.CreatePayload();

            claim.NotBefore = DateTimeOffset.UtcNow.AddSeconds(5);

            string token = GetProvider().CreateToken(claim, payload);

            MsJwtValidatorBase <TestPayload> validator = CreateValidator(TestConstants.Issuer, TestConstants.Audience);

            Assert.IsFalse(validator.ValidateToken(token, out ITokenClaim tokenClaim, out TestPayload tokenPayload, out TokenState state, out string errorMessage));

            Assert.AreEqual(state, TokenState.NotBefore);
        }
コード例 #3
0
        /// <summary>
        ///
        /// </summary>
        private void CreateToken_InvalidAudience(bool validateAudience)
        {
            TokenClaim  claim   = TestMsJwtProviderBase.CreateClaim();
            TestPayload payload = TestMsJwtProviderBase.CreatePayload();

            string token = GetProvider().CreateToken(claim, payload);

            MsJwtValidatorBase <TestPayload> validator = CreateValidator(TestConstants.Issuer, validateAudience ? "thisAudience" : null);

            if (validateAudience)
            {
                Assert.IsFalse(validator.ValidateToken(token, out ITokenClaim tokenClaim, out TestPayload tokenPayload, out TokenState state, out string errorMessage));
                Assert.AreEqual(state, TokenState.InvalidAudience);
            }
            else
            {
                Assert.IsTrue(validator.ValidateToken(token, out ITokenClaim tokenClaim, out TestPayload tokenPayload, out TokenState state, out string errorMessage));
                Assert.AreEqual(state, TokenState.Valid);
            }
        }