Skip to content

Commit

Permalink
hmol#25 Local links
Browse files Browse the repository at this point in the history
  • Loading branch information
dokkillo committed Feb 8, 2017
1 parent 7402dde commit 899bf69
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,5 +46,26 @@ public void Parse_UrlOnlyRelativePath_True()

Assert.That(parsed, Is.EqualTo(validUrl));
}

[Test]
public void Parse_UrlOnlyLocalPath_True()
{
var relativeUrl = "home";
string parsed;
var result = ValidUrlParser.Parse(relativeUrl, out parsed);
Assert.That(result, Is.True);
var validUrl = string.Format("{0}/{1}", ValidUrlParser.BaseUrl, relativeUrl);

Assert.That(parsed, Is.EqualTo(validUrl));
}

[Test]
public void Parse_UrlOnlyEmailPath_False()
{
var relativeUrl = "mailto:[email protected]";
string parsed;
var result = ValidUrlParser.Parse(relativeUrl, out parsed);
Assert.That(result, Is.False);
}
}
}
12 changes: 10 additions & 2 deletions LinkCrawler/LinkCrawler/Utils/Parsers/ValidUrlParser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,15 @@ public bool Parse(string url, out string validUrl)

Uri parsedUri;

if (Regex.IsNotMatch(url)
if (Regex.IsNotMatch(url)
|| !Uri.TryCreate(url, UriKind.RelativeOrAbsolute, out parsedUri))
return false;
{
if (!(url.Contains("@")))
{
return Parse(string.Concat(BaseUrl, "/", url), out validUrl);
}
return false;
}

if (parsedUri.IsAbsoluteUri)
{
Expand All @@ -48,5 +54,7 @@ public bool Parse(string url, out string validUrl)
}
return false;
}


}
}

0 comments on commit 899bf69

Please sign in to comment.