Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
c06eb779
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
c06eb779
编写于
10月 30, 2017
作者:
G
Gabriel Mazetto
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use the Hashed Storage compatible layer to store Attachments
上级
b1907694
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
40 addition
and
14 deletion
+40
-14
app/uploaders/file_uploader.rb
app/uploaders/file_uploader.rb
+1
-1
spec/uploaders/file_uploader_spec.rb
spec/uploaders/file_uploader_spec.rb
+39
-13
未找到文件。
app/uploaders/file_uploader.rb
浏览文件 @
c06eb779
...
...
@@ -30,7 +30,7 @@ class FileUploader < GitlabUploader
#
# Returns a String without a trailing slash
def
self
.
dynamic_path_segment
(
model
)
File
.
join
(
CarrierWave
.
root
,
base_dir
,
model
.
full
_path
)
File
.
join
(
CarrierWave
.
root
,
base_dir
,
model
.
disk
_path
)
end
attr_accessor
:model
...
...
spec/uploaders/file_uploader_spec.rb
浏览文件 @
c06eb779
...
...
@@ -3,25 +3,51 @@ require 'spec_helper'
describe
FileUploader
do
let
(
:uploader
)
{
described_class
.
new
(
build_stubbed
(
:project
))
}
describe
'.absolute_path'
do
it
'returns the correct absolute path by building it dynamically'
do
project
=
build_stubbed
(
:project
)
upload
=
double
(
model:
project
,
path:
'secret/foo.jpg'
)
context
'legacy storage'
do
let
(
:project
)
{
build_stubbed
(
:project
)
}
dynamic_segment
=
project
.
path_with_namespace
describe
'.absolute_path'
do
it
'returns the correct absolute path by building it dynamically'
do
upload
=
double
(
model:
project
,
path:
'secret/foo.jpg'
)
expect
(
described_class
.
absolute_path
(
upload
))
.
to
end_with
(
"
#{
dynamic_segment
}
/secret/foo.jpg"
)
dynamic_segment
=
project
.
full_path
expect
(
described_class
.
absolute_path
(
upload
))
.
to
end_with
(
"
#{
dynamic_segment
}
/secret/foo.jpg"
)
end
end
describe
"#store_dir"
do
it
"stores in the namespace path"
do
uploader
=
described_class
.
new
(
project
)
expect
(
uploader
.
store_dir
).
to
include
(
project
.
full_path
)
expect
(
uploader
.
store_dir
).
not_to
include
(
"system"
)
end
end
end
describe
"#store_dir"
do
it
"stores in the namespace path"
do
project
=
build_stubbed
(
:project
)
uploader
=
described_class
.
new
(
project
)
context
'hashed storage'
do
let
(
:project
)
{
build_stubbed
(
:project
,
:hashed
)
}
describe
'.absolute_path'
do
it
'returns the correct absolute path by building it dynamically'
do
upload
=
double
(
model:
project
,
path:
'secret/foo.jpg'
)
dynamic_segment
=
project
.
disk_path
expect
(
described_class
.
absolute_path
(
upload
))
.
to
end_with
(
"
#{
dynamic_segment
}
/secret/foo.jpg"
)
end
end
describe
"#store_dir"
do
it
"stores in the namespace path"
do
uploader
=
described_class
.
new
(
project
)
expect
(
uploader
.
store_dir
).
to
include
(
project
.
path_with_namespace
)
expect
(
uploader
.
store_dir
).
not_to
include
(
"system"
)
expect
(
uploader
.
store_dir
).
to
include
(
project
.
disk_path
)
expect
(
uploader
.
store_dir
).
not_to
include
(
"system"
)
end
end
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录