public void ShouldBuildQueriesAsImmutableStepsInsteadOfCorruptingPreviousOnes() { var client = Substitute.For <IRawGraphClient>(); var query = new CypherFluentQuery(client) .Match("n") .Return <object>("n"); var query1 = query.Query; query = query.OrderBy("n.Foo"); var query2 = query.Query; Assert.Equal("MATCH n" + Environment.NewLine + "RETURN n", query1.QueryText); Assert.Equal("MATCH n" + Environment.NewLine + "RETURN n" + Environment.NewLine + "ORDER BY n.Foo", query2.QueryText); }
public void ShouldBuildQueriesAsImmutableStepsInsteadOfCorruptingPreviousOnes() { var client = Substitute.For<IRawGraphClient>(); var query = new CypherFluentQuery(client) .Start("n", (NodeReference)1) .Return<object>("n"); var query1 = query.Query; query = query.OrderBy("n.Foo"); var query2 = query.Query; Assert.AreEqual("START n=node({p0})\r\nRETURN n", query1.QueryText); Assert.AreEqual(1, query1.QueryParameters["p0"]); Assert.AreEqual("START n=node({p0})\r\nRETURN n\r\nORDER BY n.Foo", query2.QueryText); Assert.AreEqual(1, query2.QueryParameters["p0"]); }
public void ShouldBuildQueriesAsImmutableStepsInsteadOfCorruptingPreviousOnes() { var client = Substitute.For <IRawGraphClient>(); var query = new CypherFluentQuery(client) .Start("n", (NodeReference)1) .Return <object>("n"); var query1 = query.Query; query = query.OrderBy("n.Foo"); var query2 = query.Query; Assert.AreEqual("START n=node({p0})\r\nRETURN n", query1.QueryText); Assert.AreEqual(1, query1.QueryParameters["p0"]); Assert.AreEqual("START n=node({p0})\r\nRETURN n\r\nORDER BY n.Foo", query2.QueryText); Assert.AreEqual(1, query2.QueryParameters["p0"]); }