Пример #1
0
        public void MaxBy()
        {
            var data = new[] { "A", "B", "C", "DZ" };
            Assert.Throws<NullReferenceException>   (() => ((IEnumerable<string>)null).MaxBy(x => x.Length));
            Assert.Throws<NullReferenceException>   (() => data.MaxBy<string, int>(null));
            Assert.Throws<InvalidOperationException>(() => new string[0].MaxBy(x => x.Length));

            Assert.Equal("DZ", data.MaxBy(x => x.Length));
            Assert.Equal("A",  data.Take(3).MaxBy(x => x.Length));
        }
Пример #2
0
        static void Main(string[] args)
        {
            var numbers = new[] { 2, 1, 5, 6, 9, 3, 7, 8, 4 };
              var evenNumbersAbove3EnumerateAtOnce = numbers.Dump(true, "numbers")
            .Where(x => x % 2 == 0).Dump(true, "Even")
            .Where(x => x > 3).Dump(true, "gt3")
            .Distinct().Dump(true, "Distinct")
            .OrderBy(x => x).Dump(true, "Ordered");

              Debug.WriteLine("------------------------------");

              var evenNumbersAbove3LazyEval = numbers.Dump(false, "numbers")
            .Where(x => x % 2 == 0).Dump(false, "Even")
            .Where(x => x > 3).Dump(false, "gt3")
            .Distinct().Dump(false, "Distinct")
            .OrderBy(x => x).Dump(false, "Ordered").ToList();

              Console.WriteLine("3 in numbers: " + 3.In(numbers));
              Console.WriteLine("10 in numbers: " + 10.In(numbers));

              Console.WriteLine("MaxBy:"+numbers.MaxBy(x => x));
              Console.WriteLine("MinBy:" + numbers.MinBy(x => x));

              Console.ReadKey();
        }
            public void Must_get_correct_item()
            {
                IEnumerable<string> items = new[]
                {
                    "Test",
                    "By",
                    "Length"
                };

                Assert.That(items.MaxBy(arg => arg.Length), Is.EqualTo("Length"));
            }
            public void Must_retrieve_correct_object()
            {
                var systemUnderTest = new[]
                {
                    "Test",
                    "Test1",
                    "Test2",
                    "Test10",
                    "Six",
                    "Four"
                };

                Assert.That(systemUnderTest.MaxBy(arg => arg.Length), Is.EqualTo("Test10"));
            }