コード例 #1
0
        public void SortDescriptionIsReturnedForSelectedDocumentSortOption()
        {
            // Arrange

            var alphabeticalSort = new AlphabeticalSort();
            var builder          = new UserPreferencesBuilder();

            var preferences = builder.CreateUserPreferences();

            preferences.SelectedDocumentSortOption = alphabeticalSort;

            preferences.SelectedProjectSortOption = Mock.Of <ISortOption>(s =>
                                                                          s.HasSortDescription == false);

            var service = new SortOptionsService();

            // Act

            var appliedSortOptions = service.EvaluateAppliedSortDescriptions(
                preferences);

            // Assert

            // Returned collection should only contain sort option for
            // SelectedDocumentSortOption: the ISortOption of
            // SelectedProjectSortOption has its HasSortDescription property
            // set to return false

            Assert.That(appliedSortOptions.Length, Is.EqualTo(1));

            Assert.That(
                appliedSortOptions[0].Direction,
                Is.EqualTo(alphabeticalSort.SortDirection));

            Assert.That(
                appliedSortOptions[0].PropertyName,
                Is.EqualTo(alphabeticalSort.PropertyName));
        }
コード例 #2
0
        public void PathSegmentCountValueIsRestoredOnInstanceCreation()
        {
            // Arrange

            const int value = 47;

            var builder = new UserPreferencesBuilder();

            builder.StoredSettingsRepositoryMock
            .Setup(s => s.GetPathSegmentCount())
            .Returns(value);

            // Act

            var preferences = builder.CreateUserPreferences();

            // Assert

            builder.StoredSettingsRepositoryMock
            .Verify(s => s.GetPathSegmentCount());

            Assert.That(preferences.PathSegmentCount, Is.EqualTo(value));
        }
コード例 #3
0
        public void ShowFileTypeIconsValueIsRestoredOnInstanceCreation()
        {
            // Arrange

            const bool showFileTypeIcons = true;

            var builder = new UserPreferencesBuilder();

            builder.StoredSettingsRepositoryMock
            .Setup(s => s.GetShowFileTypeIcons())
            .Returns(showFileTypeIcons);

            // Act

            var preferences = builder.CreateUserPreferences();

            // Assert

            builder.StoredSettingsRepositoryMock
            .Verify(s => s.GetShowFileTypeIcons());

            Assert.That(preferences.ShowFileTypeIcons, Is.EqualTo(showFileTypeIcons));
        }
コード例 #4
0
        public void AssignProjectColoursValueIsRestoredOnInstanceCreation()
        {
            // Arrange

            const bool assignProjectColours = true;

            var builder = new UserPreferencesBuilder();

            builder.StoredSettingsRepositoryMock
            .Setup(s => s.GetAssignProjectColours())
            .Returns(assignProjectColours);

            // Act

            var preferences = builder.CreateUserPreferences();

            // Assert

            builder.StoredSettingsRepositoryMock
            .Verify(s => s.GetAssignProjectColours());

            Assert.That(preferences.AssignProjectColours, Is.EqualTo(assignProjectColours));
        }
コード例 #5
0
        public void GroupByProjectValueIsRestoredOnInstanceCreation()
        {
            // Arrange

            const bool groupByProject = true;

            var builder = new UserPreferencesBuilder();

            builder.StoredSettingsRepositoryMock
            .Setup(s => s.GetGroupByProject())
            .Returns(groupByProject);

            // Act

            var preferences = builder.CreateUserPreferences();

            // Assert

            builder.StoredSettingsRepositoryMock
            .Verify(s => s.GetGroupByProject());

            Assert.That(preferences.GroupByProject, Is.EqualTo(groupByProject));
        }
コード例 #6
0
        public void SettingProjectSortOptionNameSetsProjectSortOption()
        {
            // Arrange

            const string displayName = "DisplayName";

            var documentSort = new TestingSortOption(
                displayName,
                string.Empty,
                ListSortDirection.Ascending,
                ProjectItemType.Document);

            var projectSort = new TestingSortOption(
                displayName,
                string.Empty,
                ListSortDirection.Ascending,
                ProjectItemType.Project);

            var builder = new UserPreferencesBuilder
            {
                SortOptions = new ISortOption[]
                {
                    documentSort,
                    projectSort
                }
            };

            var preferences = builder.CreateUserPreferences();

            // Act

            preferences.ProjectSortOptionName = displayName;

            // Verify

            Assert.That(preferences.ProjectSortOption, Is.EqualTo(projectSort));
        }
コード例 #7
0
        public void SelectedProjectSortOptionIsRestoredOnInstanceCreation()
        {
            // Arrange

            const string displayName = "DisplayName";

            var builder = new UserPreferencesBuilder
            {
                SortOptions = new List <ISortOption>
                {
                    new TestingSortOption(
                        displayName,
                        null,
                        ListSortDirection.Ascending,
                        ProjectItemType.Project)
                }
            };

            var typeString = builder.SortOptions[0].ToString();

            builder.StoredSettingsRepositoryMock
            .Setup(s => s.GetSelectedProjectSortType())
            .Returns(typeString);

            // Act

            var preferences = builder.CreateUserPreferences();

            // Assert

            builder.StoredSettingsRepositoryMock
            .Verify(s => s.GetSelectedProjectSortType());

            Assert.That(
                preferences.SelectedProjectSortOption.DisplayName,
                Is.EqualTo(displayName));
        }
        public void UsageOrderIs1WhenShowRecentUsageIsFalse()
        {
            // Arrange

            var utcNow = DateTime.UtcNow;

            var first  = CreateDocumentMetadata(utcNow);
            var second = CreateDocumentMetadata(utcNow - TimeSpan.FromSeconds(1));
            var third  = CreateDocumentMetadata(utcNow - TimeSpan.FromSeconds(2));

            var metadata = new[]
            {
                second,
                first,
                third
            };

            var service = new NormalizedUsageOrderService();

            var builder     = new UserPreferencesBuilder();
            var preferences = builder.CreateUserPreferences();

            preferences.ShowRecentUsage = false;

            // Act

            service.SetUsageOrder(metadata, preferences);

            // Assert

            const double desiredValue = 1;

            Assert.That(first.UsageOrder, Is.EqualTo(desiredValue));
            Assert.That(second.UsageOrder, Is.EqualTo(desiredValue));
            Assert.That(third.UsageOrder, Is.EqualTo(desiredValue));
        }