BrightstarDB.Tests.EntityFramework.LinqTests.TestLinqOrderByDate C# (CSharp) Метод

TestLinqOrderByDate() приватный Метод

private TestLinqOrderByDate ( ) : void
Результат void
        public void TestLinqOrderByDate()
        {
            var connectionString = GetConnectionString("TestLinqOrderByDate");
            var context = new MyEntityContext(connectionString);
            
            var pe = context.Persons.Create();
            pe.Name = "Eddie";
            pe.DateOfBirth = new DateTime(1969, 8, 8, 4, 5, 30);

            var pb = context.Persons.Create();
            pb.Name = "Bill";
            pb.DateOfBirth = new DateTime(1900, 1, 12);
            
            var pf = context.Persons.Create();
            pf.Name = "Freddie";
            pf.DateOfBirth = new DateTime(1969, 8, 8, 4, 6, 30);

            var pd = context.Persons.Create();
            pd.Name = "Dennis";
            pd.DateOfBirth = new DateTime(1962, 4, 20);

            var pc = context.Persons.Create();
            pc.Name = "Carole";
            pc.DateOfBirth = new DateTime(1962, 3, 11);
            
            var pa = context.Persons.Create();
            pa.Name = "Annie";
            pa.DateOfBirth = new DateTime(1950, 2, 2);

            context.SaveChanges();
            Assert.AreEqual(6, context.Persons.Count());

            var orderedByDob = context.Persons.OrderBy(p => p.DateOfBirth);
            Assert.IsNotNull(orderedByDob);
            Assert.AreEqual(6, orderedByDob.Count());
            var i = 0;
            foreach (var p in orderedByDob)
            {
                Assert.IsNotNull(p.Name);
                Assert.IsNotNull(p.DateOfBirth);
                switch (i)
                {
                    case 0:
                        Assert.AreEqual("Bill", p.Name);
                        break;
                    case 1:
                        Assert.AreEqual("Annie", p.Name);
                        break;
                    case 2:
                        Assert.AreEqual("Carole", p.Name);
                        break;
                    case 3:
                        Assert.AreEqual("Dennis", p.Name);
                        break;
                    case 4:
                        Assert.AreEqual("Eddie", p.Name);
                        break;
                    case 5:
                        Assert.AreEqual("Freddie", p.Name);
                        break;
                }
                i++;
            }

            var orderedByDobDesc = context.Persons.OrderByDescending(p => p.DateOfBirth);
            Assert.IsNotNull(orderedByDobDesc);
            Assert.AreEqual(6, orderedByDobDesc.Count());
            var j = 0;
            foreach (var p in orderedByDobDesc)
            {
                Assert.IsNotNull(p.Name);
                Assert.IsNotNull(p.DateOfBirth);
                switch (j)
                {
                    case 5:
                        Assert.AreEqual("Bill", p.Name);
                        break;
                    case 4:
                        Assert.AreEqual("Annie", p.Name);
                        break;
                    case 3:
                        Assert.AreEqual("Carole", p.Name);
                        break;
                    case 2:
                        Assert.AreEqual("Dennis", p.Name);
                        break;
                    case 1:
                        Assert.AreEqual("Eddie", p.Name);
                        break;
                    case 0:
                        Assert.AreEqual("Freddie", p.Name);
                        break;
                }
                j++;
            }
        }