public void retrieves_query_plan_with_where_and_all_options_enabled() { var user1 = new SimpleUser { UserName = "******", Number = 5, Birthdate = new DateTime(1986, 10, 4), Address = new SimpleAddress { HouseNumber = "12bis", Street = "rue de la martre" } }; var user2 = new SimpleUser { UserName = "******", Number = 6, Birthdate = new DateTime(1987, 10, 4), Address = new SimpleAddress { HouseNumber = "12bis", Street = "rue de la martre" } }; theSession.Store(user1, user2); theSession.SaveChanges(); var plan = theSession.Query <SimpleUser>().Where(u => u.Number > 5) .OrderBy(x => x.Number) .Explain(c => { c .Analyze() .Buffers() .Costs() .Timing() .Verbose(); }); SpecificationExtensions.ShouldNotBeNull(plan); SpecificationExtensions.ShouldBeGreaterThan(plan.ActualTotalTime, 0m); SpecificationExtensions.ShouldBeGreaterThan(plan.PlanningTime, 0m); SpecificationExtensions.ShouldBeGreaterThan(plan.ExecutionTime, 0m); plan.SortKey.ShouldContain("(((d.data ->> 'Number'::text))::integer)"); plan.Plans.ShouldNotBeEmpty(); }