mailhandler 1.0.60 → 1.0.61

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8030c60b3dadc77214d7a1bfc8c5bc475a3665586b22d01b1a0973c8386de30f
4
- data.tar.gz: 5c782690c6dc90db551254b3e3e8ab007717b15961143b0d9a6251a0f34a2731
3
+ metadata.gz: de40ee0be87a056910ae5518108c764c7eb9ac8c3966bf493785fffc91e7cb5b
4
+ data.tar.gz: 021c325cb06ded1e127b2eda02ab4aacd01dc39be42b0f2a43b65354d505742f
5
5
  SHA512:
6
- metadata.gz: f61717a2295a6cfe5f6d961fa9dbffae6f0e6e77a2fe93f667a4838cd55cebb3dba6835182d6d9f41b1f7032afcb146e25db05f97503486e0dfe06f3184dc416
7
- data.tar.gz: 1fb736635cf0608cd3d438598ef1c5f0aa1d1c6f60a7b1bcde6b61a840b30512e72ccb3f7686ad0d685317e663ee7a5bd558a9e63c9db2419f67d48a4af1743d
6
+ metadata.gz: ceef3cf4ad8ae793e321999dfe4b4ee7e9e4eb3334baf7de3d98b89990228b64984a553566c66fe5f3eefe981422e776382ab54d4a95e7e7ba7594f33a2020e4
7
+ data.tar.gz: 0ceca108ee81c36e280d24b5580860ab156bfda4c807b7a25addfb9cb2939e45b3b5234c0d4f3ac0fe099699959e1b4e10c22f450b5f6eee63aac573bfadc351
@@ -3,8 +3,8 @@ module Mail
3
3
  class SMTP
4
4
  def deliver_raw!(raw_source_email, smtp_from, smtp_to)
5
5
  response = start_smtp_session do |smtp|
6
- Mail::SMTPConnection.new(:connection => smtp, :return_response => true).
7
- deliver_raw!(raw_source_email, smtp_from, smtp_to)
6
+ Mail::SMTPConnection.new(connection: smtp, return_response: true)
7
+ .deliver_raw!(raw_source_email, smtp_from, smtp_to)
8
8
  end
9
9
 
10
10
  settings[:return_response] ? response : self
@@ -19,4 +19,4 @@ module Mail
19
19
  settings[:return_response] ? response : self
20
20
  end
21
21
  end
22
- end
22
+ end
@@ -94,7 +94,7 @@ module MailHandler
94
94
  end
95
95
 
96
96
  def validate_used_options(options)
97
- error_message = "#{(options.keys - available_search_options)} - Incorrect search option values,"\
97
+ error_message = "#{options.keys - available_search_options} - Incorrect search option values,"\
98
98
  " options are #{available_search_options}."
99
99
  raise MailHandler::Error, error_message unless (options.keys - available_search_options).empty?
100
100
  end
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'mail'
4
- require_relative 'base.rb'
4
+ require_relative 'base'
5
5
  require_relative '../errors'
6
- require_relative 'filelist/base.rb'
7
- require_relative 'filelist/filter/base.rb'
8
- require_relative 'filelist/filter/email.rb'
6
+ require_relative 'filelist/base'
7
+ require_relative 'filelist/filter/base'
8
+ require_relative 'filelist/filter/email'
9
9
 
10
10
  module MailHandler
11
11
  module Receiving
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'mail'
4
- require_relative 'base.rb'
4
+ require_relative 'base'
5
5
  require_relative '../errors'
6
6
 
7
7
  module MailHandler
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'postmark'
4
- require_relative 'base.rb'
4
+ require_relative 'base'
5
5
 
6
6
  module MailHandler
7
7
  module Sending
@@ -14,7 +14,7 @@ module MailHandler
14
14
  :http_read_timeout
15
15
 
16
16
  def initialize(api_token = nil)
17
- @type = :postmark_api
17
+ super(:postmark_api)
18
18
  @host = DEFAULTS[:host]
19
19
  @api_token = api_token
20
20
  @use_ssl = true
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'api.rb'
3
+ require_relative 'api'
4
4
  require_relative '../errors'
5
5
 
6
6
  module MailHandler
@@ -9,6 +9,10 @@ module MailHandler
9
9
  class Sender
10
10
  attr_reader :type
11
11
 
12
+ def initialize(type)
13
+ @type = type
14
+ end
15
+
12
16
  def send(_email)
