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 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 OneDeepMergeByRelationshipAct() { //setup var testPerson = SampleDataFactory.GetWellKnownPerson(7); var homeAddressRelationship = new HomeAddressRelationship("person", "homeAddress"); var workAddressRelationship = new WorkAddressRelationship("person", "workAddress"); // perhaps this would be modelled on the address node but serves to show how to attach relationship property homeAddressRelationship.DateEffective = DateTime.Parse("2011-01-10T08:00:00+10:00"); //act var q = GetFluentQuery() .MergeEntity(testPerson) .MergeEntity(testPerson.HomeAddress, MergeOptions.ViaRelationship(homeAddressRelationship)) .MergeEntity(testPerson.WorkAddress, MergeOptions.ViaRelationship(workAddressRelationship)); return q; }
public ICypherFluentQuery CreateComplexAct() { var agent = SampleDataFactory.GetWellKnownPerson(7); var homeRelationship = new HomeAddressRelationship("myHomeRelationshipIdentifier", "a", "ha"); homeRelationship.DateEffective = DateTimeOffset.Parse("2015-08-05 12:00+00:00"); var q = GetFluentQuery() .CreateEntity(agent, "a") .CreateEntity(agent.HomeAddress, "ha") .CreateEntity(agent.WorkAddress, "wa") .CreateRelationship(homeRelationship) .CreateRelationship(new WorkAddressRelationship("a", "wa")); return q; }