aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--actionpack/lib/action_controller/routing.rb5
-rw-r--r--actionpack/test/controller/routing_test.rb16
2 files changed, 11 insertions, 10 deletions
diff --git a/actionpack/lib/action_controller/routing.rb b/actionpack/lib/action_controller/routing.rb
index 687f8dc2bc..79ec617cc8 100644
--- a/actionpack/lib/action_controller/routing.rb
+++ b/actionpack/lib/action_controller/routing.rb
@@ -317,7 +317,7 @@ module ActionController
# Write and compile a +generate+ method for this Route.
def write_generation
# Build the main body of the generation
- body = "not_expired = true\n#{generation_extraction}\n#{generation_structure}"
+ body = "expired = false\n#{generation_extraction}\n#{generation_structure}"
# If we have conditions that must be tested first, nest the body inside an if
body = "if #{generation_requirements}\n#{body}\nend" if generation_requirements
@@ -671,7 +671,7 @@ module ActionController
end
end
def expiry_statement
- "not_expired, hash = false, options if not_expired && expire_on[:#{key}]"
+ "expired, hash = true, options if !expired && expire_on[:#{key}]"
end
def extraction_code
@@ -1190,7 +1190,6 @@ module ActionController
def generate(options, recall = {}, method=:generate)
named_route_name = options.delete(:use_route)
if named_route_name
- options = options.dup
named_route = named_routes[named_route_name]
options = named_route.parameter_shell.merge(options)
end
diff --git a/actionpack/test/controller/routing_test.rb b/actionpack/test/controller/routing_test.rb
index dc94e9920d..689a07fcbc 100644
--- a/actionpack/test/controller/routing_test.rb
+++ b/actionpack/test/controller/routing_test.rb
@@ -645,7 +645,7 @@ class DynamicSegmentTest < Test::Unit::TestCase
end
def test_expiry_should_not_trigger_once_expired
- not_expired = false
+ expired = true
hash = merged = {:a => 2, :b => 3}
options = {:b => 3}
expire_on = Hash.new { raise 'No!!!' }
@@ -656,18 +656,18 @@ class DynamicSegmentTest < Test::Unit::TestCase
end
def test_expiry_should_occur_according_to_expire_on
- not_expired = true
+ expired = false
hash = merged = {:a => 2, :b => 3}
options = {:b => 3}
expire_on = {:b => true, :a => false}
eval(segment.expiry_statement)
- assert not_expired
+ assert !expired
assert_equal({:a => 2, :b => 3}, hash)
expire_on = {:b => true, :a => true}
eval(segment.expiry_statement)
- assert ! not_expired
+ assert expired
assert_equal({:b => 3}, hash)
end
@@ -694,7 +694,8 @@ class DynamicSegmentTest < Test::Unit::TestCase
hash = merged = {:a => 'Hi', :b => '3'}
options = {:b => '3'}
a_value = nil
-
+ expired = true
+
eval(segment.extraction_code)
assert_equal 'Hi', a_value
end
@@ -704,13 +705,14 @@ class DynamicSegmentTest < Test::Unit::TestCase
hash = merged = {:b => '3'}
options = {:b => '3'}
a_value = nil
+ expired = true
eval(segment.extraction_code)
assert_equal 'hi', a_value
end
def test_extraction_code_should_perform_expiry
- not_expired = true
+ expired = false
hash = merged = {:a => 'Hi', :b => '3'}
options = {:b => '3'}
expire_on = {:a => true}
@@ -718,7 +720,7 @@ class DynamicSegmentTest < Test::Unit::TestCase
eval(segment.extraction_code)
assert_equal 'Hi', a_value
- assert ! not_expired
+ assert expired
assert_equal options, hash
end