aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/test/template
Commit message (Collapse)AuthorAgeFilesLines
...
* Add allocations to template renderer subscriptionEileen Uchitelle2018-10-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | This PR adds the allocations to the instrumentation for template and partial rendering. Before: ``` Rendering posts/new.html.erb within layouts/application Rendered posts/_form.html.erb (9.7ms) Rendered posts/new.html.erb within layouts/application (10.9ms) Completed 200 OK in 902ms (Views: 890.8ms | ActiveRecord: 0.8ms) ``` After: ``` Rendering posts/new.html.erb within layouts/application Rendered posts/_form.html.erb (Duration: 7.1ms | Allocations: 6004) Rendered posts/new.html.erb within layouts/application (Duration: 8.3ms | Allocations: 6654) Completed 200 OK in 858ms (Views: 848.4ms | ActiveRecord: 0.4ms | Allocations: 1539564) ```
* Merge pull request #33324 from ↵Ryuta Kamizono2018-10-081-0/+9
|\ | | | | | | | | Jcambass/fix-only-path-option-in-url-for-with-arrays respect only_path option when an array is passed into url_for
| * respect path_only option when an array is passed into url_forJoel Ambass2018-10-011-0/+9
| | | | | | | | | | | | | | | | The url_for method is now extracting the path_only option in order to determine if polymorphic_path or polymorphic_url should be called. If the path_only option is not set it will be set to true unless the host option is set. This behaviour is the same as when a Hash or Params object is passed. To support this unifying the code responsible for setting this default value has been extracted into a private method
* | Merge pull request #32031 from yahonda/remove_redundant_freezeRyuta Kamizono2018-10-011-2/+2
|\ \ | | | | | | Add `Style/RedundantFreeze` to remove redudant `.freeze`
| * | Add `Style/RedundantFreeze` to remove redudant `.freeze`Yasuo Honda2018-09-291-2/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Rails 6.0 will support Ruby 2.4.1 or higher `# frozen_string_literal: true` magic comment is enough to make string object frozen. This magic comment is enabled by `Style/FrozenStringLiteralComment` cop. * Exclude these files not to auto correct false positive `Regexp#freeze` - 'actionpack/lib/action_dispatch/journey/router/utils.rb' - 'activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb' It has been fixed by https://github.com/rubocop-hq/rubocop/pull/6333 Once the newer version of RuboCop released and available at Code Climate these exclude entries should be removed. * Replace `String#freeze` with `String#-@` manually if explicit frozen string objects are required - 'actionpack/test/controller/test_case_test.rb' - 'activemodel/test/cases/type/string_test.rb' - 'activesupport/lib/active_support/core_ext/string/strip.rb' - 'activesupport/test/core_ext/string_ext_test.rb' - 'railties/test/generators/actions_test.rb'
* / make actionview templates marshalable so that they can be serialized during ↵lsylvester2018-09-301-0/+7
|/ | | | the parallel tests (#34030)
* Merge pull request #33975 from JuanitoFatas/jf.fix-test-nameRafael França2018-09-251-1/+1
|\ | | | | [CaptureHelperTest] Fix a content_for test description
| * Fix a content_for test descriptionJuanito Fatas2018-09-251-1/+1
| |
* | Fix more offencesRafael Mendonça França2018-09-251-1/+1
| |
* | Change the empty block style to have space inside of the blockRafael Mendonça França2018-09-255-18/+18
| |
* | Merge pull request #33973 from rails/remove-catch-allAaron Patterson2018-09-256-21/+58
|\ \ | | | | | | Remove deprecated catch-all route in the AV tests
| * | make bot happyAaron Patterson2018-09-241-1/+1
| | |
| * | Remove deprecated catch-all route in the AV testsAaron Patterson2018-09-246-21/+58
| |/ | | | | | | | | | | | | | | 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-239-206/+206
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ```
* | Merge pull request #33564 from avit/escape_javascript_castingRafael França2018-09-211-0/+4
|\ \ | |/ |/| Let escape_javascript handle conversion to string
| * Let escape_javascript handle conversion to stringAndrew Vit2018-09-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | This brings `escape_javascript` in line with the behavior of `json_escape` and allows other value types to be output without needing explicit casting in the view template. Example: <%= javascript_tag do %> var locale = '<%== j I18n.locale %>'; // locale is a symbol <% end %>
* | Don’t allocate array on no argsschneems2018-09-071-1/+1
| | | | | | | | | | | | | | | | | | | | When no dependencies are present to be digested there is no reason to build an array just to turn around and turn it back into a string. The dependencies array is not mutated in this method so we can use the same empty array across all invocations. Total allocated: 791402 bytes (7294 objects) Total allocated: 777442 bytes (7132 objects) (791402 - 777442) / 791402.0 # => 1.76 % speed improvement
* | Merge pull request #33547 from Ana06/patch-1Matthew Draper2018-08-231-1/+14
|\ \ | | | | | | | | | Use public_send in value_for_collection
| * | Add tests for privates methods in view's helpersAna María Martínez Gómez2018-08-081-1/+14
| |/ | | | | | | | | | | | | | | Test that using private methods in `options_from_collection_for_select` is deprecated. Make the unused `secret` paramether in the `Post` Struct private to use it in the test.
* / Enable Style/ParenthesesAroundCondition copRyuta Kamizono2018-08-191-1/+1
|/ | | | To prevent style check in review like https://github.com/rails/rails/pull/33608#discussion_r211087605.
* Turn on performance based copsDillon Welch2018-07-232-2/+4
| | | | | | | | | | | | | | | | 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.
* Fix issue with `button_to`'s `to_form_params`Georgi Georgiev2018-07-161-1/+8
| | | | | | | | | `button_to` was throwing exception when invoked with `params` hash that contains symbol and string keys. The reason for the exception was that `to_form_params` was comparing the given symbol and string keys. The issue is fixed by turning all keys to strings inside `to_form_params` before comparing them.
* Merge pull request #32361 from ph3t/safe-html-translation-arraysKasper Timm Hansen2018-07-031-2/+5
|\ | | | | Add safe html support to arrays of translations
| * Add safe html support to arrays of translationsJuan Broullon2018-07-031-2/+5
| |
* | Add `year_format` option to date_select tag. This option makes it possible ↵Koki Ryu2018-06-101-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to customize year names. Lambda should be passed to use this option. Example: date_select('user_birthday', '', start_year: 1998, end_year: 2000, year_format: ->year { "Heisei #{year - 1988}" }) The HTML produced: <select id="user_birthday__1i" name="user_birthday[(1i)]"> <option value="1998">Heisei 10</option> <option value="1999">Heisei 11</option> <option value="2000">Heisei 12</option> </select> /* The rest is omitted */
* | 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
* | Fix `CustomCops/AssertNot` to allow it to have failure messageRyuta Kamizono2018-05-131-2/+2
| | | | | | | | Follow up of #32605.
* | Replace `assert !` with `assert_not`Daniel Colson2018-04-194-21/+21
| | | | | | | | | | This autocorrects the violations after adding a custom cop in 3305c78dcd.
* | Add the `nonce: true` option for `javascript_include_tag` helper.Yaroslav Markin2018-04-171-0/+8
| |
* | Remove RecordTagHelperYoshiyuki Hirano2018-04-071-33/+0
|/ | | | | | | * Since #18411, we started to inform about extracted gem (record_tag_helper) to developers who use `ActionView::Helpers::RecordTagHelper` 's methods. * Currently, it seems no problem that we don't have to support no longer.
* Fix digesting templates with mixed formatsJavan Makhmali2018-03-201-0/+12
|
* Fix occurrences Fixnum|Bignumbogdanvlviv2018-03-041-3/+3
| | | | Related to https://github.com/rails/rails/commit/d4eb0dc89ee6b476e2e10869dc282a96f956c6c7#r27830891
* Let select render default selected option for required fieldSerj Prikhodko2018-02-271-0/+10
|
* Don't enforce UTF-8 by defaultAndrew White2018-02-273-0/+129
| | | | | | 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-272-2/+38
| | | | | | | | | | 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.
* Rails 6 requires Ruby 2.4.1+Jeremy Daer2018-02-171-4/+2
| | | | | | Skipping over 2.4.0 to sidestep the `"symbol_from_string".to_sym.dup` bug. References #32028
* Use assert_predicate and assert_not_predicateDaniel Colson2018-01-2517-89/+89
|
* Merge pull request #31578 from ↵George Claghorn2017-12-291-0/+16
|\ | | | | | | | | Aquaj/feature/allow-callables-in-select-group-methods Allow the use of callable objects as group methods for grouped selects.
| * Allow the use of callable objects as group methods for grouped selects.Jérémie Bonal2017-12-271-0/+16
| | | | | | | | | | | | Replaced the uses of `group.send(...)` in `option_groups_from_collection_for_select` by calls to `value_for_collection(group, ...)`, allowing the use of procs, lambdas and other callable objects as parameters.
* | Suppress `warning: BigDecimal.new is deprecated`Yasuo Honda2017-12-152-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `BigDecimal.new` has been deprecated in BigDecimal 1.3.3 which will be a default for Ruby 2.5. Refer https://github.com/ruby/bigdecimal/commit/533737338db915b00dc7168c3602e4b462b23503 * This commit has been made as follows: ``` cd rails git grep -l BigDecimal.new | grep -v guides/source/5_0_release_notes.md | grep -v activesupport/test/xml_mini_test.rb | xargs sed -i -e "s/BigDecimal.new/BigDecimal/g" ``` - `activesupport/test/xml_mini_test.rb` Editmanually to remove `.new` and `::` - guides/source/5_0_release_notes.md This is a Rails 5.0 release notes.
* | Enable `Layout/LeadingCommentSpace` to not allow cosmetic changes in the futureRyuta Kamizono2017-12-141-1/+1
| | | | | | | | Follow up of #31432.
* | Enable `Layout/SpaceBeforeComma` rubocop rule, and fixed moreRyuta Kamizono2017-12-123-5/+5
| | | | | | | | Follow up of #31390.
* | Merge pull request #30361 from mfo/masterEileen M. Uchitelle2017-12-111-1/+20
|\ \ | |/ |/| StreamingTemplateRenderer fails to forward I18n.locale in layouts
| * fix(streaming_template_renderer): I18n.locale broken in layout. I18n gem ↵mfo2017-11-251-1/+20
| | | | | | | | stores the current locale in Thread.current[:local] (see: https://github.com/svenfuchs/i18n/blob/master/lib/i18n.rb#L23). StreamingTemplateRenderer is implemented with Fiber which have its own stack of locals and can not access Thread.current.locals(keys, see: https://ruby-doc.org/core-2.2.0/Thread.html#class-Thread-label-Fiber-local+vs.+Thread-local).
* | Add preload_link_tag helper.Guillermo Iguaran2017-11-281-0/+15
| | | | | | | | | | | | | | | | | | | | | | This helper creates a link tag with preload keyword that allows to browser to initiate early fetch of resources. Additionally this send Early Hints if supported. See https://github.com/rails/rails/pull/30744/commits/59a02fb7bcbe68f26e1e7fdcec45c00c66e4a065 for more details about Early Hints. Preload spec: https://w3c.github.io/preload/
* | Make sure the request exist befoe trying to send early hintsRafael Mendonça França2017-11-281-0/+30
| | | | | | | | | | | | | | Action Mailer context for example responds to request but don't have a a request object. Fixes #31265
* | 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.