Beispiel #1
0
        public async Task GetFranchiseUsersWithSuccessfulResponseAndData()
        {
            // ARRANGE
            var loggerMock       = new Mock <ILogger <FranchiseUserService> >();
            var tokenServiceMock = new Mock <ITokenService>();
            var userServiceMock  = new Mock <IUserService>();
            var unitUnderTest    = new FranchiseUserService(loggerMock.Object, tokenServiceMock.Object, userServiceMock.Object);
            var groupId          = "GROUP";
            var syncDuration     = 2;

            var token = "TOKEN";

            tokenServiceMock.Setup(mock => mock.RetrieveToken(TokenEnum.Franchise))
            .ReturnsAsync(() => token).Verifiable();
            userServiceMock.Setup(mock => mock.GetUsers(groupId, token, syncDuration))
            .ReturnsAsync(() => new List <AzureActiveDirectoryUser> {
                new AzureActiveDirectoryUser()
            }).Verifiable();

            // ACT
            var results = await unitUnderTest.GetFranchiseUsers(groupId, syncDuration);

            // ASSERT
            tokenServiceMock.Verify();
            userServiceMock.Verify();
            //loggerMock.Verify(mock => mock.Log(
            //        LogLevel.Information,
            //        It.IsAny<EventId>(),
            //        It.Is<FormattedLogValues>(v => v.ToString().Contains("1 Franchise users were retrieved")),
            //        It.IsAny<Exception>(),
            //        It.IsAny<Func<object, Exception, string>>()),
            //    Times.Once);
            Assert.IsNotNull(results);
        }
Beispiel #2
0
        public async Task GetFranchiseUsersWithException()
        {
            // ARRANGE
            var loggerMock       = new Mock <ILogger <FranchiseUserService> >();
            var tokenServiceMock = new Mock <ITokenService>();
            var userServiceMock  = new Mock <IUserService>();
            var unitUnderTest    = new FranchiseUserService(loggerMock.Object, tokenServiceMock.Object, userServiceMock.Object);
            var groupId          = "GROUP";
            var syncDuration     = 2;

            tokenServiceMock.Setup(mock => mock.RetrieveToken(TokenEnum.Franchise)).Throws(new Exception("TEST EXCEPTION")).Verifiable();

            // ACT
            var results = await unitUnderTest.GetFranchiseUsers(groupId, syncDuration);

            // ASSERT
            tokenServiceMock.Verify();
            //loggerMock.Verify(mock => mock.Log(
            //        LogLevel.Error,
            //        It.IsAny<EventId>(),
            //        It.Is<FormattedLogValues>(v => v.ToString().StartsWith("Error occurred while trying to get token and users for groupId:")),
            //        It.IsAny<Exception>(),
            //        It.IsAny<Func<object, Exception, string>>()),
            //    Times.Once);
            Assert.IsNull(results);
        }
Beispiel #3
0
        public async Task GetFranchiseUsersWithSuccessfulResponseAndNoData()
        {
            // ARRANGE
            var loggerMock       = new Mock <ILogger <FranchiseUserService> >();
            var tokenServiceMock = new Mock <ITokenService>();
            var userServiceMock  = new Mock <IUserService>();
            var unitUnderTest    = new FranchiseUserService(loggerMock.Object, tokenServiceMock.Object, userServiceMock.Object);
            var groupId          = "GROUP";
            var syncDuration     = 2;

            var token = "TOKEN";

            tokenServiceMock.Setup(mock => mock.RetrieveToken(TokenEnum.Franchise))
            .ReturnsAsync(() => token).Verifiable();
            userServiceMock.Setup(mock => mock.GetUsers(groupId, token, syncDuration))
            .ReturnsAsync(() => new List <AzureActiveDirectoryUser>()).Verifiable();

            // ACT
            var results = await unitUnderTest.GetFranchiseUsers(groupId, syncDuration);

            // ASSERT
            tokenServiceMock.Verify();
            userServiceMock.Verify();
            Assert.IsNotNull(results);
        }