Exemple #1
0
        public Dictionary <int, int> Parse(string input)
        {
            var    list     = new Dictionary <int, int>();
            string modified = input;

            while (modified.Contains(UrlElement))
            {
                int start = modified.IndexOf(UrlElement);
                int end   = start;

                while (!Spliters.Contains(modified[end]) && end != modified.Length - 1)
                {
                    end++;
                }

                if (end != modified.Length - 1)
                {
                    end--;
                }

                int lengthPossibleUrl = end + 1 - start;
                if (lengthPossibleUrl >= 0)
                {
                    string possibleUrl = modified.Substring(start, lengthPossibleUrl);
                    if (urlValidator.ValidUrl(possibleUrl))
                    {
                        list.Add(input.IndexOf(possibleUrl), lengthPossibleUrl);
                    }
                }

                modified = modified.Remove(start, lengthPossibleUrl);
            }

            return(list);
        }
        public void ValidUrl_GoodFormat_ShouldReturTrue()
        {
            // arrange
            var url = "https://www.facebook.com";
            var validator = new UrlValidation();
            var expected = true;

            // act
            var actual = validator.ValidUrl(url);

            // assert
            Assert.AreEqual(actual, expected);
        }
        public void InvalidUrl2_BadFormat_ShouldReturFalse()
        {
            // arrange
            var url = "facebook";
            var validator = new UrlValidation();
            var expected = false;

            // act
            var actual = validator.ValidUrl(url);

            // assert
            Assert.AreEqual(actual, expected);
        }