aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test/template
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Reuse the Parameters#to_h check in the routing helpersRafael Mendonça França2017-04-181-1/+5
| | | | | Since this protection is now in Parameters we can use it instead of reimplementing again.
* Update comment in sanitizer helper test [skip ci]Ross Kaffenberger2017-03-291-1/+1
| | | The previously referenced file no longer appears to exist in the project.
* Fix `assert_logged` failureRyuta Kamizono2017-03-231-2/+2
| | | | | `'#{name}' file doesn't exist, so no dependencies` was removed in bb04814.
* Deprecate implicit coercion of `ActiveSupport::Duration`Andrew White2017-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently `ActiveSupport::Duration` implicitly converts to a seconds value when used in a calculation except for the explicit examples of addition and subtraction where the duration is the receiver, e.g: >> 2 * 1.day => 172800 This results in lots of confusion especially when using durations with dates because adding/subtracting a value from a date treats integers as a day and not a second, e.g: >> Date.today => Wed, 01 Mar 2017 >> Date.today + 2 * 1.day => Mon, 10 Apr 2490 To fix this we're implementing `coerce` so that we can provide a deprecation warning with the intent of removing the implicit coercion in Rails 5.2, e.g: >> 2 * 1.day DEPRECATION WARNING: Implicit coercion of ActiveSupport::Duration to a Numeric is deprecated and will raise a TypeError in Rails 5.2. => 172800 In Rails 5.2 it will raise `TypeError`, e.g: >> 2 * 1.day TypeError: ActiveSupport::Duration can't be coerced into Integer This is the same behavior as with other types in Ruby, e.g: >> 2 * "foo" TypeError: String can't be coerced into Integer >> "foo" * 2 => "foofoo" As part of this deprecation add `*` and `/` methods to `AS::Duration` so that calculations that keep the duration as the receiver work correctly whether the final receiver is a `Date` or `Time`, e.g: >> Date.today => Wed, 01 Mar 2017 >> Date.today + 1.day * 2 => Fri, 03 Mar 2017 Fixes #27457.
* Remove `encode_special_chars` option from `strip_tags`Andrew Hood2017-02-271-0/+2
|
* Set correct "routes" in tests casesbogdanvlviv2017-02-202-4/+4
|
* Add `Style/EmptyLinesAroundMethodBody` in `.rubocop.yml` and remove extra ↵Ryuta Kamizono2017-02-122-2/+0
| | | | empty lines
* Add information on `:formats` option in action_view_overview.mdkenta-s2017-02-061-2/+1
|
* Fix CI failure caused by aa647b46cce55ec12f5895e403c0d1b85502c8e0Ryuta Kamizono2017-02-021-1/+1
|
* Fix test failures only seen when executed via bin/testAkira Matsuda2017-02-021-1/+1
| | | | | sub_template_message distracts Rails.root from its message only when Rails.root is defined, and Rails.root is defined at tools/test.rb
* Merge pull request #27795 from meagar/fix-missing-partial-iterationRafael França2017-01-311-0/+9
|\ | | | | Fix missing partial iteration
| * Merge branch 'master' into fix-missing-partial-iterationMatthew Eagar2017-01-253-2/+14
| |\
| * | Add partial iteration variable to template keysMatthew Eagar2017-01-251-0/+9
| | | | | | | | | | | | | | | | | | | | | When rendering heterogeneous collection using `render @collection` or `render partial: @collection`, the expected `<partial_name>_iteration` variable is missing due to `find_template` not having the name of the iteration variable included in its cache keys.
* | | Merge pull request #27858 from mtsmfm/fix-inherit-from-deprecated-erubisRafael França2017-01-311-0/+2
|\ \ \ | | | | | | | | Fix inherit from deprecated `ActionView::Template::Handlers::Erubis`
| * | | Fix inherit from deprecated `ActionView::Template::Handlers::Erubis`Fumiaki MATSUSHIMA2017-02-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are some classes inherit from `ActionView::Template::Handlers::Erubis`. (ex. https://github.com/haml/haml/blob/4.0.7/lib/haml/helpers/safe_erubis_template.rb#L3) ``` Class.new(ActionView::Template::Handlers::Erubis) # => TypeError: superclass must be a Class (ActiveSupport::Deprecation::DeprecatedConstantProxy given) ```
* | | | Merge pull request #27758 from kenta-s/neglected-todo-in-render_testArthur Nogueira Neves2017-01-311-2/+1
|\ \ \ \ | |/ / / |/| | | Get neglected TODO done in render_test
| * | | Get neglected TODO done in render_testkenta-s2017-01-241-2/+1
| |/ /
* | / Improve insufficient test for `safe_join`kenta-s2017-01-301-2/+13
| |/ |/|
* | Merge pull request #27796 from yui-knk/keep_separator_wasAndrew White2017-01-251-1/+2
|\ \ | | | | | | Keep the value of `$,` and restore it
| * | Keep the value of `$,` and restore ityui-knk2017-01-251-1/+2
| |/ | | | | | | | | | | As unit tests, we do not know the value of `$,` when this test case started. It' better to keep the value when the test case fnished.
* / Change ActionView ERB Handler from Erubis to ErubiJeremy Evans2017-01-252-1/+12
|/ | | | | | | | | | | | | | | | | | | | | | | Erubi offers the following advantages for Rails: * Works with ruby's --enable-frozen-string-literal option * Has 88% smaller memory footprint * Does no freedom patching (Erubis adds a method to Kernel) * Has simpler internals (1 file, <150 lines of code) * Has an open development model (Erubis doesn't have a public source control repository or bug tracker) * Is not dead (Erubis hasn't been updated since 2011) Erubi is a simplified fork of Erubis that contains just the parts that are generally needed (which includes the parts that Rails uses). The only intentional difference in behavior is that it does not include support for <%=== tags for debug output. That could be added to the ActionView ERB handler if it is desired. The Erubis template handler remains in a deprecated state so that code that accesses it directly does not break. It can be removed after Rails 5.1.
* Add missing tests for ActionView::Template::Textkenta-s2017-01-201-0/+16
|
* :warning: "Use assert_nil if expecting nil. This will fail in MT6."Akira Matsuda2017-01-181-1/+6
| | | | | | These are followups for 307065f959f2b34bdad16487bae906eb3bfeaf28, but TBH I'm personally not very much confortable with this style. Maybe we could override assert_equal in our test_helper not to warn?
* Merge pull request #27693 from kenta-s/improve-to_sentence-methodRafael França2017-01-181-0/+10
|\ | | | | Fix unexpected behavior of `to_sentence` with $,
| * Fix unexpected behavior of with $,kenta-s2017-01-151-0/+10
| |
* | Merge pull request #27688 from kenta-s/add-test-for-safe_joinRafael França2017-01-181-0/+5
|\ \ | | | | | | Add test for `safe_join`
| * | Add test for safe_joinkenta-s2017-01-151-0/+5
| |/
* / Allow render locals to be assigned to instance variablesAndrew White2017-01-151-0/+4
|/ | | | | | | | | In #26672 we blocked use of Ruby keywords as identifiers for view locals but inadvertently broke the use of instance variable names as identifiers. Whilst not explicitly documented this behavior has been around for a long time and there's no need to break it now. Fixes #27480.
* class Foo < Struct.new(:x) creates an extra unneeded anonymous classAkira Matsuda2017-01-133-4/+3
| | | | because Struct.new returns a Class, we just can give it a name and use it directly without inheriting from it
* Reduce string objects by using \ instead of + or << for concatenating stringsAkira Matsuda2017-01-125-522/+522
| | | | (I personally prefer writing one string in one line no matter how long it is, though)
* Remove unneeded Deprecation silenceRafael Mendonça França2017-01-061-5/+3
|
* Merge pull request #27549 from mpugach/consider_params_in_current_pageRafael França2017-01-041-0/+9
|\ | | | | Add "check_parameters" option to "current_page?"
| * Add `check_parameters` option to `current_page?`Maksym Pugach2017-01-041-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example: For "http://www.example.com/shop/checkout?order=desc&page=1" current_page?('http://www.example.com/shop/checkout') => true current_page?( 'http://www.example.com/shop/checkout', check_parameters: true ) => false
* | Fix typo s/permited/permitted/Ryuta Kamizono2017-01-041-2/+2
| | | | | | | | | | | | | | | | | | ``` % git grep -n permited actionview/test/template/url_helper_test.rb:238: def test_button_to_with_permited_strong_params actionview/test/template/url_helper_test.rb:245: def test_button_to_with_unpermited_strong_params activerecord/test/cases/relations_test.rb:1620: def test_update_on_relation_passing_active_record_object_is_not_permited ```
* | Prevent duplicate data-disable-with attributesTyler Hunt2017-01-031-0/+7
|/ | | | | | When using the hash form of the data option, prevent duplicate data-disable-with attributes from appearing in the submit tag due to both string and symbol forms of the hash key being present.
* Merge pull request #27463 from y-yagi/fix_26931Rafael França2016-12-281-1/+3
|\ | | | | do not mutate `object_name` of class in `fields_for`
| * do not mutate `object_name` of class in `fields_for`yuuji.yaginuma2016-12-271-1/+3
| | | | | | | | | | | | Since it affects the entire form, should not mutate `object_name` of class. Fixes #26931
* | Fix Rubocop violations and fix documentation visibilityRafael Mendonça França2016-12-283-10/+9
|/ | | | | | Some methods were added to public API in 5b14129d8d4ad302b4e11df6bd5c7891b75f393c and they should be not part of the public API.
* assert_equal takes expectation firstAkira Matsuda2016-12-261-5/+5
|
* "Use assert_nil if expecting nil. This will fail in minitest 6."Akira Matsuda2016-12-254-16/+16
|
* Privatize unneededly protected methods in Action View testsAkira Matsuda2016-12-233-3/+3
|
* Unneeded attr_accessor with side effectsAkira Matsuda2016-12-232-8/+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.
* split DELEGATION_RESERVED_METHOD_NAMES in halfToshimaru2016-12-091-4/+10
|
* Enable `block` variable in viewToshimaru2016-12-091-0/+4
| | | | Remove `block` keyword from reserved method names
* Remove unused argumentRafael Mendonça França2016-12-021-12/+2
| | | | Now Text class is only used to render text mime type pages