require 'test_helper' class EppLoginCredentialsTest < ActionDispatch::IntegrationTest def test_correct_credentials request_xml = <<-XML test_bestnames testtest 1.0 en https://epp.tld.ee/schema/domain-eis-1.0.xsd https://epp.tld.ee/schema/contact-ee-1.1.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 XML post '/epp/session/login', { frame: request_xml }, { 'HTTP_COOKIE' => 'session=new_session_id' } assert EppSession.find_by(session_id: 'new_session_id') assert_equal users(:api_bestnames), EppSession.find_by(session_id: 'new_session_id').user assert Nokogiri::XML(response.body).at_css('result[code="1000"]') assert_equal 1, Nokogiri::XML(response.body).css('result').size end def test_already_logged_in assert true # Handled by mod_epp end def test_wrong_credentials request_xml = <<-XML non-existent valid-but-wrong 1.0 en https://epp.tld.ee/schema/domain-eis-1.0.xsd https://epp.tld.ee/schema/contact-ee-1.1.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 XML post '/epp/session/login', { frame: request_xml }, { 'HTTP_COOKIE' => 'session=any_random_string' } assert Nokogiri::XML(response.body).at_css('result[code="2501"]') end end