bartt-ssl_requirement 1.3.1 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -32,11 +32,11 @@ Example:
32
32
  end
33
33
  end
34
34
 
35
- If a majority (or all) of your actions require SSL, then use ssl_exceptions instead of ssl_required.
36
- You can list out the actions that you do NOT want to be SSL protected. Calling ssl_exceptions without
35
+ If a majority (or all) of your actions require SSL, then use `ssl_exceptions` instead of `ssl_required`.
36
+ You can list out the actions that you do NOT want to be SSL protected. Calling `ssl_exceptions` without
37
37
  any actions listed will make ALL actions SSL protected.
38
38
 
39
- To allow SSL for any action use ssl_allowed and pass in :all
39
+ To allow SSL for any action `use ssl_allowed` and pass in `:all`
40
40
 
41
41
  Example:
42
42
 
@@ -47,11 +47,11 @@ Example:
47
47
  ssl_allowed :all
48
48
  end
49
49
 
50
- You can overwrite the protected method ssl_required? to rely on other things
50
+ You can overwrite the protected method `ssl_required?` to rely on other things
51
51
  than just the declarative specification. Say, only premium accounts get SSL.
52
52
 
53
53
  For SSL domains that differ from the domain of the redirecting site, add the
54
- following code to development.rb / test.rb / production.rb:
54
+ following code to `development.rb` / `test.rb` / `production.rb`:
55
55
 
56
56
  # Redirects to https://secure.example.com instead of the default
57
57
  # https://www.example.com.
@@ -60,7 +60,7 @@ following code to development.rb / test.rb / production.rb:
60
60
  end
61
61
 
62
62
  For non-SSL domains that differ from domain of redirecting site, add the
63
- following code to development.rb / test.rb / production.rb:
63
+ following code to `development.rb` / `test.rb` / `production.rb`:
64
64
 
65
65
  # Redirects to http://nonsecure.example.com instead of the default
66
66
  # http://www.example.com.
@@ -68,7 +68,7 @@ following code to development.rb / test.rb / production.rb:
68
68
  SslRequirement.non_ssl_host = 'nonsecure.example.com'
69
69
  end
70
70
 
71
- You can also use a Proc to determine the ssl_host or non_ssl_host on the fly:
71
+ You can also use a Proc to determine the `ssl_host` or `non_ssl_host` on the fly:
72
72
 
73
73
  config.after_initialize do
74
74
  SslRequirement.ssl_host = Proc.new do
@@ -76,7 +76,7 @@ You can also use a Proc to determine the ssl_host or non_ssl_host on the fly:
76
76
  end
77
77
  end
78
78
 
79
- You are able to turn disable ssl redirects by adding the following environment configuration file:
79
+ You are able to turn off ssl redirects by adding the following environment configuration file:
80
80
 
81
81
  SslRequirement.disable_ssl_check = true
82
82
 
@@ -85,24 +85,24 @@ addng the following to the environment configuration file:
85
85
 
86
86
  SslRequirement.redirect_status = :moved_permanently
87
87
 
88
- P.S.: Beware when you include the SslRequirement module. At the time of
89
- inclusion, it'll add the before_filter that validates the declarations. Some
90
- times you'll want to run other before_filters before that. They should then be
88
+ P.S.: Beware when you include the `SslRequirement` module. At the time of
89
+ inclusion, it'll add the `before_filter` that validates the declarations. Some
90
+ times you'll want to run other `before_filter`s before that. They should then be
91
91
  declared ahead of including this module.
92
92
 
93
93
  SSL URL Helper
94
94
  ==============
95
- This plugin also adds a helper a :secure option to url_for and named_routes. This property
96
- allows you to set a url as secure or not secure. It uses the disable_ssl_check to determine
95
+ This plugin also adds a helper a `:secure` option to `url_for` and `named_routes`. This property
96
+ allows you to set a url as secure or not secure. It uses the `disable_ssl_check` to determine
97
97
  if the option should be ignored or not so you can develop as normal. It also
