smtp_url 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 17025cd859ef992718f80462e0ac4b9efaff4c11
4
+ data.tar.gz: fcc37463b58047802ac5e5a0e65ca847a11589d7
5
+ SHA512:
6
+ metadata.gz: d7d243bac1f54c7f759086f4cd5f60970da9c288f7ff2235a2d7ffab87ea19d5de72d42940c811879c2820e70352037621004120d1d73821b6bf50887a4d4f5c
7
+ data.tar.gz: 6c4f85909334e369b1e31ee77bb76aea42a3344929afcdb7c7b051c3905469fcb4d0fc66796307b901e5f7f433fccf7f402404b944fd221c94cfd6ddff1e31fd
data/Gemfile CHANGED
@@ -1,8 +1,10 @@
1
- source "http://rubygems.org"
1
+ source 'http://rubygems.org'
2
2
 
3
3
  gem 'activesupport'
4
4
 
5
5
  group :test do
6
- gem "rspec"
7
- gem "mocha"
6
+ gem 'rspec'
7
+ gem 'mocha'
8
+ gem 'rake'
9
+ gem 'railties'
8
10
  end
data/Gemfile.lock CHANGED
@@ -1,12 +1,50 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
+ actionpack (3.2.3)
5
+ activemodel (= 3.2.3)
6
+ activesupport (= 3.2.3)
7
+ builder (~> 3.0.0)
8
+ erubis (~> 2.7.0)
9
+ journey (~> 1.0.1)
10
+ rack (~> 1.4.0)
11
+ rack-cache (~> 1.2)
12
+ rack-test (~> 0.6.1)
13
+ sprockets (~> 2.1.2)
14
+ activemodel (3.2.3)
15
+ activesupport (= 3.2.3)
16
+ builder (~> 3.0.0)
4
17
  activesupport (3.2.3)
5
18
  i18n (~> 0.6)
6
19
  multi_json (~> 1.0)
20
+ builder (3.0.4)
7
21
  diff-lcs (1.1.3)
22
+ erubis (2.7.0)
23
+ hike (1.2.3)
8
24
  i18n (0.6.0)
25
+ journey (1.0.4)
26
+ json (1.8.1)
27
+ metaclass (0.0.4)
28
+ mocha (1.0.0)
29
+ metaclass (~> 0.0.1)
9
30
  multi_json (1.3.5)
31
+ rack (1.4.5)
32
+ rack-cache (1.2)
33
+ rack (>= 0.4)
34
+ rack-ssl (1.3.4)
35
+ rack
36
+ rack-test (0.6.2)
37
+ rack (>= 1.0)
38
+ railties (3.2.3)
39
+ actionpack (= 3.2.3)
40
+ activesupport (= 3.2.3)
41
+ rack-ssl (~> 1.3.2)
42
+ rake (>= 0.8.7)
43
+ rdoc (~> 3.4)
44
+ thor (~> 0.14.6)
45
+ rake (10.1.0)
46
+ rdoc (3.12.2)
47
+ json (~> 1.4)
10
48
  rspec (2.10.0)
11
49
  rspec-core (~> 2.10.0)
12
50
  rspec-expectations (~> 2.10.0)
@@ -15,10 +53,19 @@ GEM
15
53
  rspec-expectations (2.10.0)
16
54
  diff-lcs (~> 1.1.3)
17
55
  rspec-mocks (2.10.1)
56
+ sprockets (2.1.3)
57
+ hike (~> 1.2)
58
+ rack (~> 1.0)
59
+ tilt (~> 1.1, != 1.3.0)
60
+ thor (0.14.6)
61
+ tilt (1.4.1)
18
62
 
19
63
  PLATFORMS
20
64
  ruby
21
65
 
22
66
  DEPENDENCIES
23
67
  activesupport
68
+ mocha
69
+ railties
70
+ rake
24
71
  rspec
data/Rakefile ADDED
@@ -0,0 +1,4 @@
1
+ require 'rspec/core/rake_task'
2
+ RSpec::Core::RakeTask.new(:spec)
3
+
4
+ task :default => :spec
@@ -2,11 +2,13 @@ require "smtp_url/parser"
2
2
 
3
3
  module SmtpURL
4
4
  class Railtie < Rails::Railtie
5
- if ENV["SMTP_URL"]
6
- config.action_mailer.delivery_method = :smtp
7
- config.action_mailer.smtp_settings = SmtpURL::Parser.new(ENV["SMTP_URL"]).parse
8
- else
9
- Rails.logger.warn "SmtpURL did not setup your email delivery because the SMTP_URL env var was missing"
5
+ initializer 'configure action_mailer' do
6
+ if ENV["SMTP_URL"]
7
+ config.action_mailer.delivery_method = :smtp
8
+ config.action_mailer.smtp_settings = SmtpURL::Parser.new(ENV["SMTP_URL"]).parse
9
+ else
10
+ Rails.logger.warn "SmtpURL did not setup your email delivery because the SMTP_URL env var was missing"
11
+ end
10
12
  end
11
13
  end
12
14
  end
@@ -1,3 +1,3 @@
1
1
  module SmtpURL
2
- VERSION = '0.2.0'
2
+ VERSION = '0.3.0'
3
3
  end
data/smtp_url.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
  $:.push File.expand_path("../lib", __FILE__)
3
- require "smtp_url"
3
+ require "smtp_url/version"
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "smtp_url"
@@ -1,58 +1,43 @@
1
1
  require 'spec_helper'
