Exemplo n.º 1
0
        public async Task JwtTokenGenerator_ShouldBeOk_WhenIsSuTagIsPresentAndIsTrue()
        {
            // Arrange
            var options = Options.Create(new JwtOptions()
            {
                TokenLifeTime = 1
            });

            var publicAndPrivate = new RSACryptoServiceProvider(2048);
            var key = new RsaSecurityKey(publicAndPrivate.ExportParameters(true));
            var signingCredentials = new SigningCredentials(key, SecurityAlgorithms.RsaSha256);
            var handler            = new JwtSecurityTokenHandler();
            var sut = new JwtTokenGenerator(options, signingCredentials, handler);

            // Act
            var jwtToken = sut.CreateJwtToken();

            // Assert
            var jsonToken      = handler.ReadToken(jwtToken);
            var tokens         = handler.ReadToken(jwtToken) as JwtSecurityToken;
            var isSuClaimValue = tokens.Claims.First(claim => claim.Type == "isSU").Value;

            Assert.True(isSuClaimValue == "true");
        }