public void Bottom_keyselector01()
 {
     Assert.True(new[] { 25, 20, 15, 10, 5, 0 }.Select(x => new ComparableClass2 {
         Value = x
     })
                 .Bottom(3, x => x.Value)
                 .OrderBy(x => x.Value)
                 .SequenceEqual(new[] { 0, 5, 10 }.Select(x => new ComparableClass2 {
         Value = x
     }),
                                GenericEqualityComparer <ComparableClass2> .By(x => x.Value)));
 }
 public void Top_keyselector01()
 {
     Assert.True(new[] { 0, 5, 10, 15, 20, 25 }.Select(x => new ComparableClass2 {
         Value = x
     })
                 .Top(3, x => x.Value)
                 .OrderByDescending(x => x.Value)
                 .SequenceEqual(new[] { 25, 20, 15 }.Select(x => new ComparableClass2 {
         Value = x
     }),
                                GenericEqualityComparer <ComparableClass2> .By(x => x.Value)));
 }
        public void In_comparer01()
        {
            var value = new ComparableClass2()
            {
                Value = 1
            };
            var source = new[] { 1, 2, 3 }.Select(x => new ComparableClass2()
            {
                Value = x
            });

            Assert.IsTrue(value.In(source, GenericEqualityComparer <ComparableClass2> .By(x => x.Value)));
        }
        public void Bottom_comparer01()
        {
            var comparer = new ComparableClass2Comparer();

            Assert.True(new[] { 25, 20, 15, 10, 5, 0 }.Select(x => new ComparableClass2 {
                Value = x
            })
                        .Bottom(3, comparer)
                        .OrderBy(x => x, comparer)
                        .SequenceEqual(new[] { 0, 5, 10 }.Select(x => new ComparableClass2 {
                Value = x
            }),
                                       GenericEqualityComparer <ComparableClass2> .By(x => x)));
        }
 public void Top_keyselector02()
 {
     Assert.True(new[] { 25, 20, 15, 10, 5, 0 }.Select(x => new SampleClass {
         ComparableClass2 = new ComparableClass2 {
             Value = x
         }
     })
                 .Top(3, x => x.ComparableClass2)
                 .OrderByDescending(x => x.ComparableClass2)
                 .SequenceEqual(new[] { 25, 20, 15 }.Select(x => new SampleClass {
         ComparableClass2 = new ComparableClass2 {
             Value = x
         }
     }),
                                GenericEqualityComparer <SampleClass> .By(x => x.ComparableClass2)));
 }
        public void Bottom_keyselector_comparer01()
        {
            var comparer = new ComparableClass2Comparer();

            Assert.True(new[] { 25, 20, 15, 10, 5, 0 }.Select(x => new SampleClass {
                ComparableClass2 = new ComparableClass2 {
                    Value = x
                }
            })
                        .Bottom(3, x => x.ComparableClass2, comparer)
                        .OrderBy(x => x.ComparableClass2, comparer)
                        .SequenceEqual(new[] { 0, 5, 10 }.Select(x => new SampleClass {
                ComparableClass2 = new ComparableClass2 {
                    Value = x
                }
            }),
                                       GenericEqualityComparer <SampleClass> .By(x => x.ComparableClass2)));
        }