示例#1
0
        public void TestThrows()
        {
            var comparer        = new DirectoryViewModelsComparer(false, (SortingMode)42);
            var firstViewModel  = _autoMocker.CreateInstance <DirectoryViewModel>();
            var secondViewModel = _autoMocker.CreateInstance <DirectoryViewModel>();

            void Compare() => comparer.Compare(firstViewModel, secondViewModel);

            Assert.Throws <ArgumentOutOfRangeException>(Compare);
        }
示例#2
0
        public void TestSortingParentDirectory(bool isAscending, SortingMode sortingColumn)
        {
            var parentDirectoryViewModel = _autoMocker.CreateInstance <DirectoryViewModel>();

            parentDirectoryViewModel.IsParentDirectory = true;
            var directoryViewModel = _autoMocker.CreateInstance <DirectoryViewModel>();

            var comparer = new DirectoryViewModelsComparer(isAscending, sortingColumn);

            var result = comparer.Compare(parentDirectoryViewModel, directoryViewModel);

            Assert.True(result < 0);

            result = comparer.Compare(directoryViewModel, parentDirectoryViewModel);
            Assert.True(result > 0);
        }
示例#3
0
        public void TestSorting(bool isAscending, SortingMode sortingColumn, bool expected)
        {
            var dateTime = DateTime.UtcNow;

            var firstViewModel = _autoMocker.CreateInstance <DirectoryViewModel>();

            firstViewModel.Name = "Camelot";
            firstViewModel.LastModifiedDateTime = dateTime;

            var secondViewModel = _autoMocker.CreateInstance <DirectoryViewModel>();

            secondViewModel.Name = "Code";
            secondViewModel.LastModifiedDateTime = dateTime.AddDays(1);

            var comparer = new DirectoryViewModelsComparer(isAscending, sortingColumn);

            var result = comparer.Compare(firstViewModel, secondViewModel);

            Assert.Equal(expected, result > 0);

            result = comparer.Compare(secondViewModel, firstViewModel);
            Assert.Equal(expected, result < 0);
        }
示例#4
0
 public FileSystemNodesComparer(bool isAscending, SortingMode sortingColumn)
 {
     _directoriesComparer = new DirectoryViewModelsComparer(isAscending, sortingColumn);
     _filesComparer       = new FileViewModelsComparer(isAscending, sortingColumn);
 }