public void MatchRelationshipWithProperty() { var addressRelationship = new HomeAddressRelationship(DateTimeOffset.Parse("2015-08-05 12:00"), "agent", "homeAddress"); var q = GetFluentQuery() .MatchRelationship(addressRelationship); var text = q.GetFormattedDebugText(); Console.WriteLine(text); Assert.AreEqual(@"MATCH (agent)-[agenthomeAddress:HOME_ADDRESS {DateEffective:$agenthomeAddressMatchKey.DateEffective}]->(homeAddress)", text); }
public void CreateRelationshipWithNoIdentifier() { var homeRelationship = new HomeAddressRelationship(string.Empty, "a", "ha"); var q = GetFluentQuery() .CreateRelationship(homeRelationship); var text = q.GetFormattedDebugText(); Console.WriteLine(text); Assert.AreEqual("CREATE (a)-[:HOME_ADDRESS]->(ha)", text); }
public ICypherFluentQuery CreateComplexAct() { var agent = SampleDataFactory.GetWellKnownPerson(7); var homeRelationship = new HomeAddressRelationship(DateTimeOffset.Parse("2015-08-05 12:00+00:00"), "a", "ha"); var q = GetFluentQuery() .CreateEntity(agent, "a") .CreateEntity(agent.HomeAddress, "ha") .CreateEntity(agent.WorkAddress, "wa") .CreateRelationship(homeRelationship) .CreateRelationship(new WorkAddressRelationship("a", "wa")); return(q); }
public void OptionalMatchRelationship() { var person = SampleDataFactory.GetWellKnownPerson(7); var homeAddressRelationship = new HomeAddressRelationship(); var q = GetFluentQuery() .MatchEntity(person) .OptionalMatchRelationship(homeAddressRelationship, MatchRelationshipOptions.Create().WithNoProperties()); var text = q.GetFormattedDebugText(); Console.WriteLine(text); Assert.AreEqual(@"MATCH (person:SecretAgent {Id:{ Id: 7 }.Id}) OPTIONAL MATCH (person)-[personaddress:HOME_ADDRESS]->(address)", text); }
public ICypherFluentQuery TwoDeepAct() { //setup var testPerson = SampleDataFactory.GetWellKnownPerson(7); var homeAddressRelationship = new HomeAddressRelationship(); // perhaps this would be modelled on the address node but serves to show how to attach relationship property homeAddressRelationship.DateEffective = DateTimeOffset.Parse("2011-01-10T08:00:00+03:00"); //act var q = GetFluentQuery() .MergeEntity(testPerson) .MergeEntity(testPerson.HomeAddress, MergeOptions.ViaRelationship(homeAddressRelationship)) .MergeRelationship(homeAddressRelationship); return(q); }