mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 17:59:47 +02:00
35 lines
655 B
Ruby
35 lines
655 B
Ruby
module Matchers
|
|
module EPP
|
|
class Code
|
|
def initialize(expected)
|
|
@expected = expected
|
|
end
|
|
|
|
def matches?(response)
|
|
@xml = response.body
|
|
actual == expected
|
|
end
|
|
|
|
def failure_message
|
|
"Expected EPP code of #{expected}, got #{actual} (#{description})"
|
|
end
|
|
|
|
private
|
|
|
|
attr_reader :xml
|
|
attr_reader :expected
|
|
|
|
def actual
|
|
xml_document.xpath('//xmlns:result').first['code'].to_i
|
|
end
|
|
|
|
def description
|
|
xml_document.css('result msg').text
|
|
end
|
|
|
|
def xml_document
|
|
@xml_document ||= Nokogiri::XML(xml)
|
|
end
|
|
end
|
|
end
|
|
end
|