Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
cba05887
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
cba05887
编写于
12月 22, 2012
作者:
G
Guillermo Iguaran
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #8085 from acapilleri/format_never_nil
if format is unknown NullMimeTypeObject is returned
上级
8a39d833
c2267db3
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
28 addition
and
3 deletion
+28
-3
actionpack/CHANGELOG.md
actionpack/CHANGELOG.md
+5
-0
actionpack/lib/action_dispatch/http/mime_type.rb
actionpack/lib/action_dispatch/http/mime_type.rb
+12
-1
actionpack/test/controller/send_file_test.rb
actionpack/test/controller/send_file_test.rb
+1
-1
actionpack/test/dispatch/request_test.rb
actionpack/test/dispatch/request_test.rb
+10
-1
未找到文件。
actionpack/CHANGELOG.md
浏览文件 @
cba05887
## Rails 4.0.0 (unreleased) ##
*
Added
`Mime::NullType`
class. This allows to use html?, xml?, json?..etc when
the
`format`
of
`request`
is unknown, without raise an exception.
*Angelo Capilleri*
*
Integrate the Journey gem into Action Dispatch so that the global namespace
is not polluted with names that may be used as models.
...
...
actionpack/lib/action_dispatch/http/mime_type.rb
浏览文件 @
cba05887
...
...
@@ -27,7 +27,7 @@ def #{method}(*)
class
<<
self
def
[]
(
type
)
return
type
if
type
.
is_a?
(
Type
)
Type
.
lookup_by_extension
(
type
)
Type
.
lookup_by_extension
(
type
)
||
NullType
.
new
end
def
fetch
(
type
)
...
...
@@ -306,6 +306,17 @@ def respond_to_missing?(method, include_private = false) #:nodoc:
method
.
to_s
.
ends_with?
'?'
end
end
class
NullType
def
nil?
true
end
private
def
method_missing
(
method
,
*
args
)
false
if
method
.
to_s
.
ends_with?
'?'
end
end
end
require
'action_dispatch/http/mime_types'
actionpack/test/controller/send_file_test.rb
浏览文件 @
cba05887
...
...
@@ -144,7 +144,7 @@ def test_send_file_headers_with_bad_symbol
}
@controller
.
headers
=
{}
assert
_raise
(
ArgumentError
){
@controller
.
send
(
:send_file_headers!
,
options
)
}
assert
!
@controller
.
send
(
:send_file_headers!
,
options
)
end
def
test_send_file_headers_guess_type_from_extension
...
...
actionpack/test/dispatch/request_test.rb
浏览文件 @
cba05887
...
...
@@ -591,9 +591,18 @@ def url_for(options = {})
request
=
stub_request
request
.
expects
(
:parameters
).
at_least_once
.
returns
({
:format
=>
:unknown
})
assert
request
.
formats
.
empty?
assert
_instance_of
Mime
::
NullType
,
request
.
format
end
test
"format is not nil with unknown format"
do
request
=
stub_request
request
.
expects
(
:parameters
).
at_least_once
.
returns
({
format: :hello
})
assert_equal
request
.
format
.
nil?
,
true
assert_equal
request
.
format
.
html?
,
false
assert_equal
request
.
format
.
xml?
,
false
assert_equal
request
.
format
.
json?
,
false
end
test
"formats with xhr request"
do
request
=
stub_request
'HTTP_X_REQUESTED_WITH'
=>
"XMLHttpRequest"
request
.
expects
(
:parameters
).
at_least_once
.
returns
({})
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录