require 'test_helper' require 'deserializers/xml/legal_document' class DeserializersXmlLegalDocumentTest < ActiveSupport::TestCase def test_returns_nil_when_required_fields_not_present xml_string = <<-XML john-001 new name +123.4 new-email@inbox.test XML nokogiri_frame = Nokogiri::XML(xml_string).remove_namespaces! instance = ::Deserializers::Xml::LegalDocument.new(nokogiri_frame) assert_nil instance.call end def test_returns_hash_when_document_exists xml_string = <<-XML FIRST0:SH2027223711 wrong password 37605030299 dGVzdCBmYWlsCg== ABC-12345 XML nokogiri_frame = Nokogiri::XML(xml_string).remove_namespaces! instance = ::Deserializers::Xml::LegalDocument.new(nokogiri_frame) expected_result = { body: "dGVzdCBmYWlsCg==", type: "pdf" } assert_equal expected_result, instance.call end end