From b89741154fe207e5a07aef8592ffa31ac656f730 Mon Sep 17 00:00:00 2001 From: Aravind Date: Thu, 16 Sep 2021 11:12:06 +0530 Subject: [PATCH 1/3] Fix for domain parse issue --- lib/domainatrix/domain_parser.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/domainatrix/domain_parser.rb b/lib/domainatrix/domain_parser.rb index 22452eb..a3a78ff 100644 --- a/lib/domainatrix/domain_parser.rb +++ b/lib/domainatrix/domain_parser.rb @@ -32,7 +32,7 @@ def read_dat_file(file_name) def parse(url) return {} unless url && url.strip != '' - url = "http://#{url}" unless url[/:\/\//] + url = "http://#{url.gsub(/^\/*/,'')}" unless url[/:\/\//] uri = URI.parse(url) if uri.query path = "#{uri.path}?#{uri.query}" From 6068a9e76fc4290dd73e648471a753e6cf424878 Mon Sep 17 00:00:00 2001 From: Aravind Date: Thu, 16 Sep 2021 11:34:17 +0530 Subject: [PATCH 2/3] add test cases --- spec/domainatrix/domain_parser_spec.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/spec/domainatrix/domain_parser_spec.rb b/spec/domainatrix/domain_parser_spec.rb index a00df73..9f8cdc8 100644 --- a/spec/domainatrix/domain_parser_spec.rb +++ b/spec/domainatrix/domain_parser_spec.rb @@ -31,6 +31,9 @@ it "includes the original url" do @domain_parser.parse("http://www.pauldix.net")[:url].should == "http://www.pauldix.net" + @domain_parser.parse("//www.pauldix.net")[:url].should == "http://www.pauldix.net" + @domain_parser.parse("/www.pauldix.net")[:url].should == "http://www.pauldix.net" + @domain_parser.parse("www.pauldix.net")[:url].should == "http://www.pauldix.net" end it "includes the scheme" do From a33dbe5b356eac8b1faa0039082c3db8dd1683ff Mon Sep 17 00:00:00 2001 From: Aravind Date: Thu, 16 Sep 2021 11:44:09 +0530 Subject: [PATCH 3/3] Read me fix --- README.textile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.textile b/README.textile index 3829eaa..c41e660 100644 --- a/README.textile +++ b/README.textile @@ -26,7 +26,7 @@ url = Domainatrix.parse("http://www.pauldix.net") url.url # => "http://www.pauldix.net" (the original url) url.public_suffix # => "net" url.domain # => "pauldix" -url.canonical # => "net.pauldix" +url.canonical # => "net.pauldix.www" url = Domainatrix.parse("http://foo.bar.pauldix.co.uk/asdf.html?q=arg") url.public_suffix # => "co.uk"