diff options
author | George Claghorn <george.claghorn@gmail.com> | 2019-01-12 21:38:26 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-12 21:38:26 -0500 |
commit | 512b5316dd33a8aa36821ee9b134d6652fd4a35f (patch) | |
tree | 81e3434a480765ff76f41f7994685e9391e28aee /actionmailbox/test/unit | |
parent | bb75d68fe2262199a16973c09a8b2749542c7590 (diff) | |
download | rails-512b5316dd33a8aa36821ee9b134d6652fd4a35f.tar.gz rails-512b5316dd33a8aa36821ee9b134d6652fd4a35f.tar.bz2 rails-512b5316dd33a8aa36821ee9b134d6652fd4a35f.zip |
Add Exim and Qmail support to Action Mailbox
Diffstat (limited to 'actionmailbox/test/unit')
-rw-r--r-- | actionmailbox/test/unit/relayer_test.rb (renamed from actionmailbox/test/unit/postfix_relayer_test.rb) | 34 |
1 files changed, 21 insertions, 13 deletions
diff --git a/actionmailbox/test/unit/postfix_relayer_test.rb b/actionmailbox/test/unit/relayer_test.rb index 5f7496ec3f..fb2b48ea16 100644 --- a/actionmailbox/test/unit/postfix_relayer_test.rb +++ b/actionmailbox/test/unit/relayer_test.rb @@ -2,35 +2,37 @@ require_relative "../test_helper" -require "action_mailbox/postfix_relayer" +require "action_mailbox/relayer" module ActionMailbox - class PostfixRelayerTest < ActiveSupport::TestCase - URL = "https://example.com/rails/action_mailbox/postfix/inbound_emails" + class RelayerTest < ActiveSupport::TestCase + URL = "https://example.com/rails/action_mailbox/relay/inbound_emails" INGRESS_PASSWORD = "secret" setup do - @relayer = ActionMailbox::PostfixRelayer.new(url: URL, password: INGRESS_PASSWORD) + @relayer = ActionMailbox::Relayer.new(url: URL, password: INGRESS_PASSWORD) end test "successfully relaying an email" do stub_request(:post, URL).to_return status: 204 result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "2.0.0 Successfully relayed message to Postfix ingress", result.output + assert_equal "2.0.0", result.status_code + assert_equal "Successfully relayed message to ingress", result.message assert result.success? assert_not result.failure? assert_requested :post, URL, body: file_fixture("welcome.eml").read, basic_auth: [ "actionmailbox", INGRESS_PASSWORD ], - headers: { "Content-Type" => "message/rfc822", "User-Agent" => /\AAction Mailbox Postfix relayer v\d+\./ } + headers: { "Content-Type" => "message/rfc822", "User-Agent" => /\AAction Mailbox relayer v\d+\./ } end test "unsuccessfully relaying with invalid credentials" do stub_request(:post, URL).to_return status: 401 result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.7.0 Invalid credentials for Postfix ingress", result.output + assert_equal "4.7.0", result.status_code + assert_equal "Invalid credentials for ingress", result.message assert_not result.success? assert result.failure? end @@ -39,7 +41,8 @@ module ActionMailbox stub_request(:post, URL).to_return status: 500 result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.0.0 HTTP 500", result.output + assert_equal "4.0.0", result.status_code + assert_equal "HTTP 500", result.message assert_not result.success? assert result.failure? end @@ -48,7 +51,8 @@ module ActionMailbox stub_request(:post, URL).to_return status: 504 result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.0.0 HTTP 504", result.output + assert_equal "4.0.0", result.status_code + assert_equal "HTTP 504", result.message assert_not result.success? assert result.failure? end @@ -57,7 +61,8 @@ module ActionMailbox stub_request(:post, URL).to_raise Errno::ECONNRESET.new result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.4.2 Network error relaying to Postfix ingress: Connection reset by peer", result.output + assert_equal "4.4.2", result.status_code + assert_equal "Network error relaying to ingress: Connection reset by peer", result.message assert_not result.success? assert result.failure? end @@ -66,7 +71,8 @@ module ActionMailbox stub_request(:post, URL).to_raise SocketError.new("Failed to open TCP connection to example.com:443") result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.4.2 Network error relaying to Postfix ingress: Failed to open TCP connection to example.com:443", result.output + assert_equal "4.4.2", result.status_code + assert_equal "Network error relaying to ingress: Failed to open TCP connection to example.com:443", result.message assert_not result.success? assert result.failure? end @@ -75,7 +81,8 @@ module ActionMailbox stub_request(:post, URL).to_timeout result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.4.2 Timed out relaying to Postfix ingress", result.output + assert_equal "4.4.2", result.status_code + assert_equal "Timed out relaying to ingress", result.message assert_not result.success? assert result.failure? end @@ -84,7 +91,8 @@ module ActionMailbox stub_request(:post, URL).to_raise StandardError.new("Something went wrong") result = @relayer.relay(file_fixture("welcome.eml").read) - assert_equal "4.0.0 Error relaying to Postfix ingress: Something went wrong", result.output + assert_equal "4.0.0", result.status_code + assert_equal "Error relaying to ingress: Something went wrong", result.message assert_not result.success? assert result.failure? end |