98
- will obey if you override SslRequirement.ssl_host or
99
- SslRequirement.non_ssl_host (see above)
98
+ will obey if you override `SslRequirement.ssl_host` or
99
+ `SslRequirement.non_ssl_host` (see above)
100
100
 
101
101
  Here is an example of creating a secure url:
102
102
 
103
103
  <%= url_for(:controller => "c", :action => "a", :secure => true) %>
104
104
 
105
- If disable_ssl_check returns false url_for will return the following:
105
+ If `disable_ssl_check` returns false `url_for` will return the following:
106
106
 
107
107
  https://yoursite.com/c/a
108
108
 
@@ -122,32 +122,6 @@ Furthermore, you can use the secure option in a named route to create a secure f
122
122
  </p>
123
123
  <% end -%>
124
124
 
125
- Testing with Shoulda
126
- ====================
127
-
128
- If you are using Shoulda, a few contexts and macros are provided:
129
-
130
- class RegistrationsControllerTest < ActionController::TestCase
131
- without_ssl_context do
132
- context "GET to :new" do
133
- setup do
134
- get :new
135
- end
136
- should_redirect_to_ssl
137
- end
138
- end
139
-
140
- with_ssl_context do
141
- context "GET to :new" do
142
- setup do
143
- get :new
144
- end
145
- # your usual testing goes here
146
- end
147
- end
148
- end
149
-
150
-
151
125
  Copyright
152
126
  =========
153
127
 
data/Rakefile CHANGED
@@ -5,20 +5,6 @@ require 'rake/testtask'
5
5
  desc "Run the unit tests"
6
6
  task :default => 'test'
7
7
 
8
- begin
9
- require 'jeweler'
10
- Jeweler::Tasks.new do |gemspec|
11
- gemspec.name = "bartt-ssl_requirement"
12
- gemspec.summary = "Allow controller actions to force SSL on specific parts of the site."
13
- gemspec.description = "SSL requirement adds a declarative way of specifying that certain actions should only be allowed to run under SSL, and if they're accessed without it, they should be redirected."
14
- gemspec.email = 'bart@thecodemill.biz'
15
- gemspec.homepage = 'http://github.com/bartt/ssl_requirement'
16
- gemspec.authors = ['RailsJedi', 'David Heinemeier Hansson', 'jcnetdev', 'bcurren', 'bmpercy','revo','nathany', 'bartt', 'Thorben Schröder']
17
- end
18
- rescue LoadError
19
- puts "Jeweler not available. Install it with: gem install jeweler"
20
- end
21
-
22
8
  Rake::TestTask.new(:test) do |t|
23
9
  t.pattern = 'test/**/*_test.rb'
24
10
  t.ruby_opts << '-rubygems'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.1
1
+ 1.4.0
@@ -1,51 +1,27 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
1
  # -*- encoding: utf-8 -*-
5
-
6
2
  Gem::Specification.new do |s|
