Ejemplo n.º 1
0
        public void IsPrefixMatch_Hits()
        {
            // Arrange
            var tests = new[]
            {
                new
                {
                    Prefix     = "",
                    TestString = "SomeTestString",
                    Reason     = "Empty prefix should match any non-null test string."
                },
                new
                {
                    Prefix     = "SomeString",
                    TestString = "SomeString",
                    Reason     = "This was an exact match."
                },
                new { Prefix = "Foo", TestString = "foo.bar", Reason = "Prefix 'foo' matched." },
                new { Prefix = "Foo", TestString = "foo[bar]", Reason = "Prefix 'foo' matched." },
            };

            // Act & assert
            foreach (var test in tests)
            {
                bool retVal = ValueProviderUtil.IsPrefixMatch(test.Prefix, test.TestString);
                Assert.True(retVal, test.Reason);
            }
        }
Ejemplo n.º 2
0
        public void IsPrefixMatch_Misses()
        {
            // Arrange
            var tests = new[]
            {
                new
                {
                    Prefix     = "Prefix",
                    TestString = (string)null,
                    Reason     = "Null test string shouldn't match anything."
                },
                new
                {
                    Prefix     = "Foo",
                    TestString = "NotFoo",
                    Reason     = "Prefix 'foo' doesn't match 'notfoo'."
                },
                new
                {
                    Prefix     = "Foo",
                    TestString = "FooBar",
                    Reason     = "Prefix 'foo' was not followed by a delimiter in the test string."
                }
            };

            // Act & assert
            foreach (var test in tests)
            {
                bool retVal = ValueProviderUtil.IsPrefixMatch(test.Prefix, test.TestString);
                Assert.False(retVal, test.Reason);
            }
        }
        public void CollectionContainsPrefix_EmptyCollectionReturnsFalse()
        {
            // Arrange
            string[] collection = new string[0];

            // Act
            bool retVal = ValueProviderUtil.CollectionContainsPrefix(collection, "");

            // Assert
            Assert.False(retVal);
        }
        public void CollectionContainsPrefix_NonEmptyCollectionReturnsTrueIfPrefixIsEmptyString()
        {
            // Arrange
            string[] collection = new string[] { "Hello" };

            // Act
            bool retVal = ValueProviderUtil.CollectionContainsPrefix(collection, "");

            // Assert
            Assert.True(retVal);
        }
        public void CollectionContainsPrefix_MatchIsNotSimpleSubstringMatch()
        {
            // Arrange
            string[] collection = new string[] { "Hello" };

            // Act
            bool retVal = ValueProviderUtil.CollectionContainsPrefix(collection, "He");

            // Assert
            Assert.False(retVal);
        }
        public void CollectionContainsPrefix_MatchIsCaseInsensitive()
        {
            // Arrange
            string[] collection = new string[] { "Hello" };

            // Act
            bool retVal = ValueProviderUtil.CollectionContainsPrefix(collection, "hello");

            // Assert
            Assert.True(retVal);
        }
        public void CollectionContainsPrefix_ExactMatch()
        {
            // Arrange
            string[] collection = new string[] { "Hello" };

            // Act
            bool retVal = ValueProviderUtil.CollectionContainsPrefix(collection, "Hello");

            // Assert
            Assert.True(retVal);
        }
Ejemplo n.º 8
0
        public void CollectionContainsPrefix_PrefixBoundaries()
        {
            // Arrange
            string[] collection = new string[] { "Hello.There[0]" };

            // Act
            bool retVal1 = ValueProviderUtil.CollectionContainsPrefix(collection, "hello");
            bool retVal2 = ValueProviderUtil.CollectionContainsPrefix(collection, "hello.there");

            // Assert
            Assert.IsTrue(retVal1);
            Assert.IsTrue(retVal2);
        }
Ejemplo n.º 9
0
        public void GetPrefixes()
        {
            // Arrange
            string key = "foo.bar[baz].quux";

            string[] expected = new string[] {
                "foo.bar[baz].quux",
                "foo.bar[baz]",
                "foo.bar",
                "foo"
            };

            // Act
            List <string> result = ValueProviderUtil.GetPrefixes(key).ToList();

            // Assert
            CollectionAssert.AreEquivalent(expected, result);
        }
Ejemplo n.º 10
0
        public void IsPrefixMatch()
        {
            // Arrange
            var tests = new[] {
                new { Prefix = "Prefix", TestString = (string)null, ExpectedResult = false, Reason = "Null test string shouldn't match anything." },
                new { Prefix = "", TestString = "SomeTestString", ExpectedResult = true, Reason = "Empty prefix should match any non-null test string." },
                new { Prefix = "SomeString", TestString = "SomeString", ExpectedResult = true, Reason = "This was an exact match." },
                new { Prefix = "Foo", TestString = "NotFoo", ExpectedResult = false, Reason = "Prefix 'foo' doesn't match 'notfoo'." },
                new { Prefix = "Foo", TestString = "foo.bar", ExpectedResult = true, Reason = "Prefix 'foo' matched." },
                new { Prefix = "Foo", TestString = "foo[bar]", ExpectedResult = true, Reason = "Prefix 'foo' matched." },
                new { Prefix = "Foo", TestString = "FooBar", ExpectedResult = false, Reason = "Prefix 'foo' was not followed by a delimiter in the test string." }
            };

            // Act & assert
            foreach (var test in tests)
            {
                bool retVal = ValueProviderUtil.IsPrefixMatch(test.Prefix, test.TestString);
                Assert.AreEqual(test.ExpectedResult, retVal, test.Reason);
            }
        }