| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | | |
There is already another test covering Request#request_method. This
test should cover Request#method.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
The current test is asserting against an outdated version of
Request#method where HEAD requests are treated as GET requests.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also cleanup test a bit
[related #14886]
[related #14743]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
Use an is_a check to ensure it's a Railsish app so we can avoid
respond_to calls everywhere.
|
| | |
| | |
| | |
| | |
| | |
| | | |
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).
|
| | |
| | |
| | |
| | | |
Now we can override how requests are dispatched in the routeset object
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`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"]`.
|
|\ \ \
| |/ /
|/| | |
This updates rails to use edge rack
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | | |
This pull request is a continuation of https://github.com/rails/rails/commit/925bd975 and https://github.com/rails/rails/commit/8d8ebe3d.
|
| | | |
|
| | |
| | |
| | |
| | | |
Fixes issue #15511.
|
|\ \ \
| | | |
| | | | |
Reset callbacks after test.
|
| | | |
| | | |
| | | |
| | | | |
Otherwise the state of callback chain is leaked.
|
|\ \ \ \
| | | | |
| | | | | |
Restore Response.default_headers after test.
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| |/ / /
|/| | | |
Make sure Mime::Type is not altered after tests.
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Remove duplicated HashWithIndifferentAccess#with_indifferent_access.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
application. Use of a symbol should be replaced with `action: symbol`.
Use of a string without a "#" should be replaced with `controller: string`.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
I'm not sure if this is actually used, but I'm adding a test to define
the behavior
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
Unlike the outer `rescue`, this one is much more precise about what we
want to handle: a connection failure (`Dalli::RingError`) is not
relevant to what we're testing here. But other Dalli errors may well be
indicating an actual problem.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes URL generation with trailing_slash: true
Conflicts:
actionpack/lib/action_dispatch/http/url.rb
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
URL generation with trailing_slash: true was adding a trailing slash
after .:format
Routes.draw do
resources :bars
end
bars_url(trailing_slash: true, format: 'json')
# => /bars.json/
This commit removes that extra trailing slash
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
stop hardcoding hash keys and use the accessors provided on the request
object.
|
| | | |
| | | |
| | | |
| | | | |
this decouples our code from the env hash a bit.
|
| |/ /
|/| |
| | |
| | | |
There are performance gains to be made by avoiding URI setter methods.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
There may be situations where you need to tunnel SSL connections over
port 80 so we shouldn't remove it if it has been explicitly provided.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously if you were looking for a given key, the header may incorrectly tell you that it did not exist even though it would return a valid value:
```ruby
env = { "CONTENT_TYPE" => "text/plain" }
headers = ActionDispatch::Http::Headers.new(env)
headers["Content-Type"]
# => "text/plain"
headers.key?("Content-Type")
# => false
```
This PR fixes that behavior by converting the key before checking for presence
|
| | |
|