public void CollectionNavigationNodeConstructorRequiresManyMultiplicity() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); Action create = () => new CollectionNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); create.Throws <ArgumentException>(ODataErrorStrings.Nodes_CollectionNavigationNode_MustHaveManyMultiplicity); }
public void EntitySetShouldBeSet() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForDog(); var node = new CollectionNavigationNode(source, HardCodedTestModel.GetDogMyPeopleNavProp(), new EdmPathExpression("MyPeople")); Assert.Same(node.NavigationSource, HardCodedTestModel.GetPeopleSet()); }
public void CollectionNavigationNodeHandlesNullEntitySetOnParentNode() { var source = new FakeSingleEntityNode(HardCodedTestModel.GetDogTypeReference(), null); var collectionCastNode = new CollectionNavigationNode(source, HardCodedTestModel.GetDogMyPeopleNavProp(), new EdmPathExpression("MyPeople")); Assert.Null(collectionCastNode.NavigationSource); }
public void KindIsEntitySet() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); Assert.Equal(InternalQueryNodeKind.SingleNavigationNode, node.InternalKind); }
public void CollectionTypeShouldBeExactlyFromPropertyType() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForDog(); var node = new CollectionNavigationNode(source, HardCodedTestModel.GetDogMyPeopleNavProp(), new EdmPathExpression("MyPeople")); Assert.Same(node.CollectionType, HardCodedTestModel.GetDogMyPeopleNavProp().Type.AsCollection()); }
public void EntitySetIsCalculatedCorrectly() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); Assert.Same(node.NavigationSource, HardCodedTestModel.GetDogsSet()); }
public void SingleNavigationNodeHandlesNullEntitySetOnParentNode() { var source = new FakeSingleEntityNode(HardCodedTestModel.GetPersonTypeReference(), null); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); Assert.Null(node.NavigationSource); }
public void EntityTypeIsSameAsType() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); Assert.Same(node.EntityTypeReference, node.TypeReference); }
public void TypeReferenceIsExactlyFromProperty() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); node.TypeReference.Should().BeSameAs(HardCodedTestModel.GetPersonMyDogNavProp().Type); }
public void SourceIsSet() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForPerson(); var node = new SingleNavigationNode(source, HardCodedTestModel.GetPersonMyDogNavProp(), new EdmPathExpression("MyDog")); node.Source.Should().BeSameAs(source); }
public void EntityItemTypeShouldBeSameAsItemType() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForDog(); var node = new CollectionNavigationNode(source, HardCodedTestModel.GetDogMyPeopleNavProp(), new EdmPathExpression("MyPeople")); node.EntityItemType.Should().BeSameAs(node.ItemType); }
public void ItemTypeShouldBeExactlyFromPropertyType() { var source = FakeSingleEntityNode.CreateFakeSingleEntityNodeForDog(); var node = new CollectionNavigationNode(source, HardCodedTestModel.GetDogMyPeopleNavProp(), new EdmPathExpression("MyPeople")); node.ItemType.Should().BeSameAs(HardCodedTestModel.GetDogMyPeopleNavProp().Type.AsCollection().CollectionDefinition().ElementType); }