rails-translate-routes 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -100,7 +100,7 @@ By default it generates the following url structure:
100
100
  /products/
101
101
  /es/productos/
102
102
  /contact/
103
- /es/contactos/
103
+ /es/contacto/
104
104
 
105
105
 
106
106
  <b>All languages prefixed</b>
@@ -112,7 +112,7 @@ In case you want the default languages to be scoped resulting in the following s
112
112
  /en/products/
113
113
  /es/productos/
114
114
  /en/contact/
115
- /es/contactos/
115
+ /es/contacto/
116
116
 
117
117
  You can specify the following option:
118
118
 
@@ -143,7 +143,7 @@ In case you don't want the language prefix in the url path because you have a do
143
143
  /products/
144
144
  /productos/
145
145
  /contact/
146
- /contactos/
146
+ /contacto/
147
147
 
148
148
  You can specify the following option:
149
149
 
@@ -153,12 +153,7 @@ Note that the 'no_prefixes' option will override the 'prefix_on_default_locale'
153
153
 
154
154
  <b>Namespaced backends</b>
155
155
 
156
- I usually build app backend in namespaced controllers, routes, ... using 'prefix_on_default_locale' will result in having several routes for backend too, for example:
157
-
158
- /en/admin/products
159
- /es/admin/productos
160
-
161
- In most cases you won't want to have the backend in several languages, you can set 'routes.rb' this way:
156
+ I usually build app backend in namespaced controllers, routes, ... using translated routes will result in duplicated routes or prefixed ones. In most cases you won't want to have the backend in several languages, you can set 'routes.rb' this way:
162
157
 
163
158
  SampleApp::Application.routes.draw do
164
159
  resources :products
@@ -174,6 +169,16 @@ In most cases you won't want to have the backend in several languages, you can s
174
169
  end
175
170
  end
176
171
 
172
+ == Testing
173
+
174
+ Once your app is locale-aware, the routes are dependent on the locale. This means that in functional tests, you need to explicitly include the locale like so:
175
+
176
+ get :show, :id => 1, :locale => 'en'
177
+
178
+ But in case you would prefer the locale to be implicit or simply because you don't want to add the locale param to all your previous functional tests, you can require the 'lib/controller_test_helper' file (typically from your test helper file) and then this will work fine:
179
+
180
+ get :show, :id => 1
181
+
177
182
  == TODO
178
183
 
179
184
  Help is welcome ;)
@@ -213,4 +218,4 @@ There are other two projects for translating routes in Rails (which I know of),
213
218
 
214
219
  == Other i18n related projects
215
220
 
216
- If you also need to translate models check out: https://github.com/francesc/rails-translate-models
221
+ If you also need to translate models check out: https://github.com/francesc/rails-translate-models
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.3
@@ -0,0 +1,19 @@
1
+ # This monkey patch injects the locale in the controller's params
2
+ # Reason: ActionController::TestCase doesn't support "default_url_options"
3
+ #
4
+ # Example: when the request you are testing needs the locale, e.g.
5
+ # get :show, :id => 1, :locale => 'en'
6
+ #
7
+ # if the monkey patch was loaded, you can just do:
8
+ # get :show, :id => 1
9
+
10
+ class ActionController::TestCase
11
+
12
+ module Behavior
13
+ def process_with_default_locale(action, parameters = nil, session = nil, flash = nil, http_method = 'GET')
14
+ parameters = { :locale => I18n.default_locale }.merge(parameters || {} )
15
+ process_without_default_locale(action, parameters, session, flash, http_method)
16
+ end
17
+ alias_method_chain :process, :default_locale
18
+ end
19
+ end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "rails-translate-routes"
8
- s.version = "0.0.2"
8
+ s.version = "0.0.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Francesc Pla"]
@@ -24,6 +24,7 @@ Gem::Specification.new do |s|
24
24
  "README.rdoc",
25
25
  "Rakefile",
26
26
  "VERSION",
27
+ "lib/controller_test_helper.rb",
27
28
  "lib/rails-translate-routes.rb",
28
29
  "rails-translate-routes.gemspec",
29
30
  "test/helper.rb",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-translate-routes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-01-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &70239182665940 !ruby/object:Gem::Requirement
16
+ requirement: &70338562849500 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70239182665940
24
+ version_requirements: *70338562849500
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &70239182665160 !ruby/object:Gem::Requirement
27
+ requirement: &70338562848820 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.0.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70239182665160
35
+ version_requirements: *70338562848820
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: jeweler
38
- requirement: &70239182664360 !ruby/object:Gem::Requirement
38
+ requirement: &70338562848100 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.6.4
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70239182664360
46
+ version_requirements: *70338562848100
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: sqlite3
49
- requirement: &70239182663440 !ruby/object:Gem::Requirement
49
+ requirement: &70338562847340 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70239182663440
57
+ version_requirements: *70338562847340
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: minitest
60
- requirement: &70239182662480 !ruby/object:Gem::Requirement
60
+ requirement: &70338562844740 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70239182662480
68
+ version_requirements: *70338562844740
69
69
  description: Simple gem to translate routes in Rails 3.x based on translate_routes
70
70
  email: francesc@francesc.net
71
71
  executables: []
@@ -81,6 +81,7 @@ files:
81
81
  - README.rdoc
82
82
  - Rakefile
83
83
  - VERSION
84
+ - lib/controller_test_helper.rb
84
85
  - lib/rails-translate-routes.rb
85
86
  - rails-translate-routes.gemspec
86
87
  - test/helper.rb
@@ -100,7 +101,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
100
101
  version: '0'
101
102
  segments:
102
103
  - 0
103
- hash: 2656952746989576753
104
+ hash: 958290384052730761
104
105
  required_rubygems_version: !ruby/object:Gem::Requirement
105
106
  none: false
106
107
  requirements: