public void Should_throw_when_query_without_recursive_has_duplicate_aliases() { using (var store = GetDocumentStore()) { Samples.CreateDogDataWithCycle(store); using (var session = store.OpenSession()) { var e = Assert.Throws <InvalidQueryException>(() => session.Advanced.RawQuery <JObject>(@" match (Dogs as d2)-[Likes]->(Dogs as d2)-[Likes]->(d2)").ToArray()); Assert.False(e.Message.Contains("implicit", StringComparison.OrdinalIgnoreCase)); Assert.True(e.Message.Contains("duplicate", StringComparison.OrdinalIgnoreCase)); Assert.True(e.Message.Contains("alias", StringComparison.OrdinalIgnoreCase)); } } }
public void Should_throw_when_query_has_the_same_aliases_inside_and_outside_recursive() { using (var store = GetDocumentStore()) { Samples.CreateDogDataWithCycle(store); using (var session = store.OpenSession()) { var e = Assert.Throws <InvalidQueryException>(() => session.Advanced.RawQuery <JObject>(@" match (Dogs as d2)-recursive as r { [Likes as l] ->(Dogs as d2) } select d2.Name as dogName, r.l.Name as l, r.d2.Name as DogName2 ").ToArray()); Assert.False(e.Message.Contains("implicit", StringComparison.OrdinalIgnoreCase)); Assert.True(e.Message.Contains("duplicate", StringComparison.OrdinalIgnoreCase)); Assert.True(e.Message.Contains("alias", StringComparison.OrdinalIgnoreCase)); } } }