public void SetSortingTest() { void Test(IQueryable <AppointmentData> d, string sortOrder) { Obj.SortOrder = sortOrder + Obj.DescendingString; var set = Obj.AddSorting(d); Assert.IsNotNull(set); Assert.AreNotEqual(d, set); var str = set.Expression.ToString(); Assert.IsTrue(str .Contains($"Delux.Data.AppointmentData]).OrderByDescending(x => Convert(x.{sortOrder}, Object))")); Obj.SortOrder = sortOrder; set = Obj.AddSorting(d); Assert.IsNotNull(set); Assert.AreNotEqual(d, set); str = set.Expression.ToString(); Assert.IsTrue(str.Contains($"Delux.Data.AppointmentData]).OrderBy(x => Convert(x.{sortOrder}, Object))")); } Assert.IsNull(Obj.AddSorting(null)); IQueryable <AppointmentData> data = Obj.DbSet; Obj.SortOrder = null; Assert.AreEqual(data, Obj.AddSorting(data)); Test(data, GetMember.Name <AppointmentData>(x => x.Id)); }