multi_smtp 0.0.1 → 0.0.2

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
  SHA1:
3
- metadata.gz: 8b4c0d11e7bf9ef7fdbe9599079af40962c5619f
4
- data.tar.gz: 82f6f530e1025b1e87ddf17dc515dc052abaf79b
3
+ metadata.gz: 23e763868f6b569e48370beafec837ca5b3576fc
4
+ data.tar.gz: 2ef877d1d11bc165539ee85ede08b5dfb467a29b
5
5
  SHA512:
6
- metadata.gz: e4716c7ea2d5d1c583fd7eee596b21eb2bfdb20d5d24c5803dc64f94637b1a88db2ec4377bd25a9da75b33688f7ae1c7c920528fa72c4abb48c3928d23a59528
7
- data.tar.gz: 091f3eff7730e6afd13a2d2fc777d0cc7d278c6b01f33afe314e9d6abd1fc7510bba12218556f4d3c9a590a684b30be8c7c1340587499802ea86e2a77956fc48
6
+ metadata.gz: 46437e91bc54924e46069db89e4317f37b85409961ae74957ecf0148384d796670e2f77108001c8e6e1df0b326f4b5f3f7ebaca0966865d038ca201e82103002
7
+ data.tar.gz: 26eb14f158e409b3dd515918437301e775f477c60cdd9daed0b0c7b265cc4a471342ed295283d8a2e2ccb438ffaf05cc502c9ff6a7215d9c3af85cb59572393e
data/.gitignore CHANGED
@@ -12,3 +12,4 @@
12
12
  *.o
13
13
  *.a
14
14
  mkmf.log
15
+ *.gem
@@ -14,8 +14,12 @@ module MultiSMTP
14
14
  super(mail)
15
15
  break
16
16
  rescue Exception => e
17
- if all_providers_failed?(index) && error_notifier
17
+ next unless all_providers_failed?(index)
18
+
19
+ if error_notifier
18
20
  error_notifier.notify(mail)
21
+ else
22
+ raise e
19
23
  end
20
24
  end
21
25
  end
@@ -1,3 +1,3 @@
1
1
  module MultiSMTP
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -18,9 +18,10 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_runtime_dependency "mail", "~> 2.6.3"
21
+ spec.add_runtime_dependency "mail", "~> 2.6", ">= 2.6.3"
22
22
 
23
23
  spec.add_development_dependency "bundler", "~> 1.7"
24
+ spec.add_development_dependency "pry", "~> 0.10", ">= 0.10.1"
24
25
  spec.add_development_dependency "rake", "~> 10.0"
25
- spec.add_development_dependency "rspec", "~> 3.1.0"
26
+ spec.add_development_dependency "rspec", "~> 3.1", ">= 3.1.0"
26
27
  end
@@ -39,13 +39,25 @@ describe MultiSMTP::Mail, "#deliver!" do
39
39
  end
40
40
 
41
41
  context "all smtp providers fail" do
42
- it "notifies airbrake" do
43
- allow_any_instance_of(Net::SMTP).to receive(:start).
44
- and_raise(Net::SMTPFatalError)
42
+ context "notifier is set" do
43
+ it "notifies airbrake" do
44
+ allow_any_instance_of(Net::SMTP).to receive(:start).
45
+ and_raise(Net::SMTPFatalError)
45
46
 
46
- MultiSMTP::Mail.new({}).deliver!(mail)
47
+ MultiSMTP::Mail.new({}).deliver!(mail)
48
+
49
+ expect(error_notifier).to have_received(:notify).once
50
+ end
51
+ end
52
+
53
+ context "notifier is not set" do
54
+ it "re-raises the original exception" do
55
+ MultiSMTP.error_notifier = nil
56
+ allow_any_instance_of(Net::SMTP).to receive(:start).
57
+ and_raise(Net::SMTPFatalError)
47
58
 
48
- expect(error_notifier).to have_received(:notify).once
59
+ expect { MultiSMTP::Mail.new({}).deliver!(mail) }.to raise_exception
60
+ end
49
61
  end
50
62
  end
51
63
 
@@ -3,6 +3,7 @@ $LOAD_PATH << File.join(File.dirname(__FILE__))
3
3
 
4
4
  require "rubygems"
5
5
  require "rspec"
6
+ require "pry"
6
7
  require "multi_smtp"
7
8
 
8
9
  RSpec.configure do |config|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multi_smtp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harlow Ward
@@ -15,6 +15,9 @@ dependencies:
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.6'
20
+ - - ">="
18
21
  - !ruby/object:Gem::Version
19
22
  version: 2.6.3
20
23
  type: :runtime
@@ -22,6 +25,9 @@ dependencies:
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '2.6'
30
+ - - ">="
25
31
  - !ruby/object:Gem::Version
26
32
  version: 2.6.3
27
33
  - !ruby/object:Gem::Dependency
@@ -38,6 +44,26 @@ dependencies:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
46
  version: '1.7'
47
+ - !ruby/object:Gem::Dependency
48
+ name: pry
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0.10'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 0.10.1
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '0.10'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 0.10.1
41
67
  - !ruby/object:Gem::Dependency
42
68
  name: rake
43
69
  requirement: !ruby/object:Gem::Requirement
@@ -57,6 +83,9 @@ dependencies:
57
83
  requirement: !ruby/object:Gem::Requirement
58
84
  requirements:
59
85
  - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.1'
88
+ - - ">="
60
89
  - !ruby/object:Gem::Version
61
90
  version: 3.1.0
62
91
  type: :development
@@ -64,6 +93,9 @@ dependencies:
64
93
  version_requirements: !ruby/object:Gem::Requirement
65
94
  requirements:
66
95
  - - "~>"
96
+ - !ruby/object:Gem::Version
97
+ version: '3.1'
98
+ - - ">="
67
99
  - !ruby/object:Gem::Version
68
100
  version: 3.1.0
69
101
  description: Email failover in Rails with MultiSMTP