13
17
  raise MailHandler::InterfaceError, 'Send interface not implemented.'
14
18
  end
@@ -1,27 +1,18 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative 'base'
4
- require_relative "../extensions/mail/smtp"
4
+ require_relative '../extensions/mail/smtp'
5
5
 
6
6
  module MailHandler
7
7
  module Sending
8
8
  # class which describes methods to send and receive emails
9
9
  class SMTPSender < Sender
10
- attr_accessor :address,
11
- :port,
12
- :domain,
13
- :username,
14
- :password,
15
- :authentication,
16
- :use_ssl,
17
- :openssl_verify_mode
18
-
19
- attr_accessor :open_timeout,
20
- :read_timeout,
21
- :save_response
10
+ attr_accessor :address, :port, :domain, :username, :password, :authentication, :use_ssl, :openssl_verify_mode,
11
+ :open_timeout, :read_timeout, :save_response
22
12
 
23
13
  def initialize
24
- @type = :smtp
14
+ super :smtp
15
+
25
16
  @authentication = 'plain'
26
17
  @use_ssl = true
27
18
  @save_response = true
@@ -42,6 +33,14 @@ module MailHandler
42
33
  save_response ? response : nil
43
34
  end
44
35
 
36
+ def can_authenticate?
37
+ method_name = 'start_smtp_session' # Mail::SMTP private method
38
+ configure_sending(Mail.new).delivery_method.send(method_name)
39
+ true
40
+ rescue Net::SMTPAuthenticationError
41
+ false
42
+ end
43
+
45
44
  def valid_response?(response)
46
45
  response.string.to_s.downcase.include?('250 2.0.0 ok')
47
46
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MailHandler
4
- VERSION = '1.0.60'
4
+ VERSION = '1.0.61'
5
5
  end
@@ -8,7 +8,7 @@ describe MailHandler::Receiver do
8
8
 
9
9
  let(:default_search_option) { { by_subject: 'test' } }
10
10
  let(:receiving_duration) { 5 }
11
- let(:found_email) { Mail.new { subject 'test email' } }
11
+ let(:found_email) { Mail.new { subject :"test email" } }
12
12
  let(:checker) do
13
13
  checker = instance_double('Checker')
14
14
 
@@ -72,17 +72,17 @@ describe MailHandler::Receiver do
72
72
  checker
73
73
  end
74
74
 
75
- it "raise error" do
75
+ it 'raise error' do
76
76
  receiver.max_search_duration = 3
77
- receiver.validate_result=true
78
- expect { receiver.find_email(default_search_option) }.
79
- to raise_error(MailHandler::SearchEmailError,
80
- "Email searched by {:by_subject=>\"test\"} not found for 3 seconds.")
77
+ receiver.validate_result = true
78
+ expect { receiver.find_email(default_search_option) }
79
+ .to raise_error(MailHandler::SearchEmailError,
80
+ 'Email searched by {:by_subject=>"test"} not found for 3 seconds.')
81
81
  end
82
82
 
83
- it "do not raise error" do
83
+ it 'do not raise error' do
84
84
  receiver.max_search_duration = 3
85
- receiver.validate_result=false
85
+ receiver.validate_result = false
86
86
  expect(receiver.find_email(default_search_option)).to be false
87
87
  end
88
88
  end
@@ -20,7 +20,7 @@ describe MailHandler::Sender do
20
20
  Mail.new do
21
21
  from 'sheldon@bigbangtheory.com'
22
22
  to 'lenard@bigbangtheory.com'
23
- subject 'Hello!'
23
+ subject :Hello!
24
24
  body 'Hello Sheldon!'
25
25
  end
26
26
  end
@@ -27,6 +27,16 @@ describe MailHandler::Sending::SMTPSender do
27
27
  end
28
28
  end
29
29
 
30
+ it 'can_authenticated' do
31
+ sender = smtp_sender.new
32
+ expect { sender.can_authenticate? }.to raise_error Errno::ECONNREFUSED
33
+ end
34
+
35
+ it 'type' do
36
+ sender = smtp_sender.new
37
+ expect(sender.type).to eq :smtp
38
+ end
39
+
30
40
  it 'save response' do
31
41
  expect(smtp_sender.new.save_response).to be true
32
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailhandler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.60
4
+ version: 1.0.61
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Balos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-17 00:00:00.000000000 Z
11
+ date: 2022-12-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mail