public void EntityReferenceCanAppearAfterSingleton()
        {
            var path = PathFunctionalTestsUtil.RunParsePath("Boss/$ref");

            ReferenceSegment referenceSegment = path.LastSegment as ReferenceSegment;

            Assert.Same(referenceSegment.TargetEdmNavigationSource, HardCodedTestModel.GetBossSingleton());
            Assert.True(referenceSegment.SingleResult);
        }
Beispiel #2
0
        public void NavigationInSingletonShouldWork()
        {
            IList <ODataPathSegment> path = this.testSubject.ParsePath(new[] { "Boss", "MyDog" });

            path.Count.Should().Be(2);
            path[0].ShouldBeSingletonSegment(HardCodedTestModel.GetBossSingleton());
            path[1].ShouldBeNavigationPropertySegment(HardCodedTestModel.GetPersonMyDogNavProp()).
            And.NavigationSource.Should().BeSameAs(HardCodedTestModel.GetDogsSet());
        }
        public void ReferenceSegmentWithSingleValuedNavigationSourceConstructsSuccessfully()
        {
            ReferenceSegment referenceSegment = new ReferenceSegment(HardCodedTestModel.GetBossSingleton());

            referenceSegment.Identifier.Should().Be(UriQueryConstants.RefSegment);
            referenceSegment.SingleResult.Should().BeTrue();
            referenceSegment.TargetEdmNavigationSource.Should().Be(HardCodedTestModel.GetBossSingleton());
            referenceSegment.TargetKind.Should().Be(RequestTargetKind.Resource);
            referenceSegment.EdmType.Should().BeNull();
        }
        public void ReferenceSegmentWithSingleValuedNavigationSourceConstructsSuccessfully()
        {
            ReferenceSegment referenceSegment = new ReferenceSegment(HardCodedTestModel.GetBossSingleton());

            Assert.Equal(UriQueryConstants.RefSegment, referenceSegment.Identifier);
            Assert.True(referenceSegment.SingleResult);
            Assert.Same(HardCodedTestModel.GetBossSingleton(), referenceSegment.TargetEdmNavigationSource);
            Assert.Equal(RequestTargetKind.Resource, referenceSegment.TargetKind);
            Assert.Null(referenceSegment.EdmType);
        }
        public void NavigationInSingletonShouldWork()
        {
            IList <ODataPathSegment> path = this.testSubject.ParsePath(new[] { "Boss", "MyDog" });

            Assert.Equal(2, path.Count);
            path[0].ShouldBeSingletonSegment(HardCodedTestModel.GetBossSingleton());
            path[1].ShouldBeNavigationPropertySegment(HardCodedTestModel.GetPersonMyDogNavProp());
            var navigationSegment = Assert.IsType <NavigationPropertySegment>(path[1]);

            Assert.Same(HardCodedTestModel.GetDogsSet(), navigationSegment.NavigationSource);
        }
Beispiel #6
0
        public void SingletonShouldWork()
        {
            IList <ODataPathSegment> path = this.testSubject.ParsePath(new[] { "Boss" });

            path[0].ShouldBeSingletonSegment(HardCodedTestModel.GetBossSingleton());
        }
        public void CollectionNavigationNodeOnSingletonShouldWork()
        {
            var collectionCastNode = new CollectionNavigationNode(HardCodedTestModel.GetBossSingleton(), HardCodedTestModel.GetPersonMyPaintingsNavProp(), new EdmPathExpression("MyPaintings"));

            Assert.Same(collectionCastNode.NavigationSource, HardCodedTestModel.GetPaintingsSet());
        }
        public void CollectionNavigationNodeOnSingletonShouldWork()
        {
            var collectionCastNode = new CollectionNavigationNode(HardCodedTestModel.GetPersonMyPaintingsNavProp(), HardCodedTestModel.GetBossSingleton());

            collectionCastNode.NavigationSource.Should().Be(HardCodedTestModel.GetPaintingsSet());
        }