コード例 #1
0
        public void PatternSetter_ValidValue_SetsPatternProperty()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            simple.Pattern = "{baz}";
            Assert.AreEqual("{baz}", simple.Pattern);
        }
コード例 #2
0
        public void IsMatch_MatchSecondLastChar_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}~");

            int end;
            DataDictionary data;

            bool is_match = simple.IsMatch("/foo/barbaz~", 0, out data, out end);
            Assert.IsTrue(is_match);
        }
コード例 #3
0
        public void IsMatch_MultiplePatterns_UpdatesEnd()
        {
            var simple = new SimpleMatchOperation ("{foo}/{bar}");

            int end;
            DataDictionary data = new DataDictionary ();
            simple.IsMatch ("manos/mono", 0, data, out end);

            Assert.AreEqual (10, end);
        }
コード例 #4
0
        public void IsMatch_SingleMatchNonMatchingString_DoesntAddData()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/");

            int            end;
            DataDictionary data;

            simple.IsMatch("nope/no/", 0, out data, out end);
            Assert.IsNull(data);
        }
コード例 #5
0
        public void IsMatch_MatchBeforeEnd_SetsEndCorrectly()
        {
            var simple = new SimpleMatchOperation("/{bar}/");

            int            end;
            DataDictionary data;

            simple.IsMatch("/yup/more/data/foo/", 0, out data, out end);
            Assert.AreEqual(5, end);
        }
コード例 #6
0
        public void IsMatch_SinglePatternInMiddle_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int            end;
            DataDictionary data     = new DataDictionary();
            bool           is_match = simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            Assert.IsTrue(is_match);
        }
コード例 #7
0
        public void IsMatch_MatchBeforeEnd_SetsEndCorrectly()
        {
            var simple = new SimpleMatchOperation("/{bar}/");

            int end;
            DataDictionary data;

            simple.IsMatch("/yup/more/data/foo/", 0, out data, out end);
            Assert.AreEqual(5, end);
        }
コード例 #8
0
        public void IsMatch_MultiplePatterns_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation ("{foo}/{bar}");

            int end;
            DataDictionary data = new DataDictionary ();

            bool is_match = simple.IsMatch ("match1/match2", 0, data, out end);
            Assert.IsTrue (is_match);
        }
コード例 #9
0
        public void IsMatch_SinglePatternInMiddle_UpdatesEnd()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int            end;
            DataDictionary data = new DataDictionary();

            simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            Assert.AreEqual(15, end);
        }
コード例 #10
0
        public void IsMatch_MatchSecondLastChar_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}~");

            int            end;
            DataDictionary data;

            bool is_match = simple.IsMatch("/foo/barbaz~", 0, out data, out end);

            Assert.IsTrue(is_match);
        }
コード例 #11
0
        public void IsMatch_MultiplePatterns_UpdatesEnd()
        {
            var simple = new SimpleMatchOperation("{foo}/{bar}");

            int            end;
            DataDictionary data;

            simple.IsMatch("manos/mono", 0, out data, out end);

            Assert.AreEqual(10, end);
        }
コード例 #12
0
        public void IsMatch_SingleMatchNonMatchingString_ReturnsFalse()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/");

            int            end;
            DataDictionary data;

            bool is_match = simple.IsMatch("nope/no/", 0, out data, out end);

            Assert.IsFalse(is_match);
        }
コード例 #13
0
        public void IsMatch_MultiplePatterns_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation("{foo}/{bar}");

            int            end;
            DataDictionary data;

            bool is_match = simple.IsMatch("match1/match2", 0, out data, out end);

            Assert.IsTrue(is_match);
        }
コード例 #14
0
        public void IsMatch_SinglePatternInMiddle_FindsData()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int            end;
            DataDictionary data = new DataDictionary();

            simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            string bar_value = data ["bar"];

            Assert.AreEqual("manos", bar_value);
        }
コード例 #15
0
        public void IsMatch_MultiplePatterns_FindsData()
        {
            var simple = new SimpleMatchOperation("{foo}/{bar}");

            int            end;
            DataDictionary data;

            simple.IsMatch("match1/match2", 0, out data, out end);

            string match1 = data ["foo"];
            string match2 = data ["bar"];

            Assert.AreEqual("match1", match1, "match 1");
            Assert.AreEqual("match2", match2, "match 2");
        }
コード例 #16
0
        public void IsMatch_MultiplePatterns_FindsData()
        {
            var simple = new SimpleMatchOperation("{foo}/{bar}");

            int end;
            DataDictionary data;

            simple.IsMatch("match1/match2", 0, out data, out end);

            string match1 = data["foo"];
            string match2 = data["bar"];

            Assert.AreEqual("match1", match1, "match 1");
            Assert.AreEqual("match2", match2, "match 2");
        }
コード例 #17
0
        public void IsMatch_SingleMatchNonMatchingString_DoesntAddData()
        {
            var simple = new SimpleMatchOperation ("/foo/{bar}/");

            int end;
            DataDictionary data = new DataDictionary ();

            simple.IsMatch ("nope/no/", 0, data, out end);
            Assert.AreEqual (0, data.Count);
        }
コード例 #18
0
        public void IsMatch_SingleMatchNonMatchingString_DoesntAddData()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/");

            int end;
            DataDictionary data;

            simple.IsMatch("nope/no/", 0, out data, out end);
            Assert.IsNull(data);
        }
コード例 #19
0
        public void PatternSetter_NullValue_Throws()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            Should.Throw <ArgumentNullException> (() => simple.Pattern = null);
        }
コード例 #20
0
        public void Ctor_ValidPattern_SetsPatternProperty()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            Assert.AreEqual("{foobar}", simple.Pattern);
        }
コード例 #21
0
        public void IsMatch_SingleMatchNonMatchingString_ReturnsFalse()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/");

            int end;
            DataDictionary data;

            bool is_match = simple.IsMatch("nope/no/", 0, out data, out end);
            Assert.IsFalse(is_match);
        }
コード例 #22
0
        public void Ctor_ValidPattern_SetsPatternProperty()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            Assert.AreEqual("{foobar}", simple.Pattern);
        }
コード例 #23
0
        public void IsMatch_SinglePatternInMiddle_ReturnsTrue()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int end;
            var data = new DataDictionary();
            bool is_match = simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            Assert.IsTrue(is_match);
        }
コード例 #24
0
        public void IsMatch_SinglePatternInMiddle_UpdatesEnd()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int end;
            var data = new DataDictionary();
            simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            Assert.AreEqual(15, end);
        }
コード例 #25
0
        public void PatternSetter_NullValue_Throws()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            Should.Throw<ArgumentNullException>(() => simple.Pattern = null);
        }
コード例 #26
0
        public void IsMatch_SinglePatternInMiddle_FindsData()
        {
            var simple = new SimpleMatchOperation("/foo/{bar}/baz/");

            int end;
            var data = new DataDictionary();
            simple.IsMatch("/foo/manos/baz/", 0, out data, out end);

            string bar_value = data["bar"];
            Assert.AreEqual("manos", bar_value);
        }
コード例 #27
0
        public void PatternSetter_ValidValue_SetsPatternProperty()
        {
            var simple = new SimpleMatchOperation("{foobar}");

            simple.Pattern = "{baz}";
            Assert.AreEqual("{baz}", simple.Pattern);
        }