7
- s.name = %q{bartt-ssl_requirement}
8
- s.version = "1.3.1"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["RailsJedi", "David Heinemeier Hansson", "jcnetdev", "bcurren", "bmpercy", "revo", "nathany", "bartt", "Thorben Schr\303\266der"]
12
- s.date = %q{2011-09-06}
13
- s.description = %q{SSL requirement adds a declarative way of specifying that certain actions should only be allowed to run under SSL, and if they're accessed without it, they should be redirected.}
14
- s.email = %q{bart@thecodemill.biz}
3
+ s.name = "bartt-ssl_requirement"
4
+ s.version = `cat VERSION`.strip
5
+ s.required_rubygems_version = ">= 1.3.6"
6
+ s.authors = [%q{RailsJedi}, %q{David Heinemeier Hansson}, %q{jcnetdev}, %q{bcurren}, %q{bmpercy}, %q{revo}, %q{nathany}, %q{bartt}, %q{Thorben Schröder}]
7
+ s.homepage = "https://github.com/bartt/ssl_requirement"
8
+ s.summary = "Allow controller actions to force SSL on specific parts of the site."
9
+ s.description = "SSL requirement adds a declarative way of specifying that certain actions should only be allowed to run under SSL, and if they're accessed without it, they should be redirected."
10
+ s.email = "bart@thecodemill.biz"
15
11
  s.extra_rdoc_files = [
16
- "README"
12
+ "README.md"
17
13
  ]
18
14
  s.files = [
19
- ".gitignore",
20
- "README",
21
- "Rakefile",
22
- "VERSION",
23
- "bartt-ssl_requirement.gemspec",
24
- "init.rb",
25
- "lib/ssl_requirement.rb",
26
- "lib/url_for.rb",
27
- "rails/init.rb",
28
- "shoulda_macros/ssl_requirement_macros.rb",
29
- "test/ssl_requirement_test.rb",
30
- "test/url_for_test.rb"
31
- ]
32
- s.homepage = %q{http://github.com/bartt/ssl_requirement}
33
- s.rdoc_options = ["--charset=UTF-8"]
34
- s.require_paths = ["lib"]
35
- s.rubygems_version = %q{1.6.2}
36
- s.summary = %q{Allow controller actions to force SSL on specific parts of the site.}
37
- s.test_files = [
15
+ "README.md",
16
+ "Rakefile",
17
+ "VERSION",
18
+ "bartt-ssl_requirement.gemspec",
19
+ "init.rb",
20
+ "lib/ssl_requirement.rb",
21
+ "lib/url_for.rb",
22
+ "rails/init.rb",
38
23
  "test/ssl_requirement_test.rb",
39
- "test/url_for_test.rb"
24
+ "test/url_for_test.rb"
40
25
  ]
41
-
42
- if s.respond_to? :specification_version then
43
- s.specification_version = 3
44
-
45
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
46
- else
47
- end
48
- else
49
- end
50
- end
51
-
26
+ s.require_path = "lib"
27
+ end
@@ -1,4 +1,5 @@
1
1
  require "#{File.dirname(__FILE__)}/url_for"
2
+ require "active_support/core_ext/class"
2
3
 
3
4
  # Copyright (c) 2005 David Heinemeier Hansson
4
5
  #
@@ -29,7 +30,7 @@ module SslRequirement
29
30
  end
30
31
 
31
32
  def self.ssl_port
32
- @@ssl_port ||= 433
33
+ @@ssl_port ||= 443
33
34
  end
34
35
 
35
36
  def self.non_ssl_host
@@ -127,7 +128,7 @@ module SslRequirement
127
128
  request_port = request.port
128
129
 
129
130
  if ssl
130
- "#{(ssl_host || request_host)}#{ssl_port || determine_port_string(request_port)}"
131
+ "#{(ssl_host || request_host)}#{determine_port_string(request_port || ssl_port)}"
131
132
  else
132
133
  "#{(non_ssl_host || request_host)}#{determine_port_string(request_port)}"
133
134
  end
@@ -1,4 +1,5 @@
1
1
  require 'action_dispatch/routing/route_set'
2
+ require 'active_support/core_ext/module/aliasing'
2
3
 
3
4
  module ActionDispatch
4
5
  module Routing
@@ -44,6 +45,9 @@ module ActionDispatch
44
45
  end
45
46
 
46
47
  # want with_secure_option to get run first (so chain it last)
48
+ # Can't use method overriding using modules as RoutSet#url_for is defined directly in
49
+ # the class and not in a (Base) module. See http://stackoverflow.com/questions/3689736/rails-3-alias-method-chain-still-used
50
+ # for a good discussion.
47
51
  alias_method_chain :url_for, :non_ssl_host
48
52
  alias_method_chain :url_for, :secure_option
49
53
  end
@@ -1,47 +1,24 @@
1
- require 'set'
2
- require 'rubygems'
3
- require 'active_support'
4
- begin
5
- require 'action_controller'
6
- rescue LoadError
7
- if ENV['ACTIONCONTROLLER_PATH'].nil?
8
- abort <<MSG
9
- Please set the ACTIONCONTROLLER_PATH environment variable to the directory
10
- containing the action_controller.rb file.
11
- MSG
12
- else
13
- $LOAD_PATH.unshift ENV['ACTIONCONTROLLER_PATH']
14
- begin
15
- require 'action_controller'
16
- rescue LoadError
17
- abort "ActionController could not be found."
18
- end
19
- end
20
- end
21
- $:.unshift(File.dirname(__FILE__) + '/../lib')
22
-
23
- require 'action_dispatch/testing/test_process'
24
1
  require 'test/unit'
25
- require "ssl_requirement"
2
+ require 'action_controller'
26
3
 
27
- ActionController::Base.logger = nil
28
- ActionController::Routing::Routes.reload rescue nil
4
+ $:.unshift(File.dirname(__FILE__) + '/../lib')
5
+ require "ssl_requirement"
29
6
 
30
7
  # several test controllers to cover different combinations of requiring/
31
8
  # allowing/exceptions-ing SSL for controller actions
32
9
 
33
- # this first controller modifies the flash in every action so that flash
34
- # set in set_flash is eventually expired (see NOTE below...)
35
-
36
10
  ROUTES = ActionDispatch::Routing::RouteSet.new
37
11
  ROUTES.draw do
38
12
  match ':controller(/:action(/:id(.:format)))'
39
13
  end
40
14
  ROUTES.finalize!
41
15
 
16
+ # this first controller modifies the flash in every action so that flash
17
+ # set in set_flash is eventually expired (see NOTE below...)
42
18
 
43
19
  class SslRequirementController < ActionController::Base
44
20
  include SslRequirement
21
+ include ROUTES.url_helpers
45
22
 
46
23
  ssl_required :a, :b
47
24
  ssl_allowed :c
@@ -78,6 +55,7 @@ end
78
55
 
79
56
  class SslExceptionController < ActionController::Base
80
57
  include SslRequirement
58
+ include ROUTES.url_helpers
81
59
 
82
60
  ssl_required :a
83
61
  ssl_exceptions :b
@@ -106,6 +84,7 @@ end
106
84
 
107
85
  class SslAllActionsController < ActionController::Base
108
86
  include SslRequirement
87
+ include ROUTES.url_helpers
109
88
 
110
89
  ssl_exceptions
111
90
 
@@ -120,6 +99,7 @@ end
120
99
 
121
100
  class SslAllowAllActionsController < ActionController::Base
122
101
  include SslRequirement
102
+ include ROUTES.url_helpers
123
103
 
124
104
  ssl_allowed :all
125
105
 
@@ -161,8 +141,7 @@ end
161
141
 
162
142
  class SslRequirementTest < ActionController::TestCase
163
143
  def setup
164
- @routes = ROUTES
165
-
144
+ @routes = ROUTES
166
145
  @controller = SslRequirementController.new
167
146
  @ssl_host_override = 'www.example.com:80443'
168
147
  @non_ssl_host_override = 'www.example.com:8080'
@@ -1,85 +1,77 @@
1
1
  $:.unshift(File.dirname(__FILE__) + '/../lib')
2
2
 
3
- require 'rubygems'
4
3
  require 'test/unit'
5
4
  require 'action_controller'
6
- require 'action_controller/test_process'
7
5
 
8
6
  require "ssl_requirement"
9
7
 
10
- # Show backtraces for deprecated behavior for quicker cleanup.
11
- ActiveSupport::Deprecation.debug = true
12
- ActionController::Base.logger = nil
13
- ActionController::Routing::Routes.reload rescue nil
14
-
15
8
  class UrlRewriterTest < Test::Unit::TestCase
16
9
  def setup
17
- @request = ActionController::TestRequest.new
18
- @params = {}
19
- @rewriter = ActionController::UrlRewriter.new(@request, @params)
20
-
10
+ @routes = ActionDispatch::Routing::RouteSet.new
11
+ @routes.default_url_options[:host] = 'test.host'
12
+ @routes.draw do
13
+ match ':controller(/:action(/:id(.:format)))'
14
+ end
21
15
  @ssl_host_override = "www.example.com:80443"
22
16
  @non_ssl_host_override = "www.example.com:8080"
23
17
 
24
18
  SslRequirement.ssl_host = nil
25
19
  SslRequirement.non_ssl_host = nil
26
-
27
- # puts @url_rewriter.to_s
28
20
  end
29
21
 
30
22
  def test_rewrite_secure_false
31
23
  SslRequirement.disable_ssl_check = false
32
24
  assert_equal('http://test.host/c/a',
33
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => false)
25
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => false)
34
26
  )
