aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge pull request #19633 from y00rb/sort_router_parameters_duplicated_keysRafael Mendonça França2015-04-082-0/+40
|\ \ | | | | | | avoid error when sort mixture keys in symbol and string
| * | sort_by instead of sortYang Bo2015-04-082-0/+40
| | | | | | | | | | | | | | | | | | it is avoid sort errot within different and mixed keys. used `sort_by` + `block` to list parameter by keys. keep minimum changes
* | | Fix ActionPack tests after changes to missing template loggereileencodes2015-04-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | After merging #19377 ActionPack tests were missing a require for `ActiveSupport::LogSubscriber::TestHelper` and change didn't take into account that logger could be nil. Added the require and only log to info if logger exists. This wasn't caught earlier because these tests only run after a merge.
* | | head no_content when there is no template or action performedStephen Bussey2015-04-051-6/+16
|/ /
* | Merge pull request #19544 from shuhei/fix-parameters-const-missingXavier Noria2015-03-281-1/+8
|\ \ | | | | | | Return super in ActionController::Parameters.const_missing
| * | Return super in ActionController::Parameters.const_missingShuhei Kagawa2015-03-281-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation of ActionController::Parameters.const_missing returns `ActionController::Parameters.always_permitted_parameters` even if its `super` returns a constant without raising error. This prevents its subclass in a autoloading module/class from taking advantage of autoloading constants. class SomeParameters < ActionController::Parameters def do_something DefinedSomewhere.do_something end end In the code above, `DefinedSomewhere` is to be autoloaded with `Module.const_missing` but `ActionController::Parameters.const_missing` returns `always_permitted_parameters` instead of the autoloaded constant. This pull request fixes the issue respecting `const_missing`'s `super`.
* | | Define a setup method instead of using setup as blockRafael Mendonça França2015-03-271-1/+2
| | | | | | | | | | | | | | | setup as block run before setup actlually runs so it will fail for our case
* | | Provide friendlier access to request variantsGeorge Claghorn2015-03-241-19/+30
|/ / | | | | | | Closes #18933.
* | Fix failing tests for #19474Andrew White2015-03-231-2/+2
| |
* | remove old unavailable link with relevant fixGaurav Sharma2015-03-231-2/+2
| |
* | Fix handling of empty X_FORWARDED_HOST header.adam2015-03-201-0/+3
| | | | | | | | | | | | Previously, an empty X_FORWARDED_HOST header would cause Actiondispatch::Http:URL.raw_host_with_port to return nil, causing Actiondispatch::Http:URL.host to raise a NoMethodError.
* | Revert "Merge pull request #19404 from dmathieu/remove_rack_env"Jeremy Kemper2015-03-201-1/+1
| | | | | | | | | | | | | | Preserving RACK_ENV behavior. This reverts commit 7bdc7635b885e473f6a577264fd8efad1c02174f, reversing changes made to 45786be516e13d55a1fca9a4abaddd5781209103.
* | Fix kwargs warning in `test_get_xml`eileencodes2015-03-201-1/+1
| | | | | | | | | | | | ActionDispatch::IntegrationTest HTTP request methods will accept only certain kwargs in the future. This test caused a deprecation warning when running ActionPack tests. Added `params` and `headers` to fix.
* | Fix test messages use directly true, false and nil instead of their symbolAkshay Vishnoi2015-03-191-3/+3
| |
* | don't fallback to RACK_ENV when RAILS_ENV is not presentDamien Mathieu2015-03-191-1/+1
| |
* | Compare content_type with Mime::XML instead of regexpBoris Peterbarg2015-03-161-0/+17
| | | | | | | | | | Regexp is broken for both content types including charsets and for integration tests, where the content_type is a Mime::Type and not String
* | Merge pull request #19291 from hired/return-truthy-value-from-headRafael Mendonça França2015-03-131-0/+11
|\ \ | | | | | | Return truthy value from head method
| * | Return true from head methodJoel Hayhurst2015-03-121-0/+11
| | | | | | | | | | | | | | | | | | It was returning false in normal circumstances. This broke the `head :ok and return if` construct. Add appropriate test.
* | | Merge pull request #19309 from f1sherman/dont-set-session-options-idGuillermo Iguaran2015-03-124-12/+4
|\ \ \ | | | | | | | | Use request.session.id instead of request.session_options[:id]
| * | | Use request.session.id instead of request.session_options[:id]Brian John2015-03-124-12/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | As of the upgrade to Rack 1.5, request.session_options[:id] is no longer populated. Reflect this change in the tests by using request.session.id instead. Related change in Rack: https://github.com/rack/rack/commit/83a270d6
* | | Also skip Content-Encoding and Vary header if 304Kohei Suzuki2015-03-121-1/+2
| | |
* | | 304 response should not include Content-Type headerKohei Suzuki2015-03-101-0/+9
|/ / | | | | | | | | Rack::Lint raises an error saying "Content-Type header found in 304 response, not allowed".
* | Call super last in before_setupeileencodes2015-03-091-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the reasons 4cf3b8a, 303567e, and fa63448 needed to be reverted in 7142059. The revert has been reverted and this fixes the issues caused previously. If we call `super` first we will end up nuking the session settings in the application tests that do `setup do` - so any session login or cookie settings will not be persisted thoughout the test sessions. Calling `super` last prevents `@integration_session` from getting nuked and set to nil if it's already set. Test added to prevent regression of this behavior in the future.
* | Revert "Revert integration test refactoring that caused app test regressions"eileencodes2015-03-091-4/+0
| | | | | | | | This reverts commit 714205988315d2f98aa3e749747c44470e18676b.
* | pass a config to the route setAaron Patterson2015-03-051-6/+10
| | | | | | | | | | This way we can get the relative_url_root from the application without setting another global value
* | Run ActionPack test cases in random order.Guo Xiang Tan2015-03-061-5/+0
| |
* | Drop request class from RouteSet constructor.Aaron Patterson2015-03-041-1/+5
| | | | | | | | | | If you would like to use a custom request class, please subclass and implemet the `request_class` method.
* | Merge pull request #18775 from yasyf/issue_5122Rafael Mendonça França2015-03-031-0/+10
|\ \ | | | | | | | | | Fallback to RAILS_RELATIVE_URL_ROOT in `url_for`
| * | Fallback to RAILS_RELATIVE_URL_ROOT in `url_for`.Yasyf Mohamedali2015-02-241-0/+10
| | | | | | | | | | | | | | | | | | Fixed an issue where the `RAILS_RELATIVE_URL_ROOT` environment variable is not prepended to the path when `url_for` is called. If `SCRIPT_NAME` (used by Rack) is set, it takes precedence.
* | | Merge pull request #19147 from gsamokovarov/work-around-ruby-10695Eileen M. Uchitelle2015-03-021-1/+1
|\ \ \ | | | | | | | | Work around for upstream Ruby bug #10685
| * | | Work around for upstream Ruby bug #10685Genadi Samokovarov2015-03-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In f6e293ec54f02f83cdb37502bea117f66f87bcae we avoided a segfault in the tests, however I think we should try to avoid the crash, as it may happen in user code as well. Here is what I distiled the bug down to: ```ruby # Rails case - works on 2.0, 2.1; crashes on 2.2 require 'action_dispatch' ActionDispatch::Response.new(200, "Content-Type" => "text/xml") # General case - works on 2.0, 2.1; crashes on 2.2 def foo(optional = {}, default_argument: nil) end foo('quux' => 'bar') ```
* | | | Merge pull request #15806 from tgxworld/partition_routes_during_setupAaron Patterson2015-03-021-0/+21
|\ \ \ \ | | | | | | | | | | Partition routes during setup.
| * | | | Partition routes during setup.Guo Xiang Tan2015-02-261-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Partitioning of all the routes is currently being done during the first request. Since there is no need to clear the cache for `partitioned_routes` when adding a new route. We can move the partitioning of the routes during setup time.
* | | | | Remove unneeded comment. [ci skip]Zoltan Kiss2015-03-021-1/+0
| | | | |
* | | | | Skip the failing tests on Rubinius for nowRobin Dupret2015-03-021-0/+2
| | | | |
* | | | | Avoid accurate assertions on error messagesRobin Dupret2015-03-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Since there are disparities between the raised error messages on the different implementations, let's avoid being too accurate.
* | | | | Avoid parallelizing Action Pack's tests on RubiniusRobin Dupret2015-03-021-2/+2
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the `ForkingExecutor` class seems to be pretty slow on Rubinius due to DRb (c.f. http://git.io/xIVg), let's avoid running tests with it on this platform. Also, the `parallelize_me!` call make the suite to output a bunch of errors due to rubinius/rubinius#2934 since there are thread-safety problems with autoloading.
* | | | Fix segmentation fault in ActionPack testseileencodes2015-02-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Introduced in f6e293e ActionPack tests began sefaulting. I found that it was the kwargs and the test causing the seg fault was missing the new default_headers argument.
* | | | Merge pull request #19104 from y-yagi/fix_skip_filterCarlos Antonio da Silva2015-02-271-0/+8
|\ \ \ \ | | | | | | | | | | fix NameError in `skip_filter`. callback doesn't exist.
| * | | | fix NameError in `skip_filter`. callback doesn't exist.yuuji.yaginuma2015-02-271-0/+8
| | | | |
* | | | | Revert integration test refactoring that caused app test regressionsJeremy Kemper2015-02-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Haven't diagnosed yet. No similarly failing tests in Rails to work from. cc @tenderlove, @eileencodes Revert "there is always an integration session, so remove the check" Revert "lazily create the integration session" Revert "use before_setup to set up test instance variables" This reverts commits 4cf3b8ac47f109fa83a6f66eb97d6cb0eace0d05, 303567e554de26822f3107be55c471d6477a745f, and fa63448420d3385dbd043aca22dba973b45b8bb2.
* | | | | Revert "Merge pull request #18764 from tsun1215/master"Jeremy Kemper2015-02-261-4/+5
|/ / / / | | | | | | | | | | | | | | | | This reverts commit b6dd0c4ddebf5e7aab0a669915cb349ec65e5b88, reversing changes made to de9a3748c436f849dd1877851115cd94663c2725.
* | | | Merge pull request #18434 from brainopia/change_filter_on_rails_info_routesRichard Schneeman2015-02-261-8/+0
|\ \ \ \ | |/ / / |/| | | Change filter on /rails/info/routes to use an actual path regexp from rails
| * | | Change filter on /rails/info/routes to use an actual path regexp from railsbrainopia2015-02-231-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change filter on /rails/info/routes to use an actual path regexp from rails and not approximate javascript version. Oniguruma supports much more extensive list of features than javascript regexp engine. Fixes #18402.
* | | | Fix default headers in test responsesJeremy Kemper2015-02-252-16/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes regression in #18423. Merge default headers for new responses, but don't merge when creating a response from the last session request. hat tip @senny :heart:
* | | | Merge pull request #18948 from kaspth/automatic-collection-cachingRafael Mendonça França2015-02-254-0/+66
|\ \ \ \ | | | | | | | | | | Merge multi_fetch_fragments.
| * | | | Collections automatically cache and fetch partials.Kasper Timm Hansen2015-02-214-0/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collections can take advantage of `multi_read` if they render one template and their partials begin with a cache call. The cache call must correspond to either what the collections elements are rendered as, or match the inferred name of the partial. So with a notifications/_notification.html.erb template like: ```ruby <% cache notification %> <%# ... %> <% end %> ``` A collection would be able to use `multi_read` if rendered like: ```ruby <%= render @notifications %> <%= render partial: 'notifications/notification', collection: @notifications, as: :notification %> ```
* | | | | Add a failing test demonstrating regression with HEAD requests to Rack apps, ↵Jeremy Kemper2015-02-241-3/+9
| |_|/ / |/| | | | | | | | | | | re #18764
* | | | Use other controller instead of sharing the controllerRafael Mendonça França2015-02-241-18/+17
| | | |
* | | | Make TestController available to all test classesRafael Mendonça França2015-02-241-16/+16
| | | |