diff options
author | Marcel Molina <marcel@vernix.org> | 2007-05-26 17:29:23 +0000 |
---|---|---|
committer | Marcel Molina <marcel@vernix.org> | 2007-05-26 17:29:23 +0000 |
commit | 42ebf559cc6ed80fa3bf55ecc1dea7c9e593f45e (patch) | |
tree | 234c07005e9539121aa6d3ec1ddb2b8ffd7b341a /actionpack/lib/action_controller/assertions/selector_assertions.rb | |
parent | dc4d23f2d736a81be36edb0abf42774634741bf3 (diff) | |
download | rails-42ebf559cc6ed80fa3bf55ecc1dea7c9e593f45e.tar.gz rails-42ebf559cc6ed80fa3bf55ecc1dea7c9e593f45e.tar.bz2 rails-42ebf559cc6ed80fa3bf55ecc1dea7c9e593f45e.zip |
Add support for assert_select_rjs with :show and :hide. #7780 [dchelimsky]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6861 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib/action_controller/assertions/selector_assertions.rb')
-rw-r--r-- | actionpack/lib/action_controller/assertions/selector_assertions.rb | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/actionpack/lib/action_controller/assertions/selector_assertions.rb b/actionpack/lib/action_controller/assertions/selector_assertions.rb index 048bba153f..8bb3402668 100644 --- a/actionpack/lib/action_controller/assertions/selector_assertions.rb +++ b/actionpack/lib/action_controller/assertions/selector_assertions.rb @@ -325,8 +325,8 @@ module ActionController # that update or insert an element with that identifier. # # Use the first argument to narrow down assertions to only statements - # of that type. Possible values are +:replace+, +:replace_html+, +:remove+ and - # +:insert_html+. + # of that type. Possible values are +:replace+, +:replace_html+, +:show+, + # +:hide+, +:toggle+, +:remove+ and +:insert_html+. # # Use the argument +:insert+ followed by an insertion position to narrow # down the assertion to only statements that insert elements in that @@ -414,7 +414,7 @@ module ActionController case rjs_type when :chained_replace, :chained_replace_html Regexp.new("\\$\\(\"#{id}\"\\)#{statement}\\(#{RJS_PATTERN_HTML}\\)", Regexp::MULTILINE) - when :remove + when :remove, :show, :hide, :toggle Regexp.new("#{statement}\\(\"#{id}\"\\)") else Regexp.new("#{statement}\\(\"#{id}\", #{RJS_PATTERN_HTML}\\)", Regexp::MULTILINE) @@ -423,7 +423,7 @@ module ActionController # Duplicate the body since the next step involves destroying it. matches = nil case rjs_type - when :remove + when :remove, :show, :hide, :toggle matches = @response.body.match(pattern) else @response.body.gsub(pattern) do |match| @@ -434,7 +434,7 @@ module ActionController end end if matches - if block_given? && rjs_type != :remove + if block_given? && !([:remove, :show, :hide, :toggle].include? rjs_type) begin in_scope, @selected = @selected, matches yield matches @@ -541,6 +541,9 @@ module ActionController :chained_replace => /\.replace/, :chained_replace_html => /\.update/, :remove => /Element\.remove/, + :show => /Element\.show/, + :hide => /Element\.hide/, + :toggle => /Element\.toggle/ } RJS_INSERTIONS = [:top, :bottom, :before, :after] RJS_INSERTIONS.each do |insertion| |