35
27
  assert_equal('/c/a',
36
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => false,
28
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => false,
37
29
  :only_path => true)
38
30
  )
39
-
31
+
40
32
  SslRequirement.disable_ssl_check = true
41
33
  assert_equal('http://test.host/c/a',
42
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => false)
34
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => false)
43
35
  )
44
36
  assert_equal('/c/a',
45
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => false,
37
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => false,
46
38
  :only_path => true)
47
39
  )
48
40
  end
49
-
41
+
50
42
  def test_rewrite_secure_true
51
43
  SslRequirement.disable_ssl_check = false
52
44
  assert_equal('https://test.host/c/a',
53
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => true)
45
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => true)
54
46
  )
55
47
  assert_equal('https://test.host/c/a',
56
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => true, :only_path => true)
48
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => true, :only_path => true)
57
49
  )
58
-
50
+
59
51
  SslRequirement.disable_ssl_check = true
60
52
  assert_equal('http://test.host/c/a',
61
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => true)
53
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => true)
62
54
  )
63
55
  assert_equal('/c/a',
64
- @rewriter.rewrite(:controller => 'c', :action => 'a', :secure => true, :only_path => true)
56
+ @routes.url_for(:controller => 'c', :action => 'a', :secure => true, :only_path => true)
65
57
  )
