internal static SelectedPropertiesNode IncludeEntireSubtree(this SelectedPropertiesNode node, IEdmEntityType entityType) { var expected = entityType.StructuralProperties().Where(p => p.Type.IsStream()); var edmStructuralProperties = node.GetSelectedStreamProperties(entityType).Values; Assert.Equal(expected.Count(), edmStructuralProperties.Count); foreach (var prop in edmStructuralProperties) { Assert.Contains(prop, expected); } var navExpected = entityType.NavigationProperties(); var edmNavProperties = node.GetSelectedNavigationProperties(entityType); Assert.Equal(navExpected.Count(), edmNavProperties.Count()); foreach (var prop in edmNavProperties) { Assert.Contains(prop, navExpected); } foreach (var navigation in entityType.NavigationProperties()) { node.GetSelectedPropertiesForNavigationProperty(entityType, navigation.Name).HaveEntireSubtree(); } return(node); }
internal static SelectedPropertiesNode NotHaveNavigations(this SelectedPropertiesNode node, IEdmEntityType entityType) { Assert.Empty(node.GetSelectedNavigationProperties(entityType)); foreach (var navigation in entityType.NavigationProperties()) { node.GetSelectedPropertiesForNavigationProperty(entityType, navigation.Name).BeSameAsEmpty(); } return(node); }
public void GetSelectedNavigationPropertiesShouldAlwaysReturnEmptyEnumerationWhenEntityTypeIsNull() { EntireSubtreeNode.GetSelectedNavigationProperties(null).Should().BeEmpty(); EmptyNode.GetSelectedNavigationProperties(null).Should().BeEmpty(); SelectedPropertiesNode.Create("bar").GetSelectedNavigationProperties(null).Should().BeEmpty(); }
internal static SelectedPropertiesNode HaveNavigations(this SelectedPropertiesNode node, IEdmEntityType entityType, params string[] navigationNames) { Assert.Equal(navigationNames, node.GetSelectedNavigationProperties(entityType).Select(p => p.Name)); return(node); }
public void GetSelectedNavigationPropertiesShouldAlwaysReturnEmptyEnumerationWhenEntityTypeIsNull() { Assert.Empty(EntireSubtreeNode.GetSelectedNavigationProperties(null)); Assert.Empty(EmptyNode.GetSelectedNavigationProperties(null)); Assert.Empty(SelectedPropertiesNode.Create("bar").GetSelectedNavigationProperties(null)); }