Example #1
0
        public void SimpleStringParameterBuilderParsingFail(string pattern)
        {
            var parambuilder = new SimpleStringParameterBuilder();
            var param        = parambuilder.Parse(pattern);

            Assert.Null(param);
        }
Example #2
0
        public void MappingUrl_OneParameter_failed(string patternUrl, string targetUrl)
        {
            var  builder = new SimpleStringParameterBuilder();
            var  result  = builder.Parse(patternUrl);
            bool isMatch = result.IsMatched(targetUrl);

            Assert.False(isMatch);
        }
        public void Test1()
        {
            var simStrParamBuilder = new SimpleStringParameterBuilder();
            var samStr             = simStrParamBuilder.Parse("https://mana.com/app/{app/-id}/services/{service-id}");
            var result             = samStr.IsMatched("https://mana.com/app/fnk%$^>H/services/gftryu");

            Assert.Equal(true, result);
        }
Example #4
0
        public void IsMatchOk(string pattern, string target, bool expected)
        {
            var parambuilder = new SimpleStringParameterBuilder();
            var param        = parambuilder.Parse(pattern);

            var result = param.IsMatched(target);

            Assert.Equal(expected, result);
        }
Example #5
0
        public void MappingUrl_OneParameter_successed(string patternUrl, string targetUrl, string key, string expectedResult)
        {
            var  builder = new SimpleStringParameterBuilder();
            var  result  = builder.Parse(patternUrl);
            bool isMatch = result.IsMatched(targetUrl);

            Assert.True(isMatch);

            var dic = new Dictionary <string, string> ();

            result.ExtractVariables(targetUrl, dic);
            Assert.True(dic.ContainsKey(key));
            Assert.Equal(expectedResult, dic[key]);
        }
Example #6
0
        void Matching_Clicked(object sender, EventArgs e)
        {
            var pattern = PatternInput.Text;
            var url     = UrlInput.Text;

            var strBuilder        = new SimpleStringParameterBuilder();
            var strParam          = strBuilder.Parse(pattern);
            var result            = strParam.IsMatched(url);
            var dicToStoreResults = new Dictionary <string, string>();

            strParam.ExtractVariables(url, dicToStoreResults);

            Result.Text     = result? "Matched" : "Not Match";
            RoutParams.Text = dicToStoreResults.ToString();
        }
Example #7
0
        public void MappingUrl_ManayParameter_suceessed(string patternUrl, string targetUrl, string[] key, string[] expectedResult)
        {
            var  builder = new SimpleStringParameterBuilder();
            var  result  = builder.Parse(patternUrl);
            bool isMatch = result.IsMatched(targetUrl);

            Assert.True(isMatch);

            var dic = new Dictionary <string, string> ();

            result.ExtractVariables(targetUrl, dic);

            for (int index = 0; index < key.Length; index++)
            {
                Assert.True(dic.ContainsKey(key[index]));
                Assert.Equal(expectedResult[index], dic[key[index]]);
            }
        }
Example #8
0
        static void Main(string[] args)
        {
            Stopwatch stopwatch = new Stopwatch();

            stopwatch.Start();
            var simStrParamBuilder = new SimpleStringParameterBuilder();
            var samStr             = simStrParamBuilder.Parse("https://mana.com/app/{app/-id}/service&/{ser${0}vice-id}/htr/{ndjqwnkjqw}");
            var result             = samStr.IsMatched("https://mana.com/app/fnk%$^>H/service&/gftryu/htr/{}P{{}{/");
            var RoutValues         = new Dictionary <string, string> {
            };

            samStr.ExtractVariables("https://mana.com/app/fnk%$^>H/service&/gftryu/htr/{}P{   {}{", ref RoutValues);
            stopwatch.Stop();
            Console.WriteLine("Time elapsed: {0}", stopwatch.Elapsed.Milliseconds);
            foreach (var item in RoutValues)
            {
                Console.WriteLine($"{item.Key} : {item.Value}");
            }
        }
Example #9
0
        private async void Button_ExtractParameters_Clicked(object sender, EventArgs e)
        {
            var engine  = new SimpleStringParameterBuilder();
            var engine2 = engine.Parse(Pattern.Text);

            Result.ItemsSource = new List <Data>();

            if (engine2.IsMatched(Url.Text))
            {
                var dict = new Dictionary <string, string>();
                engine2.ExtractVariables(Url.Text, dict);
                Result.ItemsSource = dict.Select(x => new Data {
                    Name = x.Key, Value = x.Value
                });
            }
            else
            {
                await DisplayAlert("", "Not IsMatched", "OK");
            }
        }
Example #10
0
        public void ExtractValue(string pattern, string target, string keys, string values)
        {
            Dictionary <string, string> expected = new Dictionary <string, string>();
            var keyyyy = keys.Split(',');
            var valuee = values.Split(',');

            for (int i = 0; i < keyyyy.Length; i++)
            {
                expected.Add(keyyyy[i], valuee[i]);
            }

            var parambuilder = new SimpleStringParameterBuilder();
            var param        = parambuilder.Parse(pattern);

            Dictionary <string, string> dict = new Dictionary <string, string>();

            //param.IsMatched(target);
            param.ExtractVariables(target, dict);

            expected.Should().BeEquivalentTo(dict);
        }