public void IsMatchParameters_ReturnsCorrect_ForWrongParameterFormatter()
        {
            // Arrange
            RouteValueDictionary routeValues = new RouteValueDictionary()
            {
                { "p1", "b,p2===c" },
            };

            // Act
            IDictionary <string, string> parameterMappings = new Dictionary <string, string>
            {
                { "p1", "p1" },
                { "p2", "p2" },
            };

            // Assert
            Assert.False(SegmentTemplateHelpers.IsMatchParameters(routeValues, parameterMappings));
        }
        public void IsMatchParameters_ReturnsCorrect_ForDifferentParameters()
        {
            // Arrange
            RouteValueDictionary routeValues = new RouteValueDictionary()
            {
                { "p1", "a" },
                { "p2", "b,p3=c" },
            };

            // 1) Act & Assert
            IDictionary <string, string> parameterMappings = new Dictionary <string, string>
            {
                { "p1", "p1" },
                { "p2", "p2" },
            };

            Assert.False(SegmentTemplateHelpers.IsMatchParameters(routeValues, parameterMappings));

            // 2) Act & Assert
            parameterMappings = new Dictionary <string, string>
            {
                { "p1", "p1" },
                { "p2", "p2" },
                { "p3", "p3" },
            };

            Assert.True(SegmentTemplateHelpers.IsMatchParameters(routeValues, parameterMappings));

            // 3) Act & Assert
            parameterMappings = new Dictionary <string, string>
            {
                { "Name", "name" }
            };
            Assert.False(SegmentTemplateHelpers.IsMatchParameters(routeValues, parameterMappings));

            // 4) Act & Assert
            parameterMappings = new Dictionary <string, string>();
            Assert.True(SegmentTemplateHelpers.IsMatchParameters(routeValues, parameterMappings));
        }