public async Task SyncPermissions_ProcessesMultipleUserEdwAdminCorrectlyAsync(IEnumerable <User> user, int numberAdded, int numberRemoved)
        {
            // Arrange
            var mockEdwStore = new Mock <IEDWStore>();
            var service      = new EDWAdminRoleSyncService(mockEdwStore.Object);

            // Act
            await service.RefreshDosAdminRolesAsync(user);

            // Assert
            mockEdwStore.Verify(mock => mock.AddIdentitiesToRole(It.IsAny <string[]>(), It.IsAny <string>()), Times.Exactly(numberAdded));
            mockEdwStore.Verify(mock => mock.RemoveIdentitiesFromRole(It.IsAny <string[]>(), It.IsAny <string>()), Times.Exactly(numberRemoved));
        }
        public async Task SyncPermissions_NullUserArrayDoesNotThrowsExceptionAsync()
        {
            // Arrange
            IEnumerable <User> user = null;
            var mockEdwStore        = new Mock <IEDWStore>();
            var service             = new EDWAdminRoleSyncService(mockEdwStore.Object);

            // Act
            Exception result = null;

            try
            {
                await service.RefreshDosAdminRolesAsync(user);
            }
            catch (Exception exc)
            {
                result = exc;
            }

            // Assert
            Assert.Null(result);
        }