コード例 #1
0
        public void TryTranslateDynamicSegmentTemplate_ThrowsArgumentNull_Context()
        {
            // Arrange
            DynamicPathSegment     segment        = new DynamicPathSegment("dynamic");
            DynamicSegmentTemplate dynamicSegment = new DynamicSegmentTemplate(segment);

            // Act & Assert
            ExceptionAssert.ThrowsArgumentNull(() => dynamicSegment.TryTranslate(null), "context");
        }
コード例 #2
0
        public void CtorDynamicSegmentTemplate_SetsProperties()
        {
            // Arrange & Act
            DynamicPathSegment     segment        = new DynamicPathSegment("dynamic");
            DynamicSegmentTemplate dynamicSegment = new DynamicSegmentTemplate(segment);

            // Assert
            Assert.Same(segment, dynamicSegment.Segment);
        }
コード例 #3
0
        public void GetTemplatesDynamicSegmentTemplate_ReturnsTemplates()
        {
            // Arrange
            DynamicPathSegment     segment        = new DynamicPathSegment("dynamic");
            DynamicSegmentTemplate dynamicSegment = new DynamicSegmentTemplate(segment);

            // Act & Assert
            IEnumerable <string> templates = dynamicSegment.GetTemplates();
            string template = Assert.Single(templates);

            Assert.Equal("/dynamic", template);
        }
コード例 #4
0
        public void TryMatch_ConditionalWhenPropertyName(bool isSamePropertyName, string propertName)
        {
            // Arrange
            DynamicSegmentTemplate template = new DynamicSegmentTemplate(new DynamicPathSegment("matchingproperty"));
            DynamicPathSegment     segment  = new DynamicPathSegment(propertName);

            // Act
            Dictionary <string, object> values = new Dictionary <string, object>();
            bool result = template.TryMatch(segment, values);

            // Assert
            Assert.Equal(isSamePropertyName, result);
            Assert.False(values.ContainsKey("matchingproperty"));
        }
コード例 #5
0
        public void TryMatch_AlwaysTrueWhenParameterName()
        {
            // Arrange
            DynamicSegmentTemplate template = new DynamicSegmentTemplate(new DynamicPathSegment("{parameter}"));
            DynamicPathSegment     segment  = new DynamicPathSegment("property");

            // Act
            Dictionary <string, object> values = new Dictionary <string, object>();
            bool result = template.TryMatch(segment, values);

            // Assert
            Assert.True(result);
            Assert.True(values.ContainsKey("parameter"));
            Assert.Equal("property", values["parameter"]);
        }
コード例 #6
0
        public void TryTranslateDynamicSegmentTemplate_ReturnsODataCountSegment()
        {
            // Arrange
            ODataTemplateTranslateContext context        = new ODataTemplateTranslateContext();
            DynamicPathSegment            segment        = new DynamicPathSegment("dynamic");
            DynamicSegmentTemplate        dynamicSegment = new DynamicSegmentTemplate(segment);

            // Act
            bool ok = dynamicSegment.TryTranslate(context);

            // Assert
            Assert.True(ok);
            ODataPathSegment   actual        = Assert.Single(context.Segments);
            DynamicPathSegment actualSegment = Assert.IsType <DynamicPathSegment>(actual);

            Assert.Same(segment, actualSegment);
        }