Exemple #1
0
        public async Task JwtUtlity_GenerateJwt_ReturnsGenerateJwtBehaviorResult()
        {
            //Arrange
            var generateJwtBehaviorResult = new GenerateJwtResult("jwt");

            var jwtGenerateBehaviorMock = new Mock <IGenerateJwtBehavior>();

            jwtGenerateBehaviorMock.Setup(x => x.GenerateJwtAsync(It.IsAny <int>(), It.IsAny <IEnumerable <KeyValuePair <string, string> > >()))
            .Returns(Task.FromResult(HttpFragileOperationResult <GenerateJwtResult> .CreateSuccessfulResult(generateJwtBehaviorResult, HttpStatusCode.OK, "")));

            var jwtUtility = new JwtUtility(null, jwtGenerateBehaviorMock.Object);

            //Act
            var result = await jwtUtility.GenerateJwtAsync().ConfigureAwait(false);

            //Assert
            Assert.AreEqual(generateJwtBehaviorResult.Jwt, result.Result.Jwt);
        }
Exemple #2
0
        public async Task JwtUtlityHealthCheck_GetHealth_ReturnsCriticalHealthCheckResult_WhenValidateBehaviorResultIsFailed()
        {
            //Arrange
            var jwtValidateBehavior = new Mock <IValidateJwtBehavior>();

            jwtValidateBehavior.Setup(x => x.ValidateJwtAsync(It.IsAny <string>())).Returns(Task.FromResult(HttpFragileOperationResult <ValidateJwtResult> .CreateFailedResult(HttpStatusCode.BadRequest, "", "TestMessage")));

            var generateJwtBehaviorResult = new GenerateJwtResult("jwt");
            var jwtGenerateBehaviorMock   = new Mock <IGenerateJwtBehavior>();

            jwtGenerateBehaviorMock.Setup(x => x.GenerateJwtAsync(It.IsAny <int>(), It.IsAny <IEnumerable <KeyValuePair <string, string> > >())).Returns(Task.FromResult(HttpFragileOperationResult <GenerateJwtResult> .CreateSuccessfulResult(generateJwtBehaviorResult, HttpStatusCode.OK, "")));

            var jwtUtility = new JwtUtility(jwtValidateBehavior.Object, jwtGenerateBehaviorMock.Object);

            //Act
            var result = await jwtUtility.GetHealthAsync().ConfigureAwait(false);

            //Assert
            Assert.AreEqual(HealthStatus.Critical, result.Status);
        }
Exemple #3
0
        public async Task JwtUtlityHealthCheck_GetHealth_ReturnsActiveHealthCheckResult_WhenAllGood()
        {
            //Arrange
            var validateJwtBehaviorResult = new ValidateJwtResult(true, "123");
            var jwtValidateBehavior       = new Mock <IValidateJwtBehavior>();

            jwtValidateBehavior.Setup(x => x.ValidateJwtAsync(It.IsAny <string>())).Returns(Task.FromResult(HttpFragileOperationResult <ValidateJwtResult> .CreateSuccessfulResult(validateJwtBehaviorResult, HttpStatusCode.OK, "")));

            var generateJwtBehaviorResult = new GenerateJwtResult("jwt");
            var jwtGenerateBehaviorMock   = new Mock <IGenerateJwtBehavior>();

            jwtGenerateBehaviorMock.Setup(x => x.GenerateJwtAsync(It.IsAny <int>(), It.IsAny <IEnumerable <KeyValuePair <string, string> > >())).Returns(Task.FromResult(HttpFragileOperationResult <GenerateJwtResult> .CreateSuccessfulResult(generateJwtBehaviorResult, HttpStatusCode.OK, "")));

            var jwtUtility = new JwtUtility(jwtValidateBehavior.Object, jwtGenerateBehaviorMock.Object);

            //Act
            var result = await jwtUtility.GetHealthAsync().ConfigureAwait(false);

            //Assert
            Assert.AreEqual(HealthStatus.Active, result.Status);
            Assert.AreEqual("JWT Generate/Validate", result.Description);
            Assert.AreEqual(2, result.Vitals.Count);
        }