in lib/crawler/data/link.rb [17:33]
def initialize(base_url:, node: nil, link: nil)
raise ArgumentError, 'Base URL needs to be a URL object' unless base_url.is_a?(URL)
raise ArgumentError, 'Needs an node or a string link argument' unless node || link
raise ArgumentError, 'The :link argument needs to be a String' if link && !link.is_a?(String)
if node && !node.is_a?(Nokogiri::XML::Element)
raise ArgumentError,
'The :node argument needs to be a Nokogiri::XML::Element'
end
raise ArgumentError, 'Needs only one link argument' if node && link
@base_url = base_url
@node = node
@link = node ? node['href'] : link
@error = nil
end