aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
Commit message (Collapse)AuthorAgeFilesLines
* Deprecate `*_path` methods in mailers@schneems and @sgrif2014-07-301-0/+14
| | | | | | | | | | | Email does not support relative links since there is no implicit host. Therefore all links inside of emails must be fully qualified URLs. All path helpers are now deprecated. When removed, the error will give early indication to developers to use `*_url` methods instead. Currently if a developer uses a `*_path` helper, their tests and `mail_view` will not catch the mistake. The only way to see the error is by sending emails in production. Preventing sending out emails with non-working path's is the desired end goal of this PR. Currently path helpers are mixed-in to controllers (the ActionMailer::Base acts as a controller). All `*_url` and `*_path` helpers are made available through the same module. This PR separates this behavior into two modules so we can extend the `*_path` methods to add a Deprecation to them. Once deprecated we can use this same area to raise a NoMethodError and add an informative message directing the developer to use `*_url` instead. The module with warnings is only mixed in when a controller returns false from the newly added `supports_relative_path?`. Paired @sgrif & @schneems
* Merge pull request #16303 from rajcybage/removing_masterYves Senn2014-07-281-0/+2
|\ | | | | | | remove empty unused method
| * add comment to the empty each method for not removing it in futureRajarshi Das2014-07-261-1/+2
|/
* Improve description of tests.Guo Xiang Tan2014-07-251-4/+4
|
* Bug fix for assert_template when opening a new session.Guo Xiang Tan2014-07-251-0/+40
| | | | See https://github.com/rails/rails/pull/16234#commitcomment-7115670.
* Use PROCESS_COUNT to define the number of parallel executorsRafael Mendonça França2014-07-231-1/+1
|
* specify N=0 to prevent parallel tests (just run tests on the main process)Aaron Patterson2014-07-231-2/+6
|
* Fix AC::TemplateAssertions instance variables not resetting.Guo Xiang Tan2014-07-211-0/+58
| | | | Fixes https://github.com/rails/rails/issues/16119.
* Merge branch 'rm-remove-mocha'Rafael Mendonça França2014-07-191-0/+2
|\ | | | | | | | | Conflicts: actionpack/test/abstract_unit.rb
| * Stop requiring mocha automaticallyRafael Mendonça França2014-07-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | We are planning to remove mocha from our test suite because of performance problems. To make this possible we should stop require mocha on ActionSupport::TestCase. This should not affect applications since users still need to add mocha to Gemfile and this already load mocha. Added FIXME notes to place that still need mocha removal
* | Merge pull request #16098 from tgxworld/fixes_to_request_testRafael Mendonça França2014-07-181-22/+14
|\ \ | | | | | | Fixes to request method test.
| * | Remove redundant test.Guo Xiang Tan2014-07-181-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | Since we're stubbing the request, the test is actually just asserting that `@method = env['REQUEST_METHOD']`. In order to the test against the methodoverride middleware, we should test it against an actual request. However, Rack is already covering this scenario so we can remove this test.
| * | Fix duplicated test.Guo Xiang Tan2014-07-181-2/+6
| | | | | | | | | | | | | | | There is already another test covering Request#request_method. This test should cover Request#method.
| * | Update test to clearly reflect what it is testing for.Guo Xiang Tan2014-07-181-5/+7
| | |
| * | Update outdated test.Guo Xiang Tan2014-07-181-6/+3
| |/ | | | | | | | | The current test is asserting against an outdated version of Request#method where HEAD requests are treated as GET requests.
* | Add CHANGELOG for #14886Arthur Neves2014-07-181-1/+1
| | | | | | | | | | | | | | Also cleanup test a bit [related #14886] [related #14743]
* | LOCALHOST definition should match any 127.0.0.0/8 addressEarl J St Sauver2014-07-182-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The entire 127.0.0.0/8 range is assigned to the loopback address, not only 127.0.0.0/24. This patch allows ActionDispatch::Request::LOCALHOST to match any IPv4 127.0.0.0/8 loopback address. The only place that the #local? method was previously under test was in the show_expectations_test.rb file. I don't particularly like that that's implicitly where this code is under test, and I feel like I should move some of that testing code into the test/dispatch/request_test.rb file, but I wanted some feedback first. Credit goes to @sriedel for discovering the issue and adding the patch.
* | reporting is only done in one thread, so we can safely remove the lockAaron Patterson2014-07-171-1/+1
| | | | | | | | (I think)
* | pass the test reporter by referenceAaron Patterson2014-07-171-1/+4
| | | | | | | | | | | | this prevents the array from being dumped as a DRbObject so we can reduce communication with the server. the reporter should always exist on the server side, so we don't have to worry about GC
* | fix filesystem race conditionAaron Patterson2014-07-171-1/+1
| |
* | do not restart the service, just stop itAaron Patterson2014-07-171-1/+0
| |
* | only parallelize on forking systemsAaron Patterson2014-07-171-1/+1
| |
* | [EXPERIMENTAL] run actionpack tests in parallelAaron Patterson2014-07-171-0/+57
| | | | | | | | | | only on forking systems though. Feel free to revert this if it causes problems.
* | pass the route name to define_url_helperAaron Patterson2014-07-171-1/+2
| | | | | | | | | | this allows us to avoid 2 hash allocations per named helper definition, also we can avoid a `merge` and `delete`.
* | helper methods are public, so we can just call themAaron Patterson2014-07-171-4/+4
| | | | | | | | | | also if you want a path from a named helper, you should call helper_path, not helper_url(:only_path => true).
* | Rails-ish apps should descend from Rails::RailtieAaron Patterson2014-07-163-6/+14
| | | | | | | | | | Use an is_a check to ensure it's a Railsish app so we can avoid respond_to calls everywhere.
* | always transcode the file to utf-8Aaron Patterson2014-07-161-0/+6
| | | | | | | | | | | | people may be passing filenames to the constructor that are not utf-8, but they will assome that calling `original_filename` returns utf-8 (because that's what it used to do).
* | Remove unused fixturesRafael Mendonça França2014-07-1660-98/+0
| | | | | | | | These fixtures are not used in actionpack tests.
* | Don't accept parameters as argument for redirect to [via @homakov]Santiago Pastorino2014-07-161-0/+10
| | | | | | | | Closes #16170
* | Fix 1.9. uggghhhhhh get it together @tenderlove :bomb:Aaron Patterson2014-07-151-2/+2
| |
* | fix for 1.9 kwargs syntaxAaron Patterson2014-07-151-1/+2
| |
* | stop passing recall to url_forAaron Patterson2014-07-152-37/+48
| |
* | fix warningsAaron Patterson2014-07-151-1/+1
| |
* | stop calling url_for with recall parameters and actually use a requestAaron Patterson2014-07-152-85/+197
| |
* | execute a request and check the path_parametersAaron Patterson2014-07-151-17/+59
| | | | | | | | | | | | | | | | This actually runs a request through the system, using the actual routing methods as we would use in production, then tests the path_parameters set on the request object. The `recognize_path` method isn't actually used in production, so testing what it returns isn't useful.
* | set `set` in the setup methodAaron Patterson2014-07-151-2/+5
| |
* | remove useless ivar setAaron Patterson2014-07-151-1/+0
| |
* | RouteSet should be in charge of constructing the dispatherAaron Patterson2014-07-151-2/+2
| | | | | | | | Now we can override how requests are dispatched in the routeset object
* | Merge pull request #16168 from greysteil/stash-path-infoMatthew Draper2014-07-141-1/+2
|\ \ | | | | | | Stash original path in `ShowExceptions` middleware
| * | Stash original path in `ShowExceptions` middlewareGrey Baker2014-07-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ActionDispatch::ShowExceptions` overwrites `PATH_INFO` with the status code for the exception defined in `ExceptionWrapper`, so the path the user was visiting when an exception occurred was not previously available to any custom exceptions_app. The original `PATH_INFO` is now stashed in `env["action_dispatch.original_path"]`.
* | | Fix typos like `a html` to `an html` and 'an mail' to 'an email'. [ci skip]Santosh Wadghule2014-07-141-2/+2
|/ /
* | Removed single space padding from empty response body.Godfrey Chan2014-07-104-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | `render nothing: true` or rendering a `nil` body no longer add a single space to the response body. The old behavior was added as a workaround for a bug in an early version of Safari, where the HTTP headers are not returned correctly if the response body has a 0-length. This is been fixed since and the workaround is no longer necessary. Use `render body: ' '` if the old behavior is desired.
* | Merge branch 'rosetta_flash' of https://github.com/gcampbell/rails into ↵Aaron Patterson2014-07-102-2/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | gcampbell-rosetta_flash * 'rosetta_flash' of https://github.com/gcampbell/rails: Address CVE-2014-4671 (JSONP Flash exploit) Conflicts: actionpack/CHANGELOG.md
| * | Address CVE-2014-4671 (JSONP Flash exploit)Greg Campbell2014-07-092-2/+2
| | | | | | | | | | | | | | | | | | Adds a comment before JSONP callbacks. See http://miki.it/blog/2014/7/8/abusing-jsonp-with-rosetta-flash/ for more details on the exploit in question.
* | | Force encoding of US-ASCII to UTF-8 in unescape_uri.Karl Entwistle2014-07-101-0/+5
|/ / | | | | | | | | | | | | | | | | Because URI paths may contain non US-ASCII characters we need to force the encoding of any unescaped URIs to UTF-8 if they are US-ASCII. This essentially replicates the functionality of the monkey patch to URI.parser.unescape in active_support/core_ext/uri.rb. Fixes #16104.
* | Merge pull request #13999 from jamox/update_rackAaron Patterson2014-07-082-7/+17
|\ \ | |/ |/| This updates rails to use edge rack
| * Upgraded rackJarmo Isotalo2014-05-192-7/+17
| | | | | | | | | | | | | | | | As Rack has some non backwards compatible changes added required modifications to keep behaviour in rails close to same as before. Also modified generators to include rack/rack for not yet released version of rack
* | always test against a routed rack app so there are always url_helpersAaron Patterson2014-07-074-35/+65
| |
* | Generate shallow paths for all children of shallow resources.Seb Jacobs2014-07-061-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this commit shallow resources would only generate paths for non-direct children (with a nested depth greater than 1). Take the following routes file. resources :blogs do resources :posts, shallow: true do resources :comments do resources :tags end end end This would generate shallow paths for `tags` nested under `posts`, e.g `/posts/:id/tags/`, however it would not generate shallow paths for `comments` nested under `posts`, e.g `/posts/:id/comments/new`. This commit changes the behaviour of the route mapper so that it generate paths for direct children of shallow resources, for example if you take the previous routes file, this will now generate shallow paths for `comments` nested under `posts`, .e.g `posts/:id/comments/new`. This was the behaviour in Rails `4.0.4` however this was broken in @jcoglan's fix for another routes related issue[1]. This also fixes an issue[2] reported by @smdern. [1] https://github.com/rails/rails/commit/d0e5963 [2] https://github.com/rails/rails/issues/15783
* | Merge pull request #16013 from tgxworld/remove_symbolized_path_parametersRafael Mendonça França2014-07-042-5/+5
|\ \ | | | | | | Remove symbolized_path_parameters.