aboutsummaryrefslogtreecommitdiffstats
path: root/actionview
Commit message (Collapse)AuthorAgeFilesLines
* Fix how file_ and password_field_tag edit optionsclaudiob2014-10-152-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the behavior of `file_field_tag` and `password_field_tag` when invoked with a hash of options. These two helpers are different from all the other ones in that they modify the options hash passed as a parameter, whereas all the other helpers duplicate it before updating it. The result is that *bad things* can happen if the user re-uses the same hash. For instance, users who write the following code to display a file field followed by a text field (both with the same class): ```rhtml <% options = {class: 'important'} %> <%= file_field_tag 'Upload', options %> <%= text_field_tag 'Name', options %> ``` would instead see **two file fields!** ```html <input class="important" id="Upload" name="Upload" type="file"> <input class="important" id="Name" name="Name" type="file" value="value"> ``` This PR replaces `update` with `merge` in the code of the two helpers, fixing the issue above. The included test verifies the change, since it passes after this PR, but fails before with the following error: ``` Expected: <input type="text" name="title" id="title" value="Hello!" class="important" /> Actual: <input type="password" name="title" id="title" value="Hello!" class="important" /> ```
* Merge pull request #17271 from claudiob/remove-duplicate-stringify-keysRafael Mendonça França2014-10-151-13/+13
|\ | | | | Remove duplicate stringify_keys in text_field_tag and number_field_tag
| * Remove duplicate stringify_keys in text_field_tagclaudiob2014-10-151-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All the methods that invoke `text_field_tag` (such as `hidden_field_tag`) and all the methods that invoke `number_field_tag` (that is `range_field_tag`) do not need to call `stringify_keys` on their `options` parameter since the `text_field_tag` method [is already doing it internally](https://github.com/claudiob/rails/blob/4159134524f4c78d008eef9d9a17f73a3172dcc8/actionview/lib/action_view/helpers/form_tag_helper.rb#L182): ```ruby def text_field_tag(name, value = nil, options = {}) tag :input, { "type" => "text", "name" => name, "id" => sanitize_to_id(name), "value" => value }.update(options.stringify_keys) end ``` and `number_field_tag` is [already doing it internally](https://github.com/claudiob/rails/blob/e3207bdbba55f3806441f22b175557579bc0b051/actionview/lib/action_view/helpers/form_tag_helper.rb#L780) as well: ```ruby def number_field_tag(name, value = nil, options = {}) options = options.stringify_keys ... end [Note #1: My code uses `merge` to respect the existing behavior of duplicating the `options` hash before updating its keys, see https://github.com/rails/rails/pull/17096#issuecomment-57223827] [Note #2: My code uses symbols instead of strings (e.g.: `:hidden`) to look forward to future version of Ruby/Raiks (GC symbols); the result of the method, however, is the same, because the symbols are stringified inside `text_field_tag`] [Note #3: I had previously created a similar PR #17096 but decided to split it into multiple PRs given the feedback received in the comments]
* | Replace Enumerable#reverse.each with Enumerable#reverse_eachErik Michaels-Ober2014-10-131-1/+1
|/
* remove un-needed sortschneems2014-10-073-10/+9
| | | | | | HTML doesn't care what order the elements are rendered in, so why should we? Updates tests to use proper `assert_dom_equal` instead of `assert_equal` /cc @jeremy
* Merge pull request #17146 from divineforest/active-record-gsub-to-trRafael Mendonça França2014-10-071-1/+1
|\ | | | | Change `gsub` to `tr` where possible
| * Change `gsub` to `tr` where possibleAlexander Balashov2014-10-061-1/+1
| |
* | Use #tr instead of #gsub where possibleAlex Weidmann2014-10-022-2/+2
|/
* Merge pull request #17088 from robin850/jruby-devRafael Mendonça França2014-10-011-0/+3
|\ | | | | Follow up to #16613
| * Follow up to #16613Robin Dupret2014-09-281-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Since we want this flag to be enabled anytime we are running the tests under JRuby, let's enable this at the Rakefile level so people get the performance boost on their local checkout. Moreover, we avoid having to update this particular line anytime the option changes on the JRuby side. The only drawback is that we have to define it in every Rakefile but there's no big deal, this is already the case for other options.
* | use tr instead of gsub when possibleAdrian Rangel2014-10-011-1/+1
| |
* | Added processing of `nil` to `highlight` helper methodigor042014-09-302-1/+5
| |
* | Parse HTML as document fragment.Kasper Timm Hansen2014-09-291-1/+1
|/ | | | This is to match the changes in Rails Dom Testing rails/rails-dom-testing#20.
* Preparing for 4.2.0.beta2 releaseRafael Mendonça França2014-09-261-1/+1
|
* Don’t require already required modulesclaudiofullscreen2014-09-261-2/+0
| | | | | | | | | abstract_unit.rb requires `action_controller` which [already includes the following lines of code](https://github.com/rails/rails/blob/64fcdce1d3a6a8768ab17f3be144270456814f82/actionpack/lib/action_controller.rb#L2L3): ```ruby require 'abstract_controller' require 'action_dispatch' ```
* Add +variants to ActionView::FileSystemResolver documentation.Felipe Oliveira2014-09-261-3/+4
|
* Merge pull request #17058 from eval/issue-17057Rafael Mendonça França2014-09-251-0/+9
|\ | | | | | | Remove internal options from query string of paths
| * Remove internal options from query string of pathsGert Goet2014-09-251-0/+9
| | | | | | | | Fixes #17057
* | Revert "Revert "Merge pull request #16888 from jejacks0n/render_template""Godfrey Chan2014-09-263-20/+16
| | | | | | | | This reverts commit 585e75696b31395aee895e5366e331c07c3f5ee1.
* | Use released rails-html-sanitizer and rails-deprecated_sanitizerGodfrey Chan2014-09-261-1/+1
| |
* | Use released rails-dom-testingRafael Mendonça França2014-09-251-1/+1
|/
* Revert "Merge pull request #16888 from jejacks0n/render_template"Godfrey Chan2014-09-233-16/+20
| | | | | | | This reverts commit 07635a74b5ee08dcba3f6617def6230d8f114fe5, reversing changes made to 1b5f61a025b6ce1ee52b7148e3ed2a9acbde28b9. Reason: it's not ready :bomb:, see https://github.com/rails/rails/pull/16888#issuecomment-56400816
* CHANGELOG for 07635a7Godfrey Chan2014-09-231-0/+9
|
* Merge pull request #16888 from jejacks0n/render_templateGodfrey Chan2014-09-232-20/+7
|\ | | | | | | Changes default render behavior from file to template.
| * Changes default render behavior from file to template.jejacks0n2014-09-112-20/+7
| |
* | Remove wrapping <div> in form helpers from docclaudiob2014-09-222-35/+19
| | | | | | | | | | | | | | | | | | | | [ci skip] 89ff1f8 and 1de258e6 removed from the HTML generated by the form helpers the <div> that was wrapping the field elements inside the <form>. This commit updates the documentation of the methods to reflect the two commits above.
* | [ci skip] ActionView and ActionMailer CHANGELOG docs fixesAkshay Vishnoi2014-09-181-4/+4
| |
* | Merge pull request #16790 from cirosantilli/explain-erb-space-removalRafael Mendonça França2014-09-161-1/+3
|\ \ | | | | | | | | | | | | Explain ERB space removal. [ci skip]
| * | Explain ERB space removal. [ci skip]Ciro Santilli2014-09-111-1/+3
| | |
* | | handle <%== nil %> casesAaron Patterson2014-09-144-2/+12
| | | | | | | | | | | | | | | This is much less common than string literal appends, so add a special case method for it. Maybe fixes bug reported by @jeremy on 97ef636191933f1d4abc92fc10871e6d1195285c
* | | Stop nil checking on safe_append=Aaron Patterson2014-09-141-4/+0
| | | | | | | | | | | | | | | | | | ERB compiler guarantees safe_append= will be called with a string, so nil checks don't make sense. Anything else calling this method should check for nil themselves before calling
* | | Revert "Merge pull request #15312 from JuanitoFatas/action_view/asset_path"Matthew Draper2014-09-142-1/+12
| |/ |/| | | | | | | | | | | This reverts commit 21ec7fefea5a1b823cb88733b019b3d52240801d. Per #16911, there's actually a good reason for a "blank" value to have a useful `to_s` here. So let's also add some tests to prove that.
* | Merge pull request #16839 from chancancode/default_test_orderRafael Mendonça França2014-09-101-1/+1
|\ \ | | | | | | | | | Default to sorting user's test cases for now
| * | Default to sorting user's test cases for nowGodfrey Chan2014-09-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Goals: 1. Default to :random for newly generated applications 2. Default to :sorted for existing applications with a warning 3. Only show the warning once 4. Only show the warning if the app actually uses AS::TestCase Fixes #16769
* | | Do not memoize document_root_element in view testsRafael Mendonça França2014-09-082-2/+12
|/ / | | | | | | | | | | | | Memoizing will not make possible to assert the output of the view if it is changed after the first assert_select call Related with plataformatec/simple_form#1130 and rails/rails-dom-testing#15
* | fix the undefined method content_tag #15245Rajarshi Das2014-09-062-1/+1
| | | | | | | | not required include ActionView::Helpers::TagHelper in test as well
* | For now, we will keep sorting the tests.Matthew Draper2014-09-051-1/+1
| | | | | | | | | | This reverts commits e969c928463e329fd6529ac59cad96385c538ffb and bd2b3fbe54e750ba97469a7896e8d143d6dfd465.
* | Extract data/aria attribute prefixes to a constantRafael Mendonça França2014-09-031-1/+3
| |
* | Add support for ARIA attributes in tagsPaoMar2014-09-033-4/+23
| |
* | Ship with rails-html-sanitizer instead.Kasper Timm Hansen2014-09-033-10/+5
|/
* Shorten ActionView::Base doc summary line. [ci skip]Ciro Santilli2014-09-021-3/+4
|
* Clarify Rails uses erubis not stdlin ERB. [ci skip]Ciro Santilli2014-09-021-1/+2
|
* Leave all our tests as order_dependent! for nowMatthew Draper2014-09-021-0/+5
| | | | | | | | | We're seeing too many failures to believe otherwise. This reverts commits bc116a55ca3dd9f63a1f1ca7ade3623885adcc57, cbde413df3839e06dd14e3c220e9800af91e83ab, bf0a67931dd8e58f6f878b9510ae818ae1f29a3a, and 2440933fe2c27b27bcafcd9019717800db2641aa.
* Move implementation to the gemsRafael Mendonça França2014-09-011-22/+10
| | | | Now we keep only the common code and move the specific code to the gems
* Remove warningRafael Mendonça França2014-09-011-2/+2
|
* Allow polymorphic routes with nil when a route can still be drawnSammy Larbi2014-08-311-2/+34
| | | | | | | | | | | | | | | | Suppose you have two resources routed in the following manner: ```ruby resources :blogs do resources :posts end resources :posts ``` When using polymorphic resource routing like `url_for([@blog, @post])`, and `@blog` is `nil` Rails should still try to match the route to the top-level posts resource. Fixes #16754
* Refer to the library name instead of the constantRobin Dupret2014-08-301-1/+1
| | | | | | | | | When we are loading a component and we want to know its version, we are actually not speaking about the constant but the library itself. [ci skip] [Godfrey Chan & Xavier Noria]
* Merge branch 'master' of github.com:rails/railsDavid Heinemeier Hansson2014-08-297-46/+93
|\
| * No need to sort testsAkira Matsuda2014-08-281-1/+1
| | | | | | | | Dir.glob result must be already sorted anyway
| * remove useless parameterAaron Patterson2014-08-271-2/+2
| |