public void CreateFirstSegmentForEntitySetDisableCaseInsensitiveThrows() { IList <PathSegment> path = new List <PathSegment>(); Action test = () => PathParser.CreateFirstSegment("UsErs", _edmModel, path, new PathParserSettings { EnableCaseInsensitive = false }); var exception = Assert.Throws <Exception>(test); Assert.Equal($"Unknown kind of first segment: 'UsErs'", exception.Message); }
public void CreateFirstSegmentForSingletonWithParenthesisThrows() { IList <PathSegment> path = new List <PathSegment>(); Action test = () => PathParser.CreateFirstSegment("me({id})", _edmModel, path, new PathParserSettings { EnableCaseInsensitive = false }); var exception = Assert.Throws <Exception>(test); Assert.Equal("Unknown parenthesis '({id})' after a singleton 'me'.", exception.Message); }
public void CreateFirstSegmentForSingletonWorks(string identifier, bool enableCaseInsensitive) { IList <PathSegment> path = new List <PathSegment>(); PathParser.CreateFirstSegment(identifier, _edmModel, path, new PathParserSettings { EnableCaseInsensitive = enableCaseInsensitive }); Assert.NotEmpty(path); var pathSegment = Assert.Single(path); var singletonSegment = Assert.IsType <SingletonSegment>(pathSegment); Assert.Same(singletonSegment.Singleton, _me); }
public void CreateFirstSegmentForEntitySetWithKeyWorks() { IList <PathSegment> path = new List <PathSegment>(); PathParser.CreateFirstSegment("users({id | userPrincipalName})", _edmModel, path, PathParserSettings.Default); Assert.NotEmpty(path); Assert.Equal(2, path.Count); var entitySetSegment = Assert.IsType <EntitySetSegment>(path[0]); Assert.Same(entitySetSegment.EntitySet, _users); var keySegment = Assert.IsType <KeySegment>(path[1]); Assert.Equal("{id | userPrincipalName}", keySegment.Identifier); var value = Assert.Single(keySegment.Values); Assert.Equal(String.Empty, value.Key); Assert.Equal("{id | userPrincipalName}", value.Value); }
public void CreateNextSegmentForEntitySetWithKeyWorks() { IList <PathSegment> path = new List <PathSegment>(); PathParser.CreateFirstSegment("users", _edmModel, path, PathParserSettings.Default); Assert.NotEmpty(path); var pathSegment = Assert.Single(path); var entitySetSegment = Assert.IsType <EntitySetSegment>(pathSegment); Assert.Same(entitySetSegment.EntitySet, _users); PathParser.CreateNextSegment("{id | userPrincipalName}", _edmModel, path, PathParserSettings.Default); Assert.Equal(2, path.Count); var keySegment = Assert.IsType <KeySegment>(path[1]); }