aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test/template
Commit message (Collapse)AuthorAgeFilesLines
* 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
* 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).
* Add more rubocop rules about whitespacesRafael Mendonça França2016-10-298-122/+122
|
* Merge pull request #26810 from maclover7/jm-fix-26802Rafael Mendonça França2016-10-221-0/+27
|\ | | | | | | Convert ActionController::Parameters to a hash in button_to
| * Convert ActionController::Parameters to a hash in button_toJon Moss2016-10-171-0/+16
|/ | | | | | | | | | | Before, an error would be raised saying that the method `to_param` was undefined on the instance of `ActionController::Parameters`. Now, we are checking to see if the `params` object being passed to `button_to` responds to the `permitted?` method, and if so, we will call `to_h` on it. If it does not respond to `permitted?`, then the `params` will remain unchanged. [Jon Moss, Rafael Mendonça França]
* Merge pull request #26578 from jeremy/undeprecate-plural-positional-argRafael França2016-10-101-6/+2
|\ | | | | Undeprecate plural positional argument
| * Undeprecate plural positional argumentJeremy Daer2016-09-211-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ```ruby pluralize people.count, 'person', 'people' ``` reads more naturally than ```ruby pluralize people.count, 'person', plural: 'people' ``` so let's not deprecate it. We could label both, but that's a mouthful: ```ruby pluralize people.count, singular: 'person', plural: 'people' ``` (The `plural:` kwarg shipped in 5.0.0, so we're keeping it.)
* | Remove deprecated support to :text in renderRafael Mendonça França2016-10-102-2/+2
| |
* | Change render to support any hash keys in localsPeter Schilling2016-10-021-0/+19
|/ | | | | | | | | | | | | | | | | | | this lets you pass ruby keywords to templates: <%= render 'example', class: "cool" %> <%= render 'example', "spaces are" => "a-ok" %> <%= render 'example', Foo: "bar" %> Previously you'd see confusing syntax errors like this: SyntaxError (.../_example.html.erb:1: syntax error, unexpected '=' Now you can reference invalid identifiers through local_assigns. If you try to use an invalid keyword (e.g. class) in your template, you get a syntax error on the line where you use it.
* Merge pull request #26516 from grosser/grosser/assertRafael França2016-09-164-11/+11
|\ | | | | improve error message when include assertions fail
| * improve error message when include assertions failMichael Grosser2016-09-164-11/+11
| | | | | | | | | | | | assert [1, 3].includes?(2) fails with unhelpful "Asserting failed" message assert_includes [1, 3], 2 fails with "Expected [1, 3] to include 2" which makes it easier to debug and more obvious what went wrong
* | Rename test to match what it doesclaudiob2016-09-151-1/+1
|/ | | | | | | | | | | Commit d270da569 changed the `form_for` API from `:object_name` to `:as`. It also change the related test body, but not its title, which is changed here. See https://github.com/rails/rails/commit/d270da569efeabd7cd563028816452236713aa9f#diff-52455f1e82acf12551bc5e7e26b82008 I realize this is a small commit but I was having trouble understanding what the test was about since there is no "object_name" in the code. I imagine the same may happen to other developers, therefore this commit.
* fix RuboCop errors re \xFCXavier Noria2016-09-021-2/+4
|
* fixes remaining RuboCop issues [Vipul A M, Xavier Noria]Xavier Noria2016-09-011-2/+2
|
* Add three new rubocop rulesRafael Mendonça França2016-08-1618-96/+96
| | | | | | | | Style/SpaceBeforeBlockBraces Style/SpaceInsideBlockBraces Style/SpaceInsideHashLiteralBraces Fix all violations in the repository.
* Ensure values are strings before calling gsubMike Virata-Stone2016-08-121-0/+8
|
* ensure tag/content_tag escapes " in attribute valsAndrew Carpenter2016-08-111-0/+10
| | | | | | Many helpers mark content as HTML-safe without escaping double quotes -- including `sanitize`. Regardless of whether or not the attribute values are HTML-escaped, we want to be sure they don't include double quotes, as that can cause XSS issues. For example: `content_tag(:div, "foo", title: sanitize('" onmouseover="alert(1);//'))` CVE-2016-6316
* Fix broken alignments caused by auto-correct commit 411ccbdRyuta Kamizono2016-08-101-3/+6
| | | | Hash syntax auto-correcting breaks alignments. 411ccbdab2608c62aabdb320d52cb02d446bb39c
* code gardening: removes redundant selfsXavier Noria2016-08-083-4/+4
| | | | | | | | | A few have been left for aesthetic reasons, but have made a pass and removed most of them. Note that if the method `foo` returns an array, `foo << 1` is a regular push, nothing to do with assignments, so no self required.
* Extract common view cache dependency setup.Kasper Timm Hansen2016-08-071-8/+9
|
* Modify LogSubscriber for single partial's cache message.Stan Lo2016-08-081-6/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement naive partial caching mechanism. Add test for LogSubscriber Use ActionView::Base#log_payload to store log_subscriber's payload, so we can pass cache result into it. Fixed tests Remove useless settings Check if #log_payload exists before calling it. Because other classes also includes CacheHelper but don't have is attribute Use @log_payload_for_partial_reder instead of #log_payload to carry ActionView's payload. Update test's hash syntax Add configuration to enable/disable fragment caching logging Remove unless test and add new test to ensure cache info won't effect next rendering's log Move :enable_fragment_cache_logging config from ActionView to ActionPack Apply new config to tests Update actionview's changelog Update configuration guide Improve actionview's changelog Refactor PartialRenderer#render and log tests Mute subscriber's log instead of disabling instrumentation. Fix typo, remove useless comment and use new hash syntax Improve actionpack's log_subscriber test Fix rebase mistake Apply new config to all caching intstrument actions
* Add `Style/EmptyLines` in `.rubocop.yml` and remove extra empty linesRyuta Kamizono2016-08-074-5/+0
|
* applies remaining conventions across the projectXavier Noria2016-08-068-15/+7
|