aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test/template/form_helper
Commit message (Collapse)AuthorAgeFilesLines
* Change the empty block style to have space inside of the blockRafael Mendonça França2018-09-251-8/+8
|
* Merge pull request #33973 from rails/remove-catch-allAaron Patterson2018-09-251-4/+1
|\ | | | | Remove deprecated catch-all route in the AV tests
| * Remove deprecated catch-all route in the AV testsAaron Patterson2018-09-241-4/+1
| | | | | | | | | | | | | | | | This commit removes a deprecated catch-all route in the AV tests. It defines and includes the necessary routes for each test such that we don't need the catch-all anymore. This also helps push us toward #33970
* | Merge pull request #33949 from sjain1107/no-private-defKasper Timm Hansen2018-09-231-6/+8
|\ \ | | | | | | Remove private def
| * | Remove private defSakshi Jain2018-09-231-6/+8
| |/
* / Enable `Performance/UnfreezeString` copyuuji.yaginuma2018-09-231-5/+5
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Ruby 2.3 or later, `String#+@` is available and `+@` is faster than `dup`. ```ruby # frozen_string_literal: true require "bundler/inline" gemfile(true) do source "https://rubygems.org" gem "benchmark-ips" end Benchmark.ips do |x| x.report('+@') { +"" } x.report('dup') { "".dup } x.compare! end ``` ``` $ ruby -v benchmark.rb ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux] Warming up -------------------------------------- +@ 282.289k i/100ms dup 187.638k i/100ms Calculating ------------------------------------- +@ 6.775M (± 3.6%) i/s - 33.875M in 5.006253s dup 3.320M (± 2.2%) i/s - 16.700M in 5.032125s Comparison: +@: 6775299.3 i/s dup: 3320400.7 i/s - 2.04x slower ```
* Turn on performance based copsDillon Welch2018-07-231-1/+2
| | | | | | | | | | | | | | | | Use attr_reader/attr_writer instead of methods method is 12% slower Use flat_map over map.flatten(1) flatten is 66% slower Use hash[]= instead of hash.merge! with single arguments merge! is 166% slower See https://github.com/rails/rails/pull/32337 for more conversation
* Fix leaking special form_with attributes into html attributesYurii Cherniavskyi2018-07-201-0/+17
| | | | | Special form_with attributes `skip_default_ids` and `allow_method_names_outside_object` attributes are leaking into html attributes of option select tag helpers.
* Remove unnecessary `with_default_enforce_utf8` methodyuuji.yaginuma2018-05-281-9/+0
| | | | | Because the same method is defined in `FormWithTest` of the parent class. https://github.com/rails/rails/blob/fe9547b6fb60d92af181c8613166fa4322f8e307/actionview/test/template/form_helper/form_with_test.rb#L19..L26
* Don't enforce UTF-8 by defaultAndrew White2018-02-271-0/+65
| | | | | | With the disabling of TLS 1.0 by most major websites, continuing to run IE8 or lower becomes increasingly difficult so default to not enforcing UTF-8 encoding as it's not relevant to other browsers.
* Change translation key of submit_tag from module_name_class_name to ↵Rui Onodera2018-02-271-1/+19
| | | | | | | | | | module_name/class_name Currently submit_tag value translation does not support i18n key style locale key. It confuses me a bit because many other components support i18n key style locale key. I added i18n key style locale key support to submit tag.
* Use assert_predicate and assert_not_predicateDaniel Colson2018-01-251-1/+1
|
* Make form_with_generates_ids default value to be falseRafael Mendonça França2017-11-271-0/+9
| | | | | This will keep the behavior of an application with the defaults of a 4.2 or 5.0 application behaving the same when upgrading to 5.2.
* Enable `Style/DefWithParentheses` rubocop ruleRyuta Kamizono2017-11-271-1/+1
| | | | | | | The def with blank `()` was newly added in #31176, but we have not used the blank `()` style in most part of our code base. So I've enabled `Style/DefWithParentheses` to prevent to newly added the code.
* Change `form_with` to generates ids by defaultnpezza932017-11-251-190/+218
| | | | | | | | | | When `form_with` was introduced we disabled the automatic generation of ids that was enabled in `form_for`. This usually is not an good idea since labels don't work when the input doesn't have an id and it made harder to test with Capybara. You can still disable the automatic generation of ids setting `config.action_view.form_with_generates_ids` to `false.`
* Use frozen string literal in actionview/Kir Shatrov2017-07-241-0/+2
|
* Expectation firstAkira Matsuda2017-07-021-4/+4
|
* Revert "Merge pull request #29540 from kirs/rubocop-frozen-string"Matthew Draper2017-07-021-1/+0
| | | | | This reverts commit 3420a14590c0e6915d8b6c242887f74adb4120f9, reversing changes made to afb66a5a598ce4ac74ad84b125a5abf046dcf5aa.
* Merge pull request #29540 from kirs/rubocop-frozen-stringMatthew Draper2017-07-021-0/+1
|\ | | | | | | Enforce frozen string in Rubocop
| * Enforce frozen string in RubocopKir Shatrov2017-07-011-0/+1
| |
* | Make ActionView frozen string literal friendly.Pat Allan2017-06-201-5/+5
|/ | | | Plus a couple of related ActionPack patches.
* Generate field ids in `collection_check_boxes` and `collection_radio_buttons`yuuji.yaginuma2017-06-111-18/+18
| | | | | This makes sure that the labels are linked up with the fields. Fixes #29014
* Don't support namespace in form_with.Kasper Timm Hansen2017-06-071-18/+0
| | | | | form_with requires people to pass an id manually, so users can just prefix their namespace right there.
* Remove unnecessary `skip_default_ids` and ↵kyuden2017-04-241-0/+2
| | | | `allow_method_names_outside_object` attributes of select tag in `form_with`
* Configure form_with_generates_remote_forms in its own initializerRafael Mendonça França2017-04-211-0/+22
| | | | | | | | | This configuration is not present in ActionView::Base so we can't let the action_view.set_configs initializer set it. Also add tests to make sure this config works. Fixes #28824
* Reduce string objects by using \ instead of + or << for concatenating stringsAkira Matsuda2017-01-121-191/+191
| | | | (I personally prefer writing one string in one line no matter how long it is, though)
* Fix Rubocop violations and fix documentation visibilityRafael Mendonça França2016-12-281-2/+1
| | | | | | Some methods were added to public API in 5b14129d8d4ad302b4e11df6bd5c7891b75f393c and they should be not part of the public API.
* Privatize unneededly protected methods in Action View testsAkira Matsuda2016-12-231-1/+1
|
* Unneeded attr_accessor with side effectsAkira Matsuda2016-12-231-4/+0
|
* fields: support attributes not on model.Kasper Timm Hansen2016-12-181-0/+35
| | | | Ensure the support works like form_with.
* form_with: allow methods outside the model.Kasper Timm Hansen2016-12-181-12/+69
| | | | | | | | Has the handy effect of making the initial examples in the form_with docs work too. Had to do some finagling such that form_with's without a scope didn't wrap their names in braces ala `[title]`.
* Avoid invalid attribute on local forms generated by `form_with`George Claghorn2016-12-151-0/+10
| | | | | | | | | | | | | Fixes that the following ERB template would result in invalid HTML output: <%= form_with model: Post.new, local: true do |form| %> <% end %> Specifically, the resulting form tag would have a spurious `remote` attribute: <form remote="false" ...>
* form_with/fields: Don't output ids by defaultKasper Timm Hansen2016-12-131-200/+200
| | | | | | | | | | | Continuing 67f81cc where we decided not to output ids by default in the new form helpers. Went with @dhh's suggestion of just requiring ids on fields being labelled: https://github.com/rails/rails/issues/25197#issuecomment-231797117 Seems okay enough.
* Add form_with to unify form_tag/form_for. (#26976)Kasper Timm Hansen2016-11-211-0/+2134
* Add form_with to unify form_tag/form_for. `form_tag` and `form_for` serve very similar use cases. This PR unifies that usage such that `form_with` can output just the opening form tag akin to `form_tag` and can just work with a url, for instance. `form_with` by default doesn't attach class or id to the form — removing them on fields is moved out to a default revisiting PR later. Ported over old tests where applicable to ensure maximum coverage, but left some commented out because they don't yet apply (e.g. `fields_for` later being replaced by `fields`). [ Kasper Timm Hansen & Marek Kirejczyk ] * Add fields DSL method. Strips `_for` and requires models passed as a keyword argument. * Document form_with. Graft the `form_for` docs: rewrite, revise and expand where needed. Also test that a `format` isn't used when an explicit URL is passed. * Enable remote by default. Brand new world! Forms submit via XHRs by default, woah. * Invert `include_id` to `skip_id`. `skip_id: true` reads better than `include_id: false` (since the `include_id` default is true). * Invert `remote` to `local`. Since forms are remote by default, the option name makes more sense as `local: true`. * Invert `enforce_utf8` to `skip_enforcing_utf8`. * Refer to the brand spanking new rails-ujs. Soon to be bundled in Rails proper, so jquery-ujs is out. * Make `form_with` a bit more composed. The flow is still not quite what it should be because the legacy methods and these new ones pull at opposite ends. Lots of options have been renamed, so now the new pieces don't fit in so well. I'll try to work on this in later commits after this PR (it's likely there's a much better way to structure this whole part of Action View).