66
58
  end
67
-
59
+
68
60
  def test_rewrite_secure_not_specified
69
61
  SslRequirement.disable_ssl_check = false
70
62
  assert_equal('http://test.host/c/a',
71
- @rewriter.rewrite(:controller => 'c', :action => 'a')
63
+ @routes.url_for(:controller => 'c', :action => 'a')
72
64
  )
73
65
  assert_equal('/c/a',
74
- @rewriter.rewrite(:controller => 'c', :action => 'a', :only_path => true)
66
+ @routes.url_for(:controller => 'c', :action => 'a', :only_path => true)
75
67
  )
76
-
68
+
77
69
  SslRequirement.disable_ssl_check = true
78
70
  assert_equal('http://test.host/c/a',
79
- @rewriter.rewrite(:controller => 'c', :action => 'a')
71
+ @routes.url_for(:controller => 'c', :action => 'a')
80
72
  )
81
73
  assert_equal('/c/a',
82
- @rewriter.rewrite(:controller => 'c', :action => 'a', :only_path => true)
74
+ @routes.url_for(:controller => 'c', :action => 'a', :only_path => true)
83
75
  )
84
76
  end
85
77
 
@@ -89,10 +81,10 @@ class UrlRewriterTest < Test::Unit::TestCase
89
81
  SslRequirement.disable_ssl_check = false
90
82
  SslRequirement.ssl_host = @ssl_host_override
