Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
a0755d2f
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,发现更多精彩内容 >>
未验证
提交
a0755d2f
编写于
8月 07, 2014
作者:
D
Dmitriy Zaporozhets
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix tests
Signed-off-by:
N
Dmitriy Zaporozhets
<
dmitriy.zaporozhets@gmail.com
>
上级
fe228b89
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
158 addition
and
156 deletion
+158
-156
spec/controllers/blob_controller_spec.rb
spec/controllers/blob_controller_spec.rb
+2
-2
spec/controllers/tree_controller_spec.rb
spec/controllers/tree_controller_spec.rb
+2
-2
spec/features/notes_on_merge_requests_spec.rb
spec/features/notes_on_merge_requests_spec.rb
+151
-139
spec/models/project_wiki_spec.rb
spec/models/project_wiki_spec.rb
+3
-13
未找到文件。
spec/controllers/blob_controller_spec.rb
浏览文件 @
a0755d2f
...
...
@@ -44,8 +44,8 @@ describe Projects::BlobController do
end
context
'redirect to tree'
do
let
(
:id
)
{
'ma
ster
/doc'
}
it
{
should
redirect_to
(
"/
#{
project
.
path_with_namespace
}
/tree/ma
ster
/doc"
)
}
let
(
:id
)
{
'ma
rkdown
/doc'
}
it
{
should
redirect_to
(
"/
#{
project
.
path_with_namespace
}
/tree/ma
rkdown
/doc"
)
}
end
end
end
spec/controllers/tree_controller_spec.rb
浏览文件 @
a0755d2f
...
...
@@ -26,7 +26,7 @@ describe Projects::TreeController do
end
context
"valid branch, valid path"
do
let
(
:id
)
{
'master/
app
/'
}
let
(
:id
)
{
'master/
encoding
/'
}
it
{
should
respond_with
(
:success
)
}
end
...
...
@@ -36,7 +36,7 @@ describe Projects::TreeController do
end
context
"invalid branch, valid path"
do
let
(
:id
)
{
'invalid-branch/
app
/'
}
let
(
:id
)
{
'invalid-branch/
encoding
/'
}
it
{
should
respond_with
(
:not_found
)
}
end
end
...
...
spec/features/notes_on_merge_requests_spec.rb
浏览文件 @
a0755d2f
require
'spec_helper'
describe
"On a merge request"
,
js:
true
,
feature:
true
do
let!
(
:merge_request
)
{
create
(
:merge_request
,
:simple
)
}
let!
(
:project
)
{
merge_request
.
source_project
}
let!
(
:note
)
{
create
(
:note_on_merge_request
,
:with_attachment
,
project:
project
)
}
before
do
login_as
:admin
visit
project_merge_request_path
(
project
,
merge_request
)
end
describe
'Comments'
do
include
RepoHelpers
subject
{
page
}
describe
"On a merge request"
,
js:
true
,
feature:
true
do
let!
(
:merge_request
)
{
create
(
:merge_request
)
}
let!
(
:project
)
{
merge_request
.
source_project
}
let!
(
:note
)
{
create
(
:note_on_merge_request
,
:with_attachment
,
project:
project
)
}
describe
"the note form"
do
it
'should be valid'
do
should
have_css
(
".js-main-target-form"
,
visible:
true
,
count:
1
)
find
(
".js-main-target-form input[type=submit]"
).
value
.
should
==
"Add Comment"
within
(
".js-main-target-form"
)
{
should_not
have_link
(
"Cancel"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview-button"
,
visible:
false
)
}
before
do
login_as
:admin
visit
project_merge_request_path
(
project
,
merge_request
)
end
describe
"with text"
do
before
do
within
(
".js-main-target-form"
)
do
fill_in
"note[note]"
,
with:
"This is awesome"
end
end
subject
{
page
}
it
'should have enable submit button and preview button'
do
within
(
".js-main-target-form"
)
{
should_not
have_css
(
".js-comment-button[disabled]"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview-button"
,
visible:
true
)
}
describe
"the note form"
do
it
'should be valid'
do
should
have_css
(
".js-main-target-form"
,
visible:
true
,
count:
1
)
find
(
".js-main-target-form input[type=submit]"
).
value
.
should
==
"Add Comment"
within
(
".js-main-target-form"
)
{
should_not
have_link
(
"Cancel"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview-button"
,
visible:
false
)
}
end
end
end
describe
"when posting a note"
do
before
do
within
(
".js-main-target-form"
)
do
fill_in
"note[note]"
,
with:
"This is awsome!"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
click_button
"Add Comment"
describe
"with text"
do
before
do
within
(
".js-main-target-form"
)
do
fill_in
"note[note]"
,
with:
"This is awesome"
end
end
it
'should have enable submit button and preview button'
do
within
(
".js-main-target-form"
)
{
should_not
have_css
(
".js-comment-button[disabled]"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview-button"
,
visible:
true
)
}
end
end
end
it
'should be added and form reset'
do
should
have_content
(
"This is awsome!"
)
within
(
".js-main-target-form"
)
{
should
have_no_field
(
"note[note]"
,
with:
"This is awesome!"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview"
,
visible:
false
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-text"
,
visible:
true
)
}
end
end
describe
"when posting a note"
do
before
do
within
(
".js-main-target-form"
)
do
fill_in
"note[note]"
,
with:
"This is awsome!"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
click_button
"Add Comment"
end
end
describe
"when editing a note"
,
js:
true
do
it
"should contain the hidden edit form"
do
within
(
"#note_
#{
note
.
id
}
"
)
{
should
have_css
(
".note-edit-form"
,
visible:
false
)
}
it
'should be added and form reset'
do
should
have_content
(
"This is awsome!"
)
within
(
".js-main-target-form"
)
{
should
have_no_field
(
"note[note]"
,
with:
"This is awesome!"
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-preview"
,
visible:
false
)
}
within
(
".js-main-target-form"
)
{
should
have_css
(
".js-note-text"
,
visible:
true
)
}
end
end
describe
"editing the note"
do
before
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
describe
"when editing a note"
,
js:
true
do
it
"should contain the hidden edit form"
do
within
(
"#note_
#{
note
.
id
}
"
)
{
should
have_css
(
".note-edit-form"
,
visible:
false
)
}
end
it
"should show the note edit form and hide the note body
"
do
within
(
"#note_
#{
note
.
id
}
"
)
do
find
(
".note-edit-form"
,
visible:
true
).
should
be_visible
find
(
".
note-text"
,
visible:
false
).
should_not
be_visible
describe
"editing the note
"
do
before
do
find
(
'.note'
).
hover
find
(
".
js-note-edit"
).
click
end
end
it
"should reset the edit note form textarea with the original content of the note if cancelled"
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
within
(
".note-edit-form"
)
do
fill_in
"note[note]"
,
with:
"Some new content"
find
(
".btn-cancel"
).
click
find
(
".js-note-text"
,
visible:
false
).
text
.
should
==
note
.
note
it
"should show the note edit form and hide the note body"
do
within
(
"#note_
#{
note
.
id
}
"
)
do
find
(
".note-edit-form"
,
visible:
true
).
should
be_visible
find
(
".note-text"
,
visible:
false
).
should_not
be_visible
end
end
end
it
"appends the edited at time to the note
"
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
it
"should reset the edit note form textarea with the original content of the note if cancelled
"
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
within
(
".note-edit-form"
)
do
fill_in
"note[note]"
,
with:
"Some new content"
find
(
".btn-save"
).
click
within
(
".note-edit-form"
)
do
fill_in
"note[note]"
,
with:
"Some new content"
find
(
".btn-cancel"
).
click
find
(
".js-note-text"
,
visible:
false
).
text
.
should
==
note
.
note
end
end
within
(
"#note_
#{
note
.
id
}
"
)
do
should
have_css
(
".note-last-update small"
)
find
(
".note-last-update small"
).
text
.
should
match
(
/Edited less than a minute ago/
)
it
"appends the edited at time to the note"
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
within
(
".note-edit-form"
)
do
fill_in
"note[note]"
,
with:
"Some new content"
find
(
".btn-save"
).
click
end
within
(
"#note_
#{
note
.
id
}
"
)
do
should
have_css
(
".note-last-update small"
)
find
(
".note-last-update small"
).
text
.
should
match
(
/Edited less than a minute ago/
)
end
end
end
end
describe
"deleting an attachment"
do
before
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
end
describe
"deleting an attachment"
do
before
do
find
(
'.note'
).
hover
find
(
".js-note-edit"
).
click
end
it
"shows the delete link"
do
within
(
".note-attachment"
)
do
should
have_css
(
".js-note-attachment-delete"
)
it
"shows the delete link"
do
within
(
".note-attachment"
)
do
should
have_css
(
".js-note-attachment-delete"
)
end
end
end
it
"removes the attachment div and resets the edit form"
do
find
(
".js-note-attachment-delete"
).
click
should_not
have_css
(
".note-attachment"
)
find
(
".note-edit-form"
,
visible:
false
).
should_not
be_visible
it
"removes the attachment div and resets the edit form"
do
find
(
".js-note-attachment-delete"
).
click
should_not
have_css
(
".note-attachment"
)
find
(
".note-edit-form"
,
visible:
false
).
should_not
be_visible
end
end
end
end
end
describe
"On a merge request diff"
,
js:
true
,
feature:
true
do
let
(
:merge_request
)
{
create
(
:merge_request
,
:with_diffs
,
:simple
)
}
let
(
:project
)
{
merge_request
.
source_project
}
before
do
login_as
:admin
visit
diffs_project_merge_request_path
(
project
,
merge_request
)
end
subject
{
page
}
describe
"On a merge request diff"
,
js:
true
,
feature:
true
do
let
(
:merge_request
)
{
create
(
:merge_request
)
}
let
(
:project
)
{
merge_request
.
source_project
}
describe
"when adding a note"
do
before
do
find
(
'a[data-line-code="8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7"]'
).
click
end
describe
"the notes holder"
do
it
{
should
have_css
(
".js-temp-notes-holder"
)
}
it
{
within
(
".js-temp-notes-holder"
)
{
should
have_css
(
".new_note"
)
}
}
login_as
:admin
visit
diffs_project_merge_request_path
(
project
,
merge_request
)
end
describe
"the note form"
do
it
"shouldn't add a second form for same row"
do
find
(
'a[data-line-code="8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7"]'
).
click
subject
{
page
}
should
have_css
(
"tr[id='8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7'] + .js-temp-notes-holder form"
,
count:
1
)
describe
"when adding a note"
do
before
do
find
(
"a[data-line-code=
\"
#{
line_code
}
\"
]"
).
click
end
it
"should be removed when canceled"
do
within
(
".diff-file form[rel$='8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7']"
)
do
find
(
".js-close-discussion-note-form"
).
trigger
(
"click"
)
end
describe
"the notes holder"
do
it
{
should
have_css
(
".js-temp-notes-holder"
)
}
should
have_no_css
(
".js-temp-notes-holder"
)
it
{
within
(
".js-temp-notes-holder"
)
{
should
have_css
(
".new_note"
)
}
}
end
end
end
describe
"with muliple note forms"
do
before
do
find
(
'a[data-line-code="8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7"]'
).
click
find
(
'a[data-line-code="8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_10_10"]'
).
click
end
describe
"the note form"
do
it
"shouldn't add a second form for same row"
do
find
(
"a[data-line-code=
\"
#{
line_code
}
\"
]"
).
click
it
{
should
have_css
(
".js-temp-notes-holder"
,
count:
2
)
}
describe
"previewing them separately"
do
before
do
# add two separate texts and trigger previews on both
within
(
"tr[id='8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_7_7'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"One comment on line 7"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
should
have_css
(
"tr[id='
#{
line_code
}
'] + .js-temp-notes-holder form"
,
count:
1
)
end
within
(
"tr[id='8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_10_10'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"Another comment on line 10"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
it
"should be removed when canceled"
do
within
(
".diff-file form[rel$='
#{
line_code
}
']"
)
do
find
(
".js-close-discussion-note-form"
).
trigger
(
"click"
)
end
should
have_no_css
(
".js-temp-notes-holder"
)
end
end
end
describe
"
posting a note
"
do
describe
"
with muliple note forms
"
do
before
do
within
(
"tr[id='8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_10_10'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"Another comment on line 10"
click_button
(
"Add Comment"
)
find
(
"a[data-line-code=
\"
#{
line_code
}
\"
]"
).
click
find
(
"a[data-line-code=
\"
#{
line_code_2
}
\"
]"
).
click
end
it
{
should
have_css
(
".js-temp-notes-holder"
,
count:
2
)
}
describe
"previewing them separately"
do
before
do
# add two separate texts and trigger previews on both
within
(
"tr[id='
#{
line_code
}
'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"One comment on line 7"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
end
within
(
"tr[id='
#{
line_code_2
}
'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"Another comment on line 10"
find
(
".js-note-preview-button"
).
trigger
(
"click"
)
end
end
end
it
'should be added as discussion'
do
should
have_content
(
"Another comment on line 10"
)
should
have_css
(
".notes_holder"
)
should
have_css
(
".notes_holder .note"
,
count:
1
)
should
have_link
(
"Reply"
)
describe
"posting a note"
do
before
do
within
(
"tr[id='
#{
line_code_2
}
'] + .js-temp-notes-holder"
)
do
fill_in
"note[note]"
,
with:
"Another comment on line 10"
click_button
(
"Add Comment"
)
end
end
it
'should be added as discussion'
do
should
have_content
(
"Another comment on line 10"
)
should
have_css
(
".notes_holder"
)
should
have_css
(
".notes_holder .note"
,
count:
1
)
should
have_link
(
"Reply"
)
end
end
end
end
def
line_code
sample_compare
.
changes
.
first
[
:line_code
]
end
def
line_code_2
sample_compare
.
changes
.
last
[
:line_code
]
end
end
spec/models/project_wiki_spec.rb
浏览文件 @
a0755d2f
...
...
@@ -41,23 +41,13 @@ describe ProjectWiki do
subject
.
wiki
.
should
be_a
Gollum
::
Wiki
end
before
do
Gitlab
::
Shell
.
any_instance
.
stub
(
:add_repository
)
do
create_temp_repo
(
"
#{
Rails
.
root
}
/tmp/test-git-base-path/non-existant.wiki.git"
)
end
project
.
stub
(
:path_with_namespace
).
and_return
(
"non-existant"
)
end
it
"creates a new wiki repo if one does not yet exist"
do
wiki
=
ProjectWiki
.
new
(
project
,
user
)
wiki
.
create_page
(
"index"
,
"test content"
).
should_not
==
false
FileUtils
.
rm_rf
wiki
.
send
(
:path_to_repo
)
project_wiki
.
create_page
(
"index"
,
"test content"
).
should
be_true
end
it
"raises CouldNotCreateWikiError if it can't create the wiki repository"
do
ProjectWiki
.
any_instance
.
stub
(
:init_repo
).
and_return
(
false
)
expect
{
ProjectWiki
.
new
(
project
,
user
).
wiki
}.
to
raise_exception
(
ProjectWiki
::
CouldNotCreateWikiError
)
project_wiki
.
stub
(
:init_repo
).
and_return
(
false
)
expect
{
project_wiki
.
send
(
:create_repo!
)
}.
to
raise_exception
(
ProjectWiki
::
CouldNotCreateWikiError
)
end
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录