aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller
Commit message (Collapse)AuthorAgeFilesLines
* Remove respond_to/respond_with placeholder methodsCarlos Antonio da Silva2015-01-041-32/+0
| | | | This functionality has been extracted to the responders gem.
* Remove deprecated option `use_route` in controller testsRafael Mendonça França2015-01-041-25/+0
|
* Merge pull request #17978 from kommen/fixed-pr-14903Rafael Mendonça França2015-01-021-0/+20
|\ | | | | | | | | | | | | Ensure append_info_to_payload is called even if an exception is raised. Conflicts: actionpack/CHANGELOG.md
| * Ensure append_info_to_payload is called even if an exception is raised.Dieter Komendera2014-12-101-0/+20
| | | | | | | | | | | | | | | | See: * https://github.com/rails/rails/pull/14903 * https://github.com/roidrage/lograge/issues/37 Some code by mxrguspxrt from #14903.
* | Integration requests should work in contexts without setup and teardownbrainopia2015-01-021-0/+24
| |
* | Correctly use the response's status code calling headRobin Dupret2014-12-311-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 20fece1 introduced the `_status_code` method to fix calls to `head :ok`. This method has been added on both ActionController::Metal and ActionDispatch::Response. As for the latter, this method is just equivalent to the `response_code` one so commit aefec3c removed it from the `Reponse` object so call to the `_status_code` method on an ActionController::Base instance would be handled by the `Metal` class (which `Base` inherits from) but the status code is not updated according to the response at this level. The fix is to actually rely on `response_code` for ActionController::Base instances but this method doesn't exist for bare Metal controllers so we need to define it.
* | Remove single space response body for head requestPrathamesh Sonpatki2014-12-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - The single space response was added due to a bug in safari in https://github.com/rails/rails/commit/cb0f8fda9652c4d24d04693bdb82cecd3b067e5c and https://github.com/rails/rails/commit/807df4fcf021fc4d15972aa1c17ba7398d43ab0d. - This was removed from the `render nothing: true` in https://github.com/rails/rails/pull/14883. - Removing it from response of :head also. As :head is more obvious alternative to call `render nothing: true`(http://guides.rubyonrails.org/layouts_and_rendering.html#using-head-to-build-header-only-responses), removing it from head method also. - Closes #18253.
* | Merge pull request #17995 from ↵Rafael Mendonça França2014-12-161-0/+7
|\ \ | | | | | | | | | | | | jethroo/fix/assert_template_with_unsupported_layout_type assert template should raise ArgumentError for unsupported layout types
| * | adding that assert_template with :layout will raise ArgumentError for ↵Carsten Wirth2014-12-161-0/+7
| |/ | | | | | | unknown layout type
* | Remove misleading test: around_action return falseclaudiob2014-12-151-19/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an `around_action` does not `yield`, then the corresponding action is *never* executed and the `after_` actions are *never* invoked. The value returned by the `around_action` does not have any impact on this: an `around_action` can "return" `true`, `false`, or `"pizza"`, but as long as `yield` is not invoked, the corresponding action and after callbacks are not executed. The test suite for `ActionController::Callbacks` currently includes separate tests to distinguish the cases in which a non-yielding `around_actions` returns `true` or `false`. In my opinion, having such tests is misleading, giving the impression that the returned value might have some sort of impact, while it does not. At least that's the impression I got when I read those tests. For completeness, the tests were introduced 7 years ago by @NZKoz in e80fabb.
* | Add AC::Parameters#to_unsafe_hPrem Sichanugrist2014-12-121-0/+6
|/ | | | | | | | | As suggested in #16299([1]), this method should be a new public API for retrieving unfiltered parameters from `ActionController::Parameters` object, given that `Parameters#to_hash` will no longer work in Rails 5.0+ as we stop inheriting `Parameters` from `Hash`. [1]: https://github.com/rails/rails/pull/16299#issuecomment-50220919
* Typo: Hello = Guten Tag (in German)Tu Hoang2014-12-051-2/+2
|
* Pass symbol as an argument instead of a blockErik Michaels-Ober2014-11-292-5/+5
|
* Merge pull request #17186 from tgxworld/header_authentication_tokenMatthew Draper2014-11-271-2/+21
|\ | | | | | | Allow authentication header to not have to specify 'token=' key.
| * Allow authentication header to not have to specify 'token=' key.Guo Xiang Tan2014-10-101-2/+21
| | | | | | | | Fixes: https://github.com/rails/rails/issues/17108.
* | Merge pull request #17733 from yuki24/do-not-rescue-exception-in-params-parserRafael Mendonça França2014-11-251-0/+10
|\ \ | | | | | | Do not rescue Exception in ActionDispatch::ParamsParser
| * | Do not rescue Exception in ParamsParserYuki Nishijima2014-11-231-0/+10
| | | | | | | | | | | | | | | Unlike ShowExceptions or PublicExceptions, ParamsParser shouldn't transform exceptions like Interrupt and NoMemoryError into ParserError.
* | | Merge branch 'nil_script_name'Santiago Pastorino2014-11-251-0/+7
|\ \ \
| * | | Add regression test case to ensure script_name as nil is not used anymore in ↵Santiago Pastorino2014-11-251-0/+7
|/ / / | | | | | | | | | url_for
* | | Deprecate `use_route` in controller testsGodfrey Chan2014-11-231-2/+2
| | | | | | | | | | | | Reference #17453
* | | Fix cases where the wrong name is passed to `Formatter#generate`Godfrey Chan2014-11-231-1/+1
|/ / | | | | | | | | These are currently working "by accident" because `match_route` does not check that the name is valid.
* | Test using `ActionController::TestCase` with enginesGodfrey Chan2014-11-231-0/+52
| | | | | | | | | | | | Reference #17453 [Godfrey Chan, Washington Luiz]
* | Anchor should not be appended when set to nil/false.Guo Xiang Tan2014-11-232-0/+17
| | | | | | | | Fixes https://github.com/rails/rails/issues/17714.
* | Make sure assert_select can assert body tagRafael Mendonça França2014-11-182-3/+24
| | | | | | | | | | | | | | | | | | This reverts commit f93df52845766216f0fe36a4586f8abad505cac4, reversing changes made to a455e3f4e9dbfb9630d47878e1239bc424fb7d13. Conflicts: actionpack/lib/action_controller/test_case.rb actionview/lib/action_view/test_case.rb
* | Make FlashHash#key? work with symbol and stringRafael Mendonça França2014-11-111-0/+9
| | | | | | | | Closes #17586
* | Remove useless `only_path: true` in path helpersGodfrey Chan2014-11-101-3/+2
| | | | | | | | | | | | We added a deprecation warning for these cases in aa1fadd, so these are now causing deprecation warnings in the test output. AFAICT, in these two cases, the option is not integral to the purpose of the test, so they can be safely removed
* | Pass the route name explicitlyGodfrey Chan2014-11-101-0/+12
| | | | | | | | | | | | Follow up to 212057b9. Since that commit, we need to pass the `route_name` explicitly. This is one of the left-over cases that was not handled in that commit, which was causing `use_route` to be ignored in functional tests.
* | Remove session to allow `with_routing` to be called twice.Guo Xiang Tan2014-11-051-0/+36
| | | | | | | | Fixes: https://github.com/rails/rails/issues/16814
* | Remove redundant `to_s` in interpolationclaudiob2014-10-301-2/+2
| |
* | give a better error message for misspelled helpersXavier Noria2014-10-251-0/+22
| | | | | | | | | | | | See comment in this patch for the rationale. References #16468
* | Add regression test for router was overwriting PATH_INFOArthur Neves2014-10-101-0/+8
|/ | | | [related #17233]
* Parse HTML as document fragment.Kasper Timm Hansen2014-09-291-3/+3
| | | | This is to match the changes in Rails Dom Testing rails/rails-dom-testing#20.
* Use Hash#each_key instead of Hash#keys.eachErik Michaels-Ober2014-09-292-7/+7
| | | | | | Hash#keys.each allocates an array of keys; Hash#each_key iterates through the keys without allocating a new array. This is the reason why Hash#each_key exists.
* Fix actionpack test cases broken by #16888Godfrey Chan2014-09-262-29/+9
|
* Merge pull request #16570 from bradleybuda/breach-mitigation-mask-csrf-tokenJeremy Kemper2014-08-191-5/+6
|\ | | | | CSRF token mask from breach-mitigation-rails gem
| * Auth token mask from breach-mitigation-rails gemBradley Buda2014-08-191-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | This merges in the code from the breach-mitigation-rails gem that masks authenticity tokens on each request by XORing them with a random set of bytes. The masking is used to make it impossible for an attacker to steal a CSRF token from an SSL session by using techniques like the BREACH attack. The patch is pretty simple - I've copied over the [relevant code](https://github.com/meldium/breach-mitigation-rails/blob/master/lib/breach_mitigation/masking_secrets.rb) and updated the tests to pass, mostly by adjusting stubs and mocks.
* | Fix failing test on several methods on ParameterPrem Sichanugrist2014-08-182-2/+11
| | | | | | | | | | | | | | * `each` * `each_pair` * `delete` * `select!`
* | Seperate Parameters accessors and mutators testsPrem Sichanugrist2014-08-183-57/+215
| |
* | Add missing `Hash` methods to `AC::Parameters`Prem Sichanugrist2014-08-181-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | This is to make sure that `permitted` status is maintained on the resulting object. I found these methods that needs to be redefined by looking for `self.class.new` in the code. * extract! * transform_keys * transform_values
* | Make `AC::Params#to_h` return Hash with safe keysPrem Sichanugrist2014-08-181-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ActionController::Parameters#to_h` now returns a `Hash` with unpermitted keys removed. This change is to reflect on a security concern where some method performed on an `ActionController::Parameters` may yield a `Hash` object which does not maintain `permitted?` status. If you would like to get a `Hash` with all the keys intact, duplicate and mark it as permitted before calling `#to_h`. params = ActionController::Parameters.new(name: 'Senjougahara Hitagi') params.to_h # => {} unsafe_params = params.dup.permit! unsafe_params.to_h # => {"name"=>"Senjougahara Hitagi"} safe_params = params.permit(:name) safe_params.to_h # => {"name"=>"Senjougahara Hitagi"} This change is consider a stopgap as we cannot chage the code to stop `ActionController::Parameters` to inherit from `HashWithIndifferentAccess` in the next minor release. Also, adding a CHANGELOG entry to mention that `ActionController::Parameters` will not inheriting from `HashWithIndifferentAccess` in the next major version.
* | Expectations firstAkira Matsuda2014-08-183-23/+23
| |
* | Merge branch 'master' into loofahRafael Mendonça França2014-08-175-740/+90
|\ \ | | | | | | | | | | | | Conflicts: actionpack/CHANGELOG.md
| * | `responders` 1.x won't do it. Told you to RTFM for details!Godfrey Chan2014-08-171-0/+2
| | |
| * | The gem is called 'responders'Godfrey Chan2014-08-171-2/+2
| | |
| * | Raise a more helpful error for people who are using these extracted featuresGodfrey Chan2014-08-171-0/+30
| | |
| * | Move respond_with to the responders gemJosé Valim2014-08-171-737/+0
| | | | | | | | | | | | | | | | | | | | | | | | respond_with (and consequently the class-level respond_to) are being removed from Rails. Instead of moving it to a 3rd library, the functionality will be moved to responders gem (at github.com/plataformatec/responders) which already provides some responders extensions.
| * | When your templates change, browser caches bust automatically.Jeremy Kemper2014-08-172-3/+35
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New default: the template digest is automatically included in your ETags. When you call `fresh_when @post`, the digest for `posts/show.html.erb` is mixed in so future changes to the HTML will blow HTTP caches for you. This makes it easy to HTTP-cache many more of your actions. If you render a different template, you can now pass the `:template` option to include its digest instead: fresh_when @post, template: 'widgets/show' Pass `template: false` to skip the lookup. To turn this off entirely, set: config.action_controller.etag_with_template_digest = false
| * Fix assert_template for files.Guo Xiang Tan2014-08-141-0/+23
| | | | | | | | | | The test was not failing for `assert_template file: nil` when a file has been rendered.
* | Merge branch 'master' into loofahRafael Mendonça França2014-08-1213-165/+273
|\| | | | | | | | | | | | | Conflicts: actionpack/CHANGELOG.md actionpack/test/controller/integration_test.rb actionview/CHANGELOG.md
| * Fixes to TestCaseTest.Guo Xiang Tan2014-08-081-4/+5
| |