91
83
  assert_equal("https://#{@ssl_host_override}/c/a",
92
- @rewriter.rewrite(:controller => 'c', :action => 'a',
84
+ @routes.url_for(:controller => 'c', :action => 'a',
93
85
  :secure => true))
94
86
  assert_equal("https://#{@ssl_host_override}/c/a",
95
- @rewriter.rewrite(:controller => 'c', :action => 'a',
87
+ @routes.url_for(:controller => 'c', :action => 'a',
96
88
  :secure => true, :only_path => true))
97
89
  SslRequirement.ssl_host = nil
98
90
  end
@@ -103,17 +95,17 @@ class UrlRewriterTest < Test::Unit::TestCase
103
95
 
104
96
  # with secure option
105
97
  assert_equal("http://#{@non_ssl_host_override}/c/a",
106
- @rewriter.rewrite(:controller => 'c', :action => 'a',
98
+ @routes.url_for(:controller => 'c', :action => 'a',
107
99
  :secure => false))
108
100
  assert_equal("/c/a",
109
- @rewriter.rewrite(:controller => 'c', :action => 'a',
101
+ @routes.url_for(:controller => 'c', :action => 'a',
110
102
  :secure => false, :only_path => true))
111
103
 
112
104
  # without secure option
113
105
  assert_equal("http://#{@non_ssl_host_override}/c/a",
114
- @rewriter.rewrite(:controller => 'c', :action => 'a'))
106
+ @routes.url_for(:controller => 'c', :action => 'a'))
115
107
  assert_equal("/c/a",
116
- @rewriter.rewrite(:controller => 'c', :action => 'a',
108
+ @routes.url_for(:controller => 'c', :action => 'a',
117
109
  :only_path => true))
118
110
  SslRequirement.non_ssl_host = nil
119
111
  end
@@ -124,30 +116,30 @@ class UrlRewriterTest < Test::Unit::TestCase
124
116
 
125
117
  # with secure option
126
118
  assert_equal("http://#{@non_ssl_host_override}/c/a",
127
- @rewriter.rewrite(:controller => 'c', :action => 'a',
119
+ @routes.url_for(:controller => 'c', :action => 'a',
128
120
  :secure => false))
129
121
  assert_equal("/c/a",
130
- @rewriter.rewrite(:controller => 'c', :action => 'a',
122
+ @routes.url_for(:controller => 'c', :action => 'a',
131
123
  :secure => false, :only_path => true))
132
124
 
133
125
  # without secure option
134
126
  assert_equal("http://#{@non_ssl_host_override}/c/a",
135
- @rewriter.rewrite(:controller => 'c', :action => 'a'))
127
+ @routes.url_for(:controller => 'c', :action => 'a'))
136
128
  assert_equal("/c/a",
137
- @rewriter.rewrite(:controller => 'c', :action => 'a',
129
+ @routes.url_for(:controller => 'c', :action => 'a',
138
130
  :only_path => true))
139
131
  SslRequirement.non_ssl_host = nil
140
132
  end
141
-
133
+
142
134
  # tests for ssl_host overriding with Procs
143
-
135
+
144
136
  def test_rewrite_secure_with_ssl_host_proc
145
137
  SslRequirement.disable_ssl_check = false
146
138
  SslRequirement.ssl_host = Proc.new do
147
139
  @ssl_host_override
148
140
  end
149
141
  assert_equal("https://#{@ssl_host_override}/c/a",
150
- @rewriter.rewrite(:controller => 'c', :action => 'a',
142
+ @routes.url_for(:controller => 'c', :action => 'a',
151
143
  :secure => true))
152
144
  SslRequirement.ssl_host = nil
153
145
  end
@@ -159,11 +151,11 @@ class UrlRewriterTest < Test::Unit::TestCase
159
151
  end
160
152
  # with secure option
161
153
  assert_equal("http://#{@non_ssl_host_override}/c/a",
162
- @rewriter.rewrite(:controller => 'c', :action => 'a',
154
+ @routes.url_for(:controller => 'c', :action => 'a',
163
155
  :secure => false))
164
156
  # without secure option
165
157
  assert_equal("http://#{@non_ssl_host_override}/c/a",
166
- @rewriter.rewrite(:controller => 'c', :action => 'a'))
158
+ @routes.url_for(:controller => 'c', :action => 'a'))
167
159
  SslRequirement.non_ssl_host = nil
168
160
  end
169
161
  end
metadata CHANGED
@@ -1,15 +1,10 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: bartt-ssl_requirement
3
- version: !ruby/object:Gem::Version
4
- hash: 25
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.4.0
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 3
9
- - 1
10
- version: 1.3.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - RailsJedi
14
9
  - David Heinemeier Hansson
15
10
  - jcnetdev
@@ -18,26 +13,22 @@ authors:
18
13
  - revo
19
14
  - nathany
20
15
  - bartt
21
- - "Thorben Schr\xC3\xB6der"
16
+ - Thorben Schröder
22
17
  autorequire:
23
18
  bindir: bin
24
19
  cert_chain: []
25
-
26
- date: 2011-09-06 00:00:00 -07:00
27
- default_executable:
20
+ date: 2011-12-22 00:00:00.000000000 Z
28
21
  dependencies: []
29
-
30
- description: SSL requirement adds a declarative way of specifying that certain actions should only be allowed to run under SSL, and if they're accessed without it, they should be redirected.
22
+ description: SSL requirement adds a declarative way of specifying that certain actions
23
+ should only be allowed to run under SSL, and if they're accessed without it, they
24
+ should be redirected.
31
25
  email: bart@thecodemill.biz
32
26
  executables: []
33
-
34
27
  extensions: []
35
-
36
- extra_rdoc_files:
37
- - README
38
- files:
39
- - .gitignore
40
- - README
28
+ extra_rdoc_files:
29
+ - README.md
30
+ files:
31
+ - README.md
41
32
  - Rakefile
42
33
  - VERSION
43
34
  - bartt-ssl_requirement.gemspec
@@ -45,43 +36,30 @@ files:
45
36
  - lib/ssl_requirement.rb
46
37
  - lib/url_for.rb
47
38
  - rails/init.rb
48
- - shoulda_macros/ssl_requirement_macros.rb
49
39
  - test/ssl_requirement_test.rb
50
40
  - test/url_for_test.rb
51
- has_rdoc: true
52
- homepage: http://github.com/bartt/ssl_requirement
41
+ homepage: https://github.com/bartt/ssl_requirement
53
42
  licenses: []
54
-
55
43
  post_install_message:
56
- rdoc_options:
57
- - --charset=UTF-8
58
- require_paths:
44
+ rdoc_options: []
45
+ require_paths:
59
46
  - lib
60
- required_ruby_version: !ruby/object:Gem::Requirement
47
+ required_ruby_version: !ruby/object:Gem::Requirement
61
48
  none: false
62
- requirements:
63
- - - ">="
64
- - !ruby/object:Gem::Version
65
- hash: 3
66
- segments:
67
- - 0
68
- version: "0"
69
- required_rubygems_version: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - ! '>='
51
+ - !ruby/object:Gem::Version
52
+ version: '0'
53
+ required_rubygems_version: !ruby/object:Gem::Requirement
70
54
  none: false
71
- requirements:
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- hash: 3
75
- segments:
76
- - 0
77
- version: "0"
55
+ requirements:
56
+ - - ! '>='
57
+ - !ruby/object:Gem::Version
58
+ version: 1.3.6
78
59
  requirements: []
79
-
80
60
  rubyforge_project:
81
- rubygems_version: 1.6.2
61
+ rubygems_version: 1.8.10
82
62
  signing_key:
83
63
  specification_version: 3
84
64
  summary: Allow controller actions to force SSL on specific parts of the site.
85
- test_files:
86
- - test/ssl_requirement_test.rb
87
- - test/url_for_test.rb
65
+ test_files: []
data/.gitignore DELETED
@@ -1 +0,0 @@
1
- *.gem
@@ -1,31 +0,0 @@
1
- Test::Unit::TestCase.class_eval do
2
- def self.without_ssl_context
3
- context "without ssl" do
4
- setup do
5
- @request.env['HTTPS'] = nil
6
- end
7
-
8
- context "" do
9
- yield
10
- end
11
- end
12
- end
13
-
14
- def self.with_ssl_context
15
- context "with ssl" do
16
- setup do
17
- @request.env['HTTPS'] = 'on'
18
- end
19
-
20
- context "" do
21
- yield
22
- end
23
- end
24
- end
25
-
26
- def self.should_redirect_to_ssl
27
- should 'redirect to ssl' do
28
- assert_redirected_to "https://" + @request.host + @request.request_uri
29
- end
30
- end
31
- end