public void BottomNEnumerable2(int[] data, int n)
        {
            IComparer <int>   comparer = new ReversedComparer <int>();
            IEnumerable <int> expected = data.OrderByDescending(i => i, comparer).Take(n);
            IEnumerable <int> actual   = data.Bottom(n, comparer);

            CheckStruct(expected, actual);
        }
        public void TopNEnumerable2(int[] data, int n)
        {
            IComparer <int>   comparer = new ReversedComparer <int>();
            IEnumerable <int> expected = data.OrderBy(i => i, comparer).Take(n);
            IEnumerable <int> actual   = data.Top(n, comparer);

            CheckStruct(expected, actual);
        }
示例#3
0
        public void Clients_DoNotHaveToCareAboutNulls()
        {
            var notNull   = new ComparisonSubject("a", 1, 1m);
            var chainable = new ReversedComparer <ComparisonSubject>(new Property2Comparer());

            Assert.That(chainable.Compare(notNull, null), Is.GreaterThan(0));
            Assert.That(chainable.Compare(null, notNull), Is.LessThan(0));
            Assert.That(chainable.Compare(null, null), Is.EqualTo(0));
        }
示例#4
0
        public void Compare_ComparedTheSelectedProperty_HonoringDirection()
        {
            var subject = new ReversedComparer <ComparisonSubject>(
                _toBeReversed, Direction.Ascending);

            Assert.That(subject.Compare(ComparisonSubject.One, ComparisonSubject.Two), Is.GreaterThan(0));

            subject = new ReversedComparer <ComparisonSubject>(_toBeReversed, Direction.Descending);
            Assert.That(subject.Compare(ComparisonSubject.One, ComparisonSubject.Two), Is.LessThan(0));
        }
        public void BottomNEnumerable4(String[] data, int n)
        {
            IComparer <String>   comparer = new ReversedComparer <String>();
            IEnumerable <String> expected = data.OrderByDescending(i => i, comparer).Take(n);
            IEnumerable <String> actual   = data.Bottom(n, comparer);

            TestTools.PrintOrderingComparisonEnumerable(data);

            Check(expected, actual);
        }
        public void TopNDistinctEnumerable4(String[] data, int n)
        {
            IComparer <String>   comparer = new ReversedComparer <String>();
            IEnumerable <String> expected = data.OrderBy(i => i, comparer).Distinct().Take(n);
            IEnumerable <String> actual   = data.TopDistinct(n, comparer);

            TestTools.PrintOrderingComparisonEnumerable(data);

            Check(expected, actual);
        }
示例#7
0
        public void Explore()
        {
            string a = "a", b = "b";

            IComparer <string> normalComparison = StringComparer.OrdinalIgnoreCase;

            Assert.That(a, Is.LessThan(b).Using(normalComparison));

            IComparer <string> reversedComparer = new ReversedComparer <string>(normalComparison);

            Assert.That(a, Is.GreaterThan(b).Using(reversedComparer));
        }
示例#8
0
        public void Ctor_SetsDirection()
        {
            var subject = new ReversedComparer <ComparisonSubject>(_toBeReversed, Direction.Descending);

            Assert.That(subject.SortDirection, Is.EqualTo(Direction.Descending));
        }
示例#9
0
        public void Ctor_DefaultsToAscending()
        {
            var subject = new ReversedComparer <ComparisonSubject>(_toBeReversed);

            Assert.That(subject.SortDirection, Is.EqualTo(Direction.Ascending));
        }