2
+ require 'smtp_url/railtie'
2
3
 
3
4
  module Rails
4
- class Railtie
5
- def self.config
6
- Config.new
7
- end
5
+ class << self
6
+ attr_accessor :logger
7
+ end
8
+ end
8
9
 
9
- def self.mailer_config
10
- MailerConfig.new
11
- end
10
+ describe SmtpURL::Railtie do
11
+ before do
12
+ Rails::Railtie::Configuration.any_instance.stub(:action_mailer).and_return(mock_config)
13
+ Rails.logger = Logger.new(STDOUT)
14
+ SmtpURL::Railtie.any_instance.stub(:instance_variable_defined?).and_return(false)
12
15
  end
13
16
 
14
- class Config
15
- def action_mailer
16
- MailerConfig.new
17
- end
17
+ let(:mock_config) do
18
+ mock('mock_config').as_null_object
18
19
  end
19
20
 
20
- class MailerConfig
21
- def deliver_method=(method)
21
+ context 'with SMTP_URL defined' do
22
+ before do
23
+ ENV['SMTP_URL'] = 'smtp://localhost:1025'
22
24
  end
23
25
 
24
- def smtp_settings=(hash)
26
+ it "should setup action_mailer settings when SMTP_URL is set" do
27
+ mock_config.should_receive(:delivery_method=).with(:smtp)
28
+ mock_config.should_receive(:smtp_settings=)
29
+ SmtpURL::Railtie.run_initializers
25
30
  end
26
- end
27
31
 
28
- class Logger
29
- def warn(message)
32
+ after do
33
+ ENV['SMTP_URL'] = nil
30
34
  end
31
35
  end
32
36
 
33
- def self.logger
34
- Logger.new
35
- end
36
- end
37
-
38
- require 'smtp_url/railtie'
39
-
40
- describe SmtpURL::Railtie do
41
-
42
- it "should log a warning if SMTP_URL is not set" do
43
- Rails::Logger.any_instance.expects(:warn).with('SmtpURL did not setup your email delivery because the SMTP_URL env var was missing')
44
- load 'smtp_url/railtie.rb'
45
- end
46
-
47
- it "should setup action_mailer settings when SMTP_URL is set" do
48
- ENV['SMTP_URL'] = 'smtp://localhost:1025'
49
- Rails::MailerConfig.any_instance.expects(:delivery_method=).with(:smtp)
50
- Rails::MailerConfig.any_instance.expects(:smtp_settings=)
51
- load 'smtp_url/railtie.rb'
37
+ context 'without SMTP_URL defined' do
38
+ it "should log a warning if SMTP_URL is not set" do
39
+ Rails.logger.should_receive(:warn).with('SmtpURL did not setup your email delivery because the SMTP_URL env var was missing')
40
+ SmtpURL::Railtie.run_initializers
41
+ end
52
42
  end
53
43
  end
54
-
55
-
56
-
57
-
58
-
data/spec/spec_helper.rb CHANGED
@@ -1,11 +1,9 @@
1
- require "rubygems"
2
- require "mocha/api"
3
- require "rspec"
1
+ require 'rspec'
2
+ require 'action_controller/railtie'
4
3
 
5
4
  RSpec.configure do |config|
6
5
  config.treat_symbols_as_metadata_keys_with_true_values = true
7
6
  config.run_all_when_everything_filtered = true
8
7
  config.filter_run :focus
9
- config.mock_framework = :mocha
10
8
  config.order = 'random'
11
9
  end
metadata CHANGED
@@ -1,30 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smtp_url
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Daniel Farrell
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-12-27 00:00:00.000000000 Z
11
+ date: 2015-01-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activesupport
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  description: Allows smtp settings to be defined as URL in environment variable, then
@@ -37,6 +34,7 @@ extra_rdoc_files: []
37
34
  files:
38
35
  - Gemfile
39
36
  - Gemfile.lock
37
+ - Rakefile
40
38
  - Readme.md
41
39
  - lib/smtp_url.rb
42
40
  - lib/smtp_url/invalid_url_exception.rb
@@ -49,30 +47,28 @@ files:
49
47
  - spec/spec_helper.rb
50
48
  homepage: https://github.com/danielfarrell/smtp_url
51
49
  licenses: []
50
+ metadata: {}
52
51
  post_install_message:
53
52
  rdoc_options: []
54
53
  require_paths:
55
54
  - lib
56
55
  required_ruby_version: !ruby/object:Gem::Requirement
57
- none: false
58
56
  requirements:
59
- - - ! '>='
57
+ - - ">="
60
58
  - !ruby/object:Gem::Version
61
59
  version: '0'
62
60
  required_rubygems_version: !ruby/object:Gem::Requirement
63
- none: false
64
61
  requirements:
65
- - - ! '>='
62
+ - - ">="
66
63
  - !ruby/object:Gem::Version
67
64
  version: '0'
68
65
  requirements: []
69
66
  rubyforge_project:
70
- rubygems_version: 1.8.23
67
+ rubygems_version: 2.4.5
71
68
  signing_key:
72
- specification_version: 3
69
+ specification_version: 4
73
70
  summary: Convert an smtp url into mail/action mailer friendly hashes
74
71
  test_files:
75
72
  - spec/smtp_url/parser_spec.rb
76
73
  - spec/smtp_url/railtie_spec.rb
77
74
  - spec/spec_helper.rb
78
- has_rdoc: