Exemple #1
0
        public void DoSearch_SelectedTabIndexIsSearchByUser_InvokesGetBySearchWithUserIdsParams()
        {
            // Arrange
            var forecastServiceMock = CreateMock <IForecastService>();
            var sut = new ForecastOverviewSearchOptions(forecastServiceMock.Object, CreateMock <ForecastOverviewUserSearchOptions>().Object)
            {
                SelectedTabIndex = ForecastOverviewViewSetup.SearchByUserTabIndex
            };

            // Act
            var result = sut.DoSearch(1, 2013);

            // Assert
            forecastServiceMock.Verify(x => x.GetBySearch(1, 2013, It.IsAny <IEnumerable <int> >()));
        }
Exemple #2
0
        public void DoSearch_SelectedTabIndexIsSearchByRegistration_InvokesGetBySearchWithRegistrationSpecificParams()
        {
            // Arrange
            var forecastServiceMock = CreateMock <IForecastService>();
            var sut = new ForecastOverviewSearchOptions(forecastServiceMock.Object, CreateMock <ForecastOverviewUserSearchOptions>().Object)
            {
                SelectedTabIndex = ForecastOverviewViewSetup.SearchByRegistrationTabIndex
            };

            // Act
            var result = sut.DoSearch(1, 2013);

            // Assert
            forecastServiceMock.Verify(x => x.GetBySearch(1, 2013, It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>()));
        }
Exemple #3
0
        public void TryAddMissingUsers_ServerReturnsNoResultsForAUser_MissingResponseUsersAreAdded()
        {
            // Arrange
            var forecastServiceMock   = CreateMock <IForecastService>();
            var userSearchOptionsMock = CreateMock <ForecastOverviewUserSearchOptions>();

            var response = new ForecastSearchResponse
            {
                ForecastMonths = new List <ForecastMonthDto>
                {
                    new ForecastMonthDto {
                        UserId = 2
                    },
                    new ForecastMonthDto {
                        UserId = 4
                    },                                           // Month with userid 3 is intentionally missing
                }
            };

            var sut = new ForecastOverviewSearchOptions(forecastServiceMock.Object, userSearchOptionsMock.Object)
            {
                SelectedUsers = new ObservableCollection <ForecastUserDto>
                {
                    new ForecastUserDto {
                        UserId = 2
                    },
                    new ForecastUserDto {
                        UserId = 3
                    },
                    new ForecastUserDto {
                        UserId = 4
                    },
                }
            };

            // Act
            sut.TryAddMissingUsers(1, 2013, response);

            // Assert
            Assert.That(response.ForecastMonths.FirstOrDefault(x => x.UserId == 3), Is.Not.Null);
        }
Exemple #4
0
        public void DoSearch_AllUsersMarkerSelected_InvokesGetBySearchWithAllUserIds()
        {
            // Arrange
            var forecastServiceMock = CreateMock <IForecastService>();

            var users = new[]
            {
                ForecastUserDto.AllUsersDto(),
                new ForecastUserDto {
                    UserId = 1
                },
                new ForecastUserDto {
                    UserId = 2
                },
            };

            var userSearchOptionsMock = CreateMock <ForecastOverviewUserSearchOptions>();

            userSearchOptionsMock.SetupGet(x => x.Users).Returns(new ObservableCollection <ForecastUserDto>(users));
            userSearchOptionsMock.SetupGet(x => x.SelectedUsers).Returns(new ObservableCollection <ForecastUserDto>(users.Where(x => x.IsAllUsers)));

            var sut = new ForecastOverviewSearchOptions(forecastServiceMock.Object, userSearchOptionsMock.Object)
            {
                SelectedTabIndex = ForecastOverviewViewSetup.SearchByUserTabIndex
            };

            // Act
            IEnumerable <int> invokedWithUserIds = new List <int>();

            forecastServiceMock
            .Setup(x => x.GetBySearch(1, 2013, It.IsAny <IEnumerable <int> >()))
            .Callback <int, int, IEnumerable <int> >((x, y, z) => invokedWithUserIds = z);

            sut.DoSearch(1, 2013);

            // Assert
            forecastServiceMock.Verify(x => x.GetBySearch(1, 2013, It.IsAny <IEnumerable <int> >()));
            Assert.That(invokedWithUserIds.Count(), Is.EqualTo(2));
            Assert.That(invokedWithUserIds.ElementAt(0), Is.EqualTo(1));
            Assert.That(invokedWithUserIds.ElementAt(1), Is.EqualTo(2));
        }