Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
519275c1
Commit
519275c1
authored
Jul 25, 2016
by
tiagonbotelho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixes part1 of files to start using active tense
parent
551ffc0a
Changes
75
Hide whitespace changes
Inline
Side-by-side
Showing
75 changed files
with
322 additions
and
321 deletions
+322
-321
spec/controllers/admin/users_controller_spec.rb
spec/controllers/admin/users_controller_spec.rb
+1
-1
spec/controllers/application_controller_spec.rb
spec/controllers/application_controller_spec.rb
+3
-3
spec/controllers/groups/avatars_controller_spec.rb
spec/controllers/groups/avatars_controller_spec.rb
+1
-1
spec/controllers/groups/milestones_controller_spec.rb
spec/controllers/groups/milestones_controller_spec.rb
+1
-1
spec/controllers/profiles/avatars_controller_spec.rb
spec/controllers/profiles/avatars_controller_spec.rb
+1
-1
spec/controllers/profiles/keys_controller_spec.rb
spec/controllers/profiles/keys_controller_spec.rb
+9
-9
spec/controllers/projects/avatars_controller_spec.rb
spec/controllers/projects/avatars_controller_spec.rb
+1
-1
spec/controllers/projects/commit_controller_spec.rb
spec/controllers/projects/commit_controller_spec.rb
+13
-13
spec/controllers/projects/commits_controller_spec.rb
spec/controllers/projects/commits_controller_spec.rb
+1
-1
spec/controllers/projects/compare_controller_spec.rb
spec/controllers/projects/compare_controller_spec.rb
+4
-4
spec/controllers/projects/forks_controller_spec.rb
spec/controllers/projects/forks_controller_spec.rb
+5
-5
spec/controllers/projects/issues_controller_spec.rb
spec/controllers/projects/issues_controller_spec.rb
+8
-8
spec/controllers/projects/merge_requests_controller_spec.rb
spec/controllers/projects/merge_requests_controller_spec.rb
+6
-6
spec/controllers/projects/milestones_controller_spec.rb
spec/controllers/projects/milestones_controller_spec.rb
+1
-1
spec/controllers/projects/project_members_controller_spec.rb
spec/controllers/projects/project_members_controller_spec.rb
+1
-1
spec/controllers/projects/protected_branches_controller_spec.rb
...ontrollers/projects/protected_branches_controller_spec.rb
+1
-1
spec/controllers/projects/raw_controller_spec.rb
spec/controllers/projects/raw_controller_spec.rb
+1
-1
spec/controllers/projects/services_controller_spec.rb
spec/controllers/projects/services_controller_spec.rb
+2
-2
spec/controllers/projects_controller_spec.rb
spec/controllers/projects_controller_spec.rb
+5
-5
spec/features/admin/admin_abuse_reports_spec.rb
spec/features/admin/admin_abuse_reports_spec.rb
+2
-2
spec/features/admin/admin_hooks_spec.rb
spec/features/admin/admin_hooks_spec.rb
+3
-3
spec/features/admin/admin_projects_spec.rb
spec/features/admin/admin_projects_spec.rb
+3
-3
spec/features/admin/admin_users_spec.rb
spec/features/admin/admin_users_spec.rb
+14
-14
spec/features/atom/dashboard_spec.rb
spec/features/atom/dashboard_spec.rb
+3
-3
spec/features/atom/issues_spec.rb
spec/features/atom/issues_spec.rb
+2
-2
spec/features/atom/users_spec.rb
spec/features/atom/users_spec.rb
+6
-6
spec/features/ci_lint_spec.rb
spec/features/ci_lint_spec.rb
+1
-1
spec/features/commits_spec.rb
spec/features/commits_spec.rb
+1
-1
spec/features/compare_spec.rb
spec/features/compare_spec.rb
+3
-3
spec/features/dashboard/label_filter_spec.rb
spec/features/dashboard/label_filter_spec.rb
+1
-1
spec/features/dashboard_issues_spec.rb
spec/features/dashboard_issues_spec.rb
+3
-3
spec/features/gitlab_flavored_markdown_spec.rb
spec/features/gitlab_flavored_markdown_spec.rb
+12
-12
spec/features/help_pages_spec.rb
spec/features/help_pages_spec.rb
+1
-1
spec/features/issues/award_emoji_spec.rb
spec/features/issues/award_emoji_spec.rb
+5
-5
spec/features/issues/award_spec.rb
spec/features/issues/award_spec.rb
+4
-4
spec/features/issues/bulk_assignment_labels_spec.rb
spec/features/issues/bulk_assignment_labels_spec.rb
+4
-4
spec/features/issues/filter_by_labels_spec.rb
spec/features/issues/filter_by_labels_spec.rb
+23
-23
spec/features/issues/filter_by_milestone_spec.rb
spec/features/issues/filter_by_milestone_spec.rb
+3
-3
spec/features/issues/filter_issues_spec.rb
spec/features/issues/filter_issues_spec.rb
+19
-19
spec/features/issues/issue_sidebar_spec.rb
spec/features/issues/issue_sidebar_spec.rb
+4
-4
spec/features/issues/new_branch_button_spec.rb
spec/features/issues/new_branch_button_spec.rb
+1
-1
spec/features/issues/todo_spec.rb
spec/features/issues/todo_spec.rb
+2
-2
spec/features/issues/update_issues_spec.rb
spec/features/issues/update_issues_spec.rb
+6
-6
spec/features/issues_spec.rb
spec/features/issues_spec.rb
+8
-8
spec/features/login_spec.rb
spec/features/login_spec.rb
+1
-1
spec/features/merge_requests/award_spec.rb
spec/features/merge_requests/award_spec.rb
+4
-4
spec/features/merge_requests/edit_mr_spec.rb
spec/features/merge_requests/edit_mr_spec.rb
+1
-1
spec/features/merge_requests/filter_by_milestone_spec.rb
spec/features/merge_requests/filter_by_milestone_spec.rb
+3
-3
spec/features/merge_requests/merge_when_build_succeeds_spec.rb
...features/merge_requests/merge_when_build_succeeds_spec.rb
+1
-1
spec/features/milestone_spec.rb
spec/features/milestone_spec.rb
+2
-2
spec/features/notes_on_merge_requests_spec.rb
spec/features/notes_on_merge_requests_spec.rb
+6
-6
spec/features/participants_autocomplete_spec.rb
spec/features/participants_autocomplete_spec.rb
+3
-3
spec/features/pipelines_spec.rb
spec/features/pipelines_spec.rb
+5
-5
spec/features/profile_spec.rb
spec/features/profile_spec.rb
+2
-2
spec/features/projects/labels/update_prioritization_spec.rb
spec/features/projects/labels/update_prioritization_spec.rb
+2
-2
spec/features/projects_spec.rb
spec/features/projects_spec.rb
+4
-4
spec/features/search_spec.rb
spec/features/search_spec.rb
+9
-9
spec/features/todos/todos_spec.rb
spec/features/todos/todos_spec.rb
+1
-1
spec/features/variables_spec.rb
spec/features/variables_spec.rb
+4
-4
spec/finders/merge_requests_finder_spec.rb
spec/finders/merge_requests_finder_spec.rb
+2
-2
spec/finders/notes_finder_spec.rb
spec/finders/notes_finder_spec.rb
+2
-2
spec/helpers/application_helper_spec.rb
spec/helpers/application_helper_spec.rb
+10
-10
spec/helpers/blob_helper_spec.rb
spec/helpers/blob_helper_spec.rb
+5
-5
spec/helpers/diff_helper_spec.rb
spec/helpers/diff_helper_spec.rb
+5
-5
spec/helpers/emails_helper_spec.rb
spec/helpers/emails_helper_spec.rb
+6
-6
spec/helpers/events_helper_spec.rb
spec/helpers/events_helper_spec.rb
+7
-7
spec/helpers/gitlab_markdown_helper_spec.rb
spec/helpers/gitlab_markdown_helper_spec.rb
+10
-10
spec/helpers/graph_helper_spec.rb
spec/helpers/graph_helper_spec.rb
+1
-1
spec/helpers/groups_helper_spec.rb
spec/helpers/groups_helper_spec.rb
+2
-2
spec/helpers/issues_helper_spec.rb
spec/helpers/issues_helper_spec.rb
+5
-4
spec/helpers/notes_helper_spec.rb
spec/helpers/notes_helper_spec.rb
+1
-1
spec/helpers/search_helper_spec.rb
spec/helpers/search_helper_spec.rb
+1
-1
spec/helpers/submodule_helper_spec.rb
spec/helpers/submodule_helper_spec.rb
+14
-14
spec/helpers/tree_helper_spec.rb
spec/helpers/tree_helper_spec.rb
+2
-2
spec/lib/ci/charts_spec.rb
spec/lib/ci/charts_spec.rb
+2
-2
No files found.
spec/controllers/admin/users_controller_spec.rb
View file @
519275c1
...
...
@@ -39,7 +39,7 @@ describe Admin::UsersController do
user
.
ldap_block
end
it
'
will
not unblock user'
do
it
'
does
not unblock user'
do
put
:unblock
,
id:
user
.
username
user
.
reload
expect
(
user
.
blocked?
).
to
be_truthy
...
...
spec/controllers/application_controller_spec.rb
View file @
519275c1
...
...
@@ -5,7 +5,7 @@ describe ApplicationController do
let
(
:user
)
{
create
(
:user
)
}
let
(
:controller
)
{
ApplicationController
.
new
}
it
'
should redirect
if the user is over their password expiry'
do
it
'
redirects
if the user is over their password expiry'
do
user
.
password_expires_at
=
Time
.
new
(
2002
)
expect
(
user
.
ldap_user?
).
to
be_falsey
allow
(
controller
).
to
receive
(
:current_user
).
and_return
(
user
)
...
...
@@ -14,7 +14,7 @@ describe ApplicationController do
controller
.
send
(
:check_password_expiration
)
end
it
'
should
not redirect if the user is under their password expiry'
do
it
'
does
not redirect if the user is under their password expiry'
do
user
.
password_expires_at
=
Time
.
now
+
20010101
expect
(
user
.
ldap_user?
).
to
be_falsey
allow
(
controller
).
to
receive
(
:current_user
).
and_return
(
user
)
...
...
@@ -22,7 +22,7 @@ describe ApplicationController do
controller
.
send
(
:check_password_expiration
)
end
it
'
should
not redirect if the user is over their password expiry but they are an ldap user'
do
it
'
does
not redirect if the user is over their password expiry but they are an ldap user'
do
user
.
password_expires_at
=
Time
.
new
(
2002
)
allow
(
user
).
to
receive
(
:ldap_user?
).
and_return
(
true
)
allow
(
controller
).
to
receive
(
:current_user
).
and_return
(
user
)
...
...
spec/controllers/groups/avatars_controller_spec.rb
View file @
519275c1
...
...
@@ -9,7 +9,7 @@ describe Groups::AvatarsController do
sign_in
(
user
)
end
it
'
destroy should remove avatar from DB
'
do
it
'
removes avatar from DB calling destroy
'
do
delete
:destroy
,
group_id:
group
.
path
@group
=
assigns
(
:group
)
expect
(
@group
.
avatar
.
present?
).
to
be_falsey
...
...
spec/controllers/groups/milestones_controller_spec.rb
View file @
519275c1
...
...
@@ -15,7 +15,7 @@ describe Groups::MilestonesController do
end
describe
"#create"
do
it
"
should create
group milestone with Chinese title"
do
it
"
creates
group milestone with Chinese title"
do
post
:create
,
group_id:
group
.
id
,
milestone:
{
project_ids:
[
project
.
id
,
project2
.
id
],
title:
title
}
...
...
spec/controllers/profiles/avatars_controller_spec.rb
View file @
519275c1
...
...
@@ -8,7 +8,7 @@ describe Profiles::AvatarsController do
controller
.
instance_variable_set
(
:@user
,
user
)
end
it
'
destroy should remove avatar from DB
'
do
it
'
removes avatar from DB by calling destroy
'
do
delete
:destroy
@user
=
assigns
(
:user
)
expect
(
@user
.
avatar
.
present?
).
to
be_falsey
...
...
spec/controllers/profiles/keys_controller_spec.rb
View file @
519275c1
...
...
@@ -6,7 +6,7 @@ describe Profiles::KeysController do
describe
'#new'
do
before
{
sign_in
(
user
)
}
it
'redirect to #index'
do
it
'redirect
s
to #index'
do
get
:new
expect
(
response
).
to
redirect_to
(
profile_keys_path
)
...
...
@@ -15,7 +15,7 @@ describe Profiles::KeysController do
describe
"#get_keys"
do
describe
"non existant user"
do
it
"
should generally not
work"
do
it
"
does not generally
work"
do
get
:get_keys
,
username:
'not-existent'
expect
(
response
).
not_to
be_success
...
...
@@ -23,19 +23,19 @@ describe Profiles::KeysController do
end
describe
"user with no keys"
do
it
"
should
generally work"
do
it
"
does
generally work"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
).
to
be_success
end
it
"
should render
all keys separated with a new line"
do
it
"
renders
all keys separated with a new line"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
.
body
).
to
eq
(
""
)
end
it
"
should respond
with text/plain content type"
do
it
"
responds
with text/plain content type"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
.
content_type
).
to
eq
(
"text/plain"
)
end
...
...
@@ -47,13 +47,13 @@ describe Profiles::KeysController do
user
.
keys
<<
create
(
:another_key
)
end
it
"
should
generally work"
do
it
"
does
generally work"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
).
to
be_success
end
it
"
should render
all keys separated with a new line"
do
it
"
renders
all keys separated with a new line"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
.
body
).
not_to
eq
(
""
)
...
...
@@ -65,13 +65,13 @@ describe Profiles::KeysController do
expect
(
response
.
body
).
to
match
(
/AQDmTillFzNTrrGgwaCKaSj/
)
end
it
"
should
not render the comment of the key"
do
it
"
does
not render the comment of the key"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
.
body
).
not_to
match
(
/dummy@gitlab.com/
)
end
it
"
should respond
with text/plain content type"
do
it
"
responds
with text/plain content type"
do
get
:get_keys
,
username:
user
.
username
expect
(
response
.
content_type
).
to
eq
(
"text/plain"
)
end
...
...
spec/controllers/projects/avatars_controller_spec.rb
View file @
519275c1
...
...
@@ -10,7 +10,7 @@ describe Projects::AvatarsController do
controller
.
instance_variable_set
(
:@project
,
project
)
end
it
'
destroy should remove avatar from DB
'
do
it
'
removes avatar from DB by calling destroy
'
do
delete
:destroy
,
namespace_id:
project
.
namespace
.
id
,
project_id:
project
.
id
expect
(
project
.
avatar
.
present?
).
to
be_falsey
expect
(
project
).
to
be_valid
...
...
spec/controllers/projects/commit_controller_spec.rb
View file @
519275c1
...
...
@@ -47,25 +47,25 @@ describe Projects::CommitController do
end
shared_examples
"export as"
do
|
format
|
it
"
should
generally work"
do
it
"
does
generally work"
do
go
(
id:
commit
.
id
,
format:
format
)
expect
(
response
).
to
be_success
end
it
"
should generate
it"
do
it
"
generates
it"
do
expect_any_instance_of
(
Commit
).
to
receive
(
:"to_
#{
format
}
"
)
go
(
id:
commit
.
id
,
format:
format
)
end
it
"
should render
it"
do
it
"
renders
it"
do
go
(
id:
commit
.
id
,
format:
format
)
expect
(
response
.
body
).
to
eq
(
commit
.
send
(
:"to_
#{
format
}
"
))
end
it
"
should
not escape Html"
do
it
"
does
not escape Html"
do
allow_any_instance_of
(
Commit
).
to
receive
(
:"to_
#{
format
}
"
).
and_return
(
'HTML entities &<>" '
)
...
...
@@ -88,7 +88,7 @@ describe Projects::CommitController do
expect
(
response
.
body
).
to
start_with
(
"diff --git"
)
end
it
"
should really
only be a git diff without whitespace changes"
do
it
"
is
only be a git diff without whitespace changes"
do
go
(
id:
'66eceea0db202bb39c4e445e8ca28689645366c5'
,
format:
format
,
w:
1
)
expect
(
response
.
body
).
to
start_with
(
"diff --git"
)
...
...
@@ -103,13 +103,13 @@ describe Projects::CommitController do
include_examples
"export as"
,
:patch
let
(
:format
)
{
:patch
}
it
"
should really be
a git email patch"
do
it
"
is
a git email patch"
do
go
(
id:
commit
.
id
,
format:
format
)
expect
(
response
.
body
).
to
start_with
(
"From
#{
commit
.
id
}
"
)
end
it
"
should contain
a git diff"
do
it
"
contains
a git diff"
do
go
(
id:
commit
.
id
,
format:
format
)
expect
(
response
.
body
).
to
match
(
/^diff --git/
)
...
...
@@ -147,7 +147,7 @@ describe Projects::CommitController do
describe
'POST revert'
do
context
'when target branch is not provided'
do
it
'
should render
the 404 page'
do
it
'
renders
the 404 page'
do
post
(
:revert
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -159,7 +159,7 @@ describe Projects::CommitController do
end
context
'when the revert was successful'
do
it
'
should redirect
to the commits page'
do
it
'
redirects
to the commits page'
do
post
(
:revert
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -180,7 +180,7 @@ describe Projects::CommitController do
id:
commit
.
id
)
end
it
'
should redirect
to the commit page'
do
it
'
redirects
to the commit page'
do
# Reverting a commit that has been already reverted.
post
(
:revert
,
namespace_id:
project
.
namespace
.
to_param
,
...
...
@@ -196,7 +196,7 @@ describe Projects::CommitController do
describe
'POST cherry_pick'
do
context
'when target branch is not provided'
do
it
'
should render
the 404 page'
do
it
'
renders
the 404 page'
do
post
(
:cherry_pick
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -208,7 +208,7 @@ describe Projects::CommitController do
end
context
'when the cherry-pick was successful'
do
it
'
should redirect
to the commits page'
do
it
'
redirects
to the commits page'
do
post
(
:cherry_pick
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -229,7 +229,7 @@ describe Projects::CommitController do
id:
master_pickable_commit
.
id
)
end
it
'
should redirect
to the commit page'
do
it
'
redirects
to the commit page'
do
# Cherry-picking a commit that has been already cherry-picked.
post
(
:cherry_pick
,
namespace_id:
project
.
namespace
.
to_param
,
...
...
spec/controllers/projects/commits_controller_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ describe Projects::CommitsController do
describe
"GET show"
do
context
"as atom feed"
do
it
"
should render
as atom"
do
it
"
renders
as atom"
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
spec/controllers/projects/compare_controller_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ describe Projects::CompareController do
project
.
team
<<
[
user
,
:master
]
end
it
'compare sho
uld show
some diffs'
do
it
'compare sho
ws
some diffs'
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -23,7 +23,7 @@ describe Projects::CompareController do
expect
(
assigns
(
:commits
).
length
).
to
be
>=
1
end
it
'compare sho
uld show
some diffs with ignore whitespace change option'
do
it
'compare sho
ws
some diffs with ignore whitespace change option'
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -41,7 +41,7 @@ describe Projects::CompareController do
end
describe
'non-existent refs'
do
it
'invalid source ref'
do
it
'
uses
invalid source ref'
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -53,7 +53,7 @@ describe Projects::CompareController do
expect
(
assigns
(
:commits
)).
to
eq
([])
end
it
'invalid target ref'
do
it
'
uses
invalid target ref'
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
spec/controllers/projects/forks_controller_spec.rb
View file @
519275c1
...
...
@@ -16,7 +16,7 @@ describe Projects::ForksController do
context
'when fork is public'
do
before
{
forked_project
.
update_attribute
(
:visibility_level
,
Project
::
PUBLIC
)
}
it
'
should be
visible for non logged in users'
do
it
'
is
visible for non logged in users'
do
get_forks
expect
(
assigns
[
:forks
]).
to
be_present
...
...
@@ -28,7 +28,7 @@ describe Projects::ForksController do
forked_project
.
update_attributes
(
visibility_level:
Project
::
PRIVATE
,
group:
group
)
end
it
'
should
not be visible for non logged in users'
do
it
'
is
not be visible for non logged in users'
do
get_forks
expect
(
assigns
[
:forks
]).
to
be_blank
...
...
@@ -38,7 +38,7 @@ describe Projects::ForksController do
before
{
sign_in
(
project
.
creator
)
}
context
'when user is not a Project member neither a group member'
do
it
'
should
not see the Project listed'
do
it
'
does
not see the Project listed'
do
get_forks
expect
(
assigns
[
:forks
]).
to
be_blank
...
...
@@ -48,7 +48,7 @@ describe Projects::ForksController do
context
'when user is a member of the Project'
do
before
{
forked_project
.
team
<<
[
project
.
creator
,
:developer
]
}
it
's
hould see
the project listed'
do
it
's
ees
the project listed'
do
get_forks
expect
(
assigns
[
:forks
]).
to
be_present
...
...
@@ -58,7 +58,7 @@ describe Projects::ForksController do
context
'when user is a member of the Group'
do
before
{
forked_project
.
group
.
add_developer
(
project
.
creator
)
}
it
's
hould see
the project listed'
do
it
's
ees
the project listed'
do
get_forks
expect
(
assigns
[
:forks
]).
to
be_present
...
...
spec/controllers/projects/issues_controller_spec.rb
View file @
519275c1
...
...
@@ -30,7 +30,7 @@ describe Projects::IssuesController do
expect
(
response
).
to
have_http_status
(
200
)
end
it
"return 301 if request path doesn't match project path"
do
it
"return
s
301 if request path doesn't match project path"
do
get
:index
,
namespace_id:
project
.
namespace
.
path
,
project_id:
project
.
path
.
upcase
expect
(
response
).
to
redirect_to
(
namespace_project_issues_path
(
project
.
namespace
,
project
))
...
...
@@ -119,21 +119,21 @@ describe Projects::IssuesController do
let!
(
:request_forgery_timing_attack
)
{
create
(
:issue
,
:confidential
,
project:
project
,
assignee:
assignee
)
}
describe
'GET #index'
do
it
'
should
not list confidential issues for guests'
do
it
'
does
not list confidential issues for guests'
do
sign_out
(
:user
)
get_issues
expect
(
assigns
(
:issues
)).
to
eq
[
issue
]
end
it
'
should
not list confidential issues for non project members'
do
it
'
does
not list confidential issues for non project members'
do
sign_in
(
non_member
)
get_issues
expect
(
assigns
(
:issues
)).
to
eq
[
issue
]
end
it
'
should
not list confidential issues for project members with guest role'
do
it
'
does
not list confidential issues for project members with guest role'
do
sign_in
(
member
)
project
.
team
<<
[
member
,
:guest
]
...
...
@@ -142,7 +142,7 @@ describe Projects::IssuesController do
expect
(
assigns
(
:issues
)).
to
eq
[
issue
]
end
it
'
should list
confidential issues for author'
do
it
'
lists
confidential issues for author'
do
sign_in
(
author
)
get_issues
...
...
@@ -150,7 +150,7 @@ describe Projects::IssuesController do
expect
(
assigns
(
:issues
)).
not_to
include
request_forgery_timing_attack
end
it
'
should list
confidential issues for assignee'
do
it
'
lists
confidential issues for assignee'
do
sign_in
(
assignee
)
get_issues
...
...
@@ -158,7 +158,7 @@ describe Projects::IssuesController do
expect
(
assigns
(
:issues
)).
to
include
request_forgery_timing_attack
end
it
'
should list
confidential issues for project members'
do
it
'
lists
confidential issues for project members'
do
sign_in
(
member
)
project
.
team
<<
[
member
,
:developer
]
...
...
@@ -168,7 +168,7 @@ describe Projects::IssuesController do
expect
(
assigns
(
:issues
)).
to
include
request_forgery_timing_attack
end
it
'
should list
confidential issues for admin'
do
it
'
lists
confidential issues for admin'
do
sign_in
(
admin
)
get_issues
...
...
spec/controllers/projects/merge_requests_controller_spec.rb
View file @
519275c1
...
...
@@ -36,7 +36,7 @@ describe Projects::MergeRequestsController do
describe
"GET show"
do
shared_examples
"export merge as"
do
|
format
|
it
"
should
generally work"
do
it
"
does
generally work"
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -46,7 +46,7 @@ describe Projects::MergeRequestsController do
expect
(
response
).
to
be_success
end
it
"
should generate
it"
do
it
"
generates
it"
do
expect_any_instance_of
(
MergeRequest
).
to
receive
(
:"to_
#{
format
}
"
)
get
(
:show
,
...
...
@@ -56,7 +56,7 @@ describe Projects::MergeRequestsController do
format:
format
)
end
it
"
should render
it"
do
it
"
renders
it"
do
get
(
:show
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -66,7 +66,7 @@ describe Projects::MergeRequestsController do
expect
(
response
.
body
).
to
eq
(
merge_request
.
send
(
:"to_
#{
format
}
"
).
to_s
)
end
it
"
should
not escape Html"
do
it
"
does
not escape Html"
do
allow_any_instance_of
(
MergeRequest
).
to
receive
(
:"to_
#{
format
}
"
).
and_return
(
'HTML entities &<>" '
)
...
...
@@ -118,7 +118,7 @@ describe Projects::MergeRequestsController do
context
'when filtering by opened state'
do
context
'with opened merge requests'
do
it
'
should list
those merge requests'
do
it
'
lists
those merge requests'
do
get_merge_requests
expect
(
assigns
(
:merge_requests
)).
to
include
(
merge_request
)
...
...
@@ -131,7 +131,7 @@ describe Projects::MergeRequestsController do
merge_request
.
reopen!
end
it
'
should list
those merge requests'
do
it
'
lists
those merge requests'
do
get_merge_requests
expect
(
assigns
(
:merge_requests
)).
to
include
(
merge_request
)
...
...
spec/controllers/projects/milestones_controller_spec.rb
View file @
519275c1
...
...
@@ -14,7 +14,7 @@ describe Projects::MilestonesController do
end
describe
"#destroy"
do
it
"
should remove
milestone"
do
it
"
removes
milestone"
do
expect
(
issue
.
milestone_id
).
to
eq
(
milestone
.
id
)
delete
:destroy
,
namespace_id:
project
.
namespace
.
id
,
project_id:
project
.
id
,
id:
milestone
.
iid
,
format: :js
...
...
spec/controllers/projects/project_members_controller_spec.rb
View file @
519275c1
...
...
@@ -167,7 +167,7 @@ describe Projects::ProjectMembersController do
sign_in
(
user
)
end
it
'
can
not remove himself from the project'
do
it
'
does
not remove himself from the project'
do
delete
:leave
,
namespace_id:
project
.
namespace
,
project_id:
project
...
...
spec/controllers/projects/protected_branches_controller_spec.rb
View file @
519275c1
...
...
@@ -3,7 +3,7 @@ require('spec_helper')
describe
Projects
::
ProtectedBranchesController
do
describe
"GET #index"
do
let
(
:project
)
{
create
(
:project_empty_repo
,
:public
)
}
it
"redirect empty repo to projects page"
do
it
"redirect
s
empty repo to projects page"
do
get
(
:index
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
)
end
end
...
...
spec/controllers/projects/raw_controller_spec.rb
View file @
519275c1
...
...
@@ -24,7 +24,7 @@ describe Projects::RawController do
context
'image header'
do
let
(
:id
)
{
'master/files/images/6049019_460s.jpg'
}
it
'set image content type header'
do
it
'set
s
image content type header'
do
get
(
:show
,
namespace_id:
public_project
.
namespace
.
to_param
,
project_id:
public_project
.
to_param
,
...
...
spec/controllers/projects/services_controller_spec.rb
View file @
519275c1
...
...
@@ -19,7 +19,7 @@ describe Projects::ServicesController do
describe
"#test"
do
context
'success'
do
it
"
should redirect
and show success message"
do
it
"
redirects
and show success message"
do
expect
(
service
).
to
receive
(
:test
).
and_return
({
success:
true
,
result:
'done'
})
get
:test
,
namespace_id:
project
.
namespace
.
id
,
project_id:
project
.
id
,
id:
service
.
id
,
format: :html
expect
(
response
.
status
).
to
redirect_to
(
'/'
)
...
...
@@ -28,7 +28,7 @@ describe Projects::ServicesController do
end
context
'failure'
do
it
"
should redirect
and show failure message"
do
it
"
redirects
and show failure message"
do
expect
(
service
).
to
receive
(
:test
).
and_return
({
success:
false
,
result:
'Bad test'
})
get
:test
,
namespace_id:
project
.
namespace
.
id
,
project_id:
project
.
id
,
id:
service
.
id
,
format: :html
expect
(
response
.
status
).
to
redirect_to
(
'/'
)
...
...
spec/controllers/projects_controller_spec.rb
View file @
519275c1
...
...
@@ -128,7 +128,7 @@ describe ProjectsController do
context
"when the url contains .atom"
do
let
(
:public_project_with_dot_atom
)
{
build
(
:project
,
:public
,
name:
'my.atom'
,
path:
'my.atom'
)
}
it
'expect an error creating the project'
do
it
'expect
s
an error creating the project'
do
expect
(
public_project_with_dot_atom
).
not_to
be_valid
end
end
...
...
@@ -222,7 +222,7 @@ describe ProjectsController do
create
(
:forked_project_link
,
forked_to_project:
project_fork
)
end
it
'
should remove
fork from project'
do
it
'
removes
fork from project'
do
delete
(
:remove_fork
,
namespace_id:
project_fork
.
namespace
.
to_param
,
id:
project_fork
.
to_param
,
format: :js
)
...
...
@@ -236,7 +236,7 @@ describe ProjectsController do
context
'when project not forked'
do
let
(
:unforked_project
)
{
create
(
:project
,
namespace:
user
.
namespace
)
}
it
'
should do
nothing if project was not forked'
do
it
'
does
nothing if project was not forked'
do
delete
(
:remove_fork
,
namespace_id:
unforked_project
.
namespace
.
to_param
,
id:
unforked_project
.
to_param
,
format: :js
)
...
...
@@ -256,7 +256,7 @@ describe ProjectsController do
end
describe
"GET refs"
do
it
"
should get
a list of branches and tags"
do
it
"
gets
a list of branches and tags"
do
get
:refs
,
namespace_id:
public_project
.
namespace
.
path
,
id:
public_project
.
path
parsed_body
=
JSON
.
parse
(
response
.
body
)
...
...
@@ -265,7 +265,7 @@ describe ProjectsController do
expect
(
parsed_body
[
"Commits"
]).
to
be_nil
end
it
"
should get
a list of branches, tags and commits"
do
it
"
gets
a list of branches, tags and commits"
do
get
:refs
,
namespace_id:
public_project
.
namespace
.
path
,
id:
public_project
.
path
,
ref:
"123456"
parsed_body
=
JSON
.
parse
(
response
.
body
)
...
...
spec/features/admin/admin_abuse_reports_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ describe "Admin::AbuseReports", feature: true, js: true do
end
describe
'in the abuse report view'
do
it
"
should present
a link to the user's profile"
do
it
"
presents
a link to the user's profile"
do
visit
admin_abuse_reports_path
expect
(
page
).
to
have_link
user
.
name
,
href:
user_path
(
user
)
...
...
@@ -19,7 +19,7 @@ describe "Admin::AbuseReports", feature: true, js: true do
end
describe
'in the profile page of the user'
do
it
'sho
uld show
a link to the admin view of the user'
do
it
'sho
ws
a link to the admin view of the user'
do
visit
user_path
(
user
)
expect
(
page
).
to
have_link
''
,
href:
admin_user_path
(
user
)
...
...
spec/features/admin/admin_hooks_spec.rb
View file @
519275c1
...
...
@@ -9,7 +9,7 @@ describe "Admin::Hooks", feature: true do
end
describe
"GET /admin/hooks"
do
it
"
should be
ok"
do
it
"
is
ok"
do
visit
admin_root_path
page
.
within
".layout-nav"
do
...
...
@@ -19,7 +19,7 @@ describe "Admin::Hooks", feature: true do
expect
(
current_path
).
to
eq
(
admin_hooks_path
)
end
it
"
should have
hooks list"
do
it
"
has
hooks list"
do
visit
admin_hooks_path
expect
(
page
).
to
have_content
(
@system_hook
.
url
)
end
...
...
@@ -33,7 +33,7 @@ describe "Admin::Hooks", feature: true do
expect
{
click_button
"Add System Hook"
}.
to
change
(
SystemHook
,
:count
).
by
(
1
)
end
it
"
should open
new hook popup"
do
it
"
opens
new hook popup"
do
expect
(
current_path
).
to
eq
(
admin_hooks_path
)
expect
(
page
).
to
have_content
(
@url
)
end
...
...
spec/features/admin/admin_projects_spec.rb
View file @
519275c1
...
...
@@ -11,11 +11,11 @@ describe "Admin::Projects", feature: true do
visit
admin_namespaces_projects_path
end
it
"
should be
ok"
do
it
"
is
ok"
do
expect
(
current_path
).
to
eq
(
admin_namespaces_projects_path
)
end
it
"
should have
projects list"
do
it
"
has
projects list"
do
expect
(
page
).
to
have_content
(
@project
.
name
)
end
end
...
...
@@ -26,7 +26,7 @@ describe "Admin::Projects", feature: true do
click_link
"
#{
@project
.
name
}
"
end
it
"
should have
project info"
do
it
"
has
project info"
do
expect
(
page
).
to
have_content
(
@project
.
path
)
expect
(
page
).
to
have_content
(
@project
.
name
)
end
...
...
spec/features/admin/admin_users_spec.rb
View file @
519275c1
...
...
@@ -8,11 +8,11 @@ describe "Admin::Users", feature: true do
visit
admin_users_path
end
it
"
should be
ok"
do
it
"
is
ok"
do
expect
(
current_path
).
to
eq
(
admin_users_path
)
end
it
"
should have
users list"
do
it
"
has
users list"
do
expect
(
page
).
to
have_content
(
@user
.
email
)
expect
(
page
).
to
have_content
(
@user
.
name
)
end
...
...
@@ -66,11 +66,11 @@ describe "Admin::Users", feature: true do
fill_in
"user_email"
,
with:
"bigbang@mail.com"
end
it
"
should create
new user"
do
it
"
creates
new user"
do
expect
{
click_button
"Create user"
}.
to
change
{
User
.
count
}.
by
(
1
)
end
it
"
should apply
defaults to user"
do
it
"
applies
defaults to user"
do
click_button
"Create user"
user
=
User
.
find_by
(
username:
'bang'
)
expect
(
user
.
projects_limit
).
...
...
@@ -79,20 +79,20 @@ describe "Admin::Users", feature: true do
to
eq
(
Gitlab
.
config
.
gitlab
.
default_can_create_group
)
end
it
"
should create
user with valid data"
do
it
"
creates
user with valid data"
do
click_button
"Create user"
user
=
User
.
find_by
(
username:
'bang'
)
expect
(
user
.
name
).
to
eq
(
'Big Bang'
)
expect
(
user
.
email
).
to
eq
(
'bigbang@mail.com'
)
end
it
"
should call
send mail"
do
it
"
calls
send mail"
do
expect_any_instance_of
(
NotificationService
).
to
receive
(
:new_user
)
click_button
"Create user"
end
it
"s
hould send
valid email to user with email & password"
do
it
"s
ends
valid email to user with email & password"
do
perform_enqueued_jobs
do
click_button
"Create user"
end
...
...
@@ -106,7 +106,7 @@ describe "Admin::Users", feature: true do
end
describe
"GET /admin/users/:id"
do
it
"
should have
user info"
do
it
"
has
user info"
do
visit
admin_users_path
click_link
@user
.
name
...
...
@@ -123,13 +123,13 @@ describe "Admin::Users", feature: true do
expect
(
page
).
to
have_content
(
'Impersonate'
)
end
it
'
should
not show impersonate button for admin itself'
do
it
'
does
not show impersonate button for admin itself'
do
visit
admin_user_path
(
@user
)
expect
(
page
).
not_to
have_content
(
'Impersonate'
)
end
it
'
should
not show impersonate button for blocked user'
do
it
'
does
not show impersonate button for blocked user'
do
another_user
.
block
visit
admin_user_path
(
another_user
)
...
...
@@ -153,7 +153,7 @@ describe "Admin::Users", feature: true do
expect
(
icon
).
not_to
eql
nil
end
it
'
can log
out of impersonated user back to original user'
do
it
'
logs
out of impersonated user back to original user'
do
find
(
:css
,
'li.impersonation a'
).
click
expect
(
page
.
find
(
:css
,
'.header-user .profile-link'
)[
'data-user'
]).
to
eql
(
@user
.
username
)
...
...
@@ -197,7 +197,7 @@ describe "Admin::Users", feature: true do
click_link
"edit_user_
#{
@simple_user
.
id
}
"
end
it
"
should have
user edit page"
do
it
"
has
user edit page"
do
expect
(
page
).
to
have_content
(
'Name'
)
expect
(
page
).
to
have_content
(
'Password'
)
end
...
...
@@ -212,12 +212,12 @@ describe "Admin::Users", feature: true do
click_button
"Save changes"
end
it
"sho
uld show
page with new data"
do
it
"sho
ws
page with new data"
do
expect
(
page
).
to
have_content
(
'bigbang@mail.com'
)
expect
(
page
).
to
have_content
(
'Big Bang'
)
end
it
"
should change
user entry"
do
it
"
changes
user entry"
do
@simple_user
.
reload
expect
(
@simple_user
.
name
).
to
eq
(
'Big Bang'
)
expect
(
@simple_user
.
is_admin?
).
to
be_truthy
...
...
spec/features/atom/dashboard_spec.rb
View file @
519275c1
...
...
@@ -5,7 +5,7 @@ describe "Dashboard Feed", feature: true do
let!
(
:user
)
{
create
(
:user
,
name:
"Jonh"
)
}
context
"projects atom feed via private token"
do
it
"
should render
projects atom feed"
do
it
"
renders
projects atom feed"
do
visit
dashboard_projects_path
(
:atom
,
private_token:
user
.
private_token
)
expect
(
body
).
to
have_selector
(
'feed title'
)
end
...
...
@@ -23,11 +23,11 @@ describe "Dashboard Feed", feature: true do
visit
dashboard_projects_path
(
:atom
,
private_token:
user
.
private_token
)
end
it
"
should have
issue opened event"
do
it
"
has
issue opened event"
do
expect
(
body
).
to
have_content
(
"
#{
user
.
name
}
opened issue #
#{
issue
.
iid
}
"
)
end
it
"
should have
issue comment event"
do
it
"
has
issue comment event"
do
expect
(
body
).
to
have_content
(
"
#{
user
.
name
}
commented on issue #
#{
issue
.
iid
}
"
)
end
...
...
spec/features/atom/issues_spec.rb
View file @
519275c1
...
...
@@ -9,7 +9,7 @@ describe 'Issues Feed', feature: true do
before
{
project
.
team
<<
[
user
,
:developer
]
}
context
'when authenticated'
do
it
'
should render
atom feed'
do
it
'
renders
atom feed'
do
login_with
user
visit
namespace_project_issues_path
(
project
.
namespace
,
project
,
:atom
)
...
...
@@ -22,7 +22,7 @@ describe 'Issues Feed', feature: true do
end
context
'when authenticated via private token'
do
it
'
should render
atom feed'
do
it
'
renders
atom feed'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
,
:atom
,
private_token:
user
.
private_token
)
...
...
spec/features/atom/users_spec.rb
View file @
519275c1
...
...
@@ -5,7 +5,7 @@ describe "User Feed", feature: true do
let!
(
:user
)
{
create
(
:user
)
}
context
'user atom feed via private token'
do
it
"
should render
user atom feed"
do
it
"
renders
user atom feed"
do
visit
user_path
(
user
,
:atom
,
private_token:
user
.
private_token
)
expect
(
body
).
to
have_selector
(
'feed title'
)
end
...
...
@@ -43,24 +43,24 @@ describe "User Feed", feature: true do
visit
user_path
(
user
,
:atom
,
private_token:
user
.
private_token
)
end
it
'
should have
issue opened event'
do
it
'
has
issue opened event'
do
expect
(
body
).
to
have_content
(
"
#{
safe_name
}
opened issue #
#{
issue
.
iid
}
"
)
end
it
'
should have
issue comment event'
do
it
'
has
issue comment event'
do
expect
(
body
).
to
have_content
(
"
#{
safe_name
}
commented on issue #
#{
issue
.
iid
}
"
)
end
it
'
should have
XHTML summaries in issue descriptions'
do
it
'
has
XHTML summaries in issue descriptions'
do
expect
(
body
).
to
match
/we have a bug!<\/p>\n\n<hr ?\/>\n\n<p>I guess/
end
it
'
should have
XHTML summaries in notes'
do
it
'
has
XHTML summaries in notes'
do
expect
(
body
).
to
match
/Bug confirmed <img[^>]*\/>/
end
it
'
should have
XHTML summaries in merge request descriptions'
do
it
'
has
XHTML summaries in merge request descriptions'
do
expect
(
body
).
to
match
/Here is the fix: <\/p><div[^>]*><a[^>]*><img[^>]*\/><\/a><\/div>/
end
end
...
...
spec/features/ci_lint_spec.rb
View file @
519275c1
...
...
@@ -17,7 +17,7 @@ describe 'CI Lint' do
File
.
read
(
Rails
.
root
.
join
(
'spec/support/gitlab_stubs/gitlab_ci.yml'
))
end
it
'
Yaml parsing
'
do
it
'
parses Yaml
'
do
within
"table"
do
expect
(
page
).
to
have_content
(
'Job - rspec'
)
expect
(
page
).
to
have_content
(
'Job - spinach'
)
...
...
spec/features/commits_spec.rb
View file @
519275c1
...
...
@@ -52,7 +52,7 @@ describe 'Commits' do
visit
namespace_project_commits_path
(
project
.
namespace
,
project
,
:master
)
end
it
'sho
uld show
build status'
do
it
'sho
ws
build status'
do
page
.
within
(
"//li[@id='commit-
#{
pipeline
.
short_sha
}
']"
)
do
expect
(
page
).
to
have_css
(
".ci-status-link"
)
end
...
...
spec/features/compare_spec.rb
View file @
519275c1
...
...
@@ -11,11 +11,11 @@ describe "Compare", js: true do
end
describe
"branches"
do
it
"
should pre-populate
fields"
do
it
"
pre-populates
fields"
do
expect
(
page
.
find_field
(
"from"
).
value
).
to
eq
(
"master"
)
end
it
"
should compare
branches"
do
it
"
compares
branches"
do
fill_in
"from"
,
with:
"fea"
find
(
"#from"
).
click
...
...
@@ -28,7 +28,7 @@ describe "Compare", js: true do
end
describe
"tags"
do
it
"
should compare
tags"
do
it
"
compares
tags"
do
fill_in
"from"
,
with:
"v1.0"
find
(
"#from"
).
click
...
...
spec/features/dashboard/label_filter_spec.rb
View file @
519275c1
...
...
@@ -16,7 +16,7 @@ describe 'Dashboard > label filter', feature: true, js: true do
end
context
'duplicate labels'
do
it
'
should remove
duplicate labels'
do
it
'
removes
duplicate labels'
do
page
.
within
(
'.labels-filter'
)
do
click_button
'Label'
end
...
...
spec/features/dashboard_issues_spec.rb
View file @
519275c1
...
...
@@ -16,7 +16,7 @@ describe "Dashboard Issues filtering", feature: true, js: true do
visit_issues
end
it
'sho
uld show
all issues with no milestone'
do
it
'sho
ws
all issues with no milestone'
do
show_milestone_dropdown
click_link
'No Milestone'
...
...
@@ -24,7 +24,7 @@ describe "Dashboard Issues filtering", feature: true, js: true do
expect
(
page
).
to
have_selector
(
'.issue'
,
count:
1
)
end
it
'sho
uld show
all issues with any milestone'
do
it
'sho
ws
all issues with any milestone'
do
show_milestone_dropdown
click_link
'Any Milestone'
...
...
@@ -32,7 +32,7 @@ describe "Dashboard Issues filtering", feature: true, js: true do
expect
(
page
).
to
have_selector
(
'.issue'
,
count:
2
)
end
it
'sho
uld show
all issues with the selected milestone'
do
it
'sho
ws
all issues with the selected milestone'
do
show_milestone_dropdown
page
.
within
'.dropdown-content'
do
...
...
spec/features/gitlab_flavored_markdown_spec.rb
View file @
519275c1
...
...
@@ -23,25 +23,25 @@ describe "GitLab Flavored Markdown", feature: true do
end
describe
"for commits"
do
it
"
should render
title in commits#index"
do
it
"
renders
title in commits#index"
do
visit
namespace_project_commits_path
(
project
.
namespace
,
project
,
'master'
,
limit:
1
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
end
it
"
should render
title in commits#show"
do
it
"
renders
title in commits#show"
do
visit
namespace_project_commit_path
(
project
.
namespace
,
project
,
commit
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
end
it
"
should render
description in commits#show"
do
it
"
renders
description in commits#show"
do
visit
namespace_project_commit_path
(
project
.
namespace
,
project
,
commit
)
expect
(
page
).
to
have_link
(
fred
.
to_reference
)
end
it
"
should render
title in repositories#branches"
do
it
"
renders
title in repositories#branches"
do
visit
namespace_project_branches_path
(
project
.
namespace
,
project
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
...
...
@@ -62,19 +62,19 @@ describe "GitLab Flavored Markdown", feature: true do
description:
"ask
#{
fred
.
to_reference
}
for details"
)
end
it
"
should render
subject in issues#index"
do
it
"
renders
subject in issues#index"
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
expect
(
page
).
to
have_link
(
@other_issue
.
to_reference
)
end
it
"
should render
subject in issues#show"
do
it
"
renders
subject in issues#show"
do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
@issue
)
expect
(
page
).
to
have_link
(
@other_issue
.
to_reference
)
end
it
"
should render
details in issues#show"
do
it
"
renders
details in issues#show"
do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
@issue
)
expect
(
page
).
to
have_link
(
fred
.
to_reference
)
...
...
@@ -86,13 +86,13 @@ describe "GitLab Flavored Markdown", feature: true do
@merge_request
=
create
(
:merge_request
,
source_project:
project
,
target_project:
project
,
title:
"fix
#{
issue
.
to_reference
}
"
)
end
it
"
should render
title in merge_requests#index"
do
it
"
renders
title in merge_requests#index"
do
visit
namespace_project_merge_requests_path
(
project
.
namespace
,
project
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
end
it
"
should render
title in merge_requests#show"
do
it
"
renders
title in merge_requests#show"
do
visit
namespace_project_merge_request_path
(
project
.
namespace
,
project
,
@merge_request
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
...
...
@@ -107,19 +107,19 @@ describe "GitLab Flavored Markdown", feature: true do
description:
"ask
#{
fred
.
to_reference
}
for details"
)
end
it
"
should render
title in milestones#index"
do
it
"
renders
title in milestones#index"
do
visit
namespace_project_milestones_path
(
project
.
namespace
,
project
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
end
it
"
should render
title in milestones#show"
do
it
"
renders
title in milestones#show"
do
visit
namespace_project_milestone_path
(
project
.
namespace
,
project
,
@milestone
)
expect
(
page
).
to
have_link
(
issue
.
to_reference
)
end
it
"
should render
description in milestones#show"
do
it
"
renders
description in milestones#show"
do
visit
namespace_project_milestone_path
(
project
.
namespace
,
project
,
@milestone
)
expect
(
page
).
to
have_link
(
fred
.
to_reference
)
...
...
spec/features/help_pages_spec.rb
View file @
519275c1
...
...
@@ -5,7 +5,7 @@ describe 'Help Pages', feature: true do
before
do
login_as
:user
end
it
'replace the variable $your_email with the email of the user'
do
it
'replace
s
the variable $your_email with the email of the user'
do
visit
help_page_path
(
'ssh/README'
)
expect
(
page
).
to
have_content
(
"ssh-keygen -t rsa -C
\"
#{
@user
.
email
}
\"
"
)
end
...
...
spec/features/issues/award_emoji_spec.rb
View file @
519275c1
...
...
@@ -21,32 +21,32 @@ describe 'Awards Emoji', feature: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'
should increment
the thumbsdown emoji'
,
js:
true
do
it
'
increments
the thumbsdown emoji'
,
js:
true
do
find
(
'[data-emoji="thumbsdown"]'
).
click
sleep
2
expect
(
thumbsdown_emoji
).
to
have_text
(
"1"
)
end
context
'click the thumbsup emoji'
do
it
'
should increment
the thumbsup emoji'
,
js:
true
do
it
'
increments
the thumbsup emoji'
,
js:
true
do
find
(
'[data-emoji="thumbsup"]'
).
click
sleep
2
expect
(
thumbsup_emoji
).
to
have_text
(
"1"
)
end
it
'
should decrement
the thumbsdown emoji'
,
js:
true
do
it
'
decrements
the thumbsdown emoji'
,
js:
true
do
expect
(
thumbsdown_emoji
).
to
have_text
(
"0"
)
end
end
context
'click the thumbsdown emoji'
do
it
'
should increment
the thumbsdown emoji'
,
js:
true
do
it
'
increments
the thumbsdown emoji'
,
js:
true
do
find
(
'[data-emoji="thumbsdown"]'
).
click
sleep
2
expect
(
thumbsdown_emoji
).
to
have_text
(
"1"
)
end
it
'
should decrement
the thumbsup emoji'
,
js:
true
do
it
'
decrements
the thumbsup emoji'
,
js:
true
do
expect
(
thumbsup_emoji
).
to
have_text
(
"0"
)
end
end
...
...
spec/features/issues/award_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ feature 'Issue awards', js: true, feature: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'
should add
award to issue'
do
it
'
adds
award to issue'
do
first
(
'.js-emoji-btn'
).
click
expect
(
page
).
to
have_selector
(
'.js-emoji-btn.active'
)
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'1'
...
...
@@ -20,7 +20,7 @@ feature 'Issue awards', js: true, feature: true do
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'1'
end
it
'
should remove
award from issue'
do
it
'
removes
award from issue'
do
first
(
'.js-emoji-btn'
).
click
find
(
'.js-emoji-btn.active'
).
click
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'0'
...
...
@@ -29,7 +29,7 @@ feature 'Issue awards', js: true, feature: true do
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'0'
end
it
'
should only have
one menu on the page'
do
it
'
only has
one menu on the page'
do
first
(
'.js-add-award'
).
click
expect
(
page
).
to
have_selector
(
'.emoji-menu'
)
...
...
@@ -42,7 +42,7 @@ feature 'Issue awards', js: true, feature: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'
should
not see award menu button'
do
it
'
does
not see award menu button'
do
expect
(
page
).
not_to
have_selector
(
'.js-award-holder'
)
end
end
...
...
spec/features/issues/bulk_assignment_labels_spec.rb
View file @
519275c1
...
...
@@ -175,7 +175,7 @@ feature 'Issues > Labels bulk assignment', feature: true do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
end
it
'
labels are kept
'
do
it
'
keeps labels
'
do
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'bug'
expect
(
find
(
"#issue_
#{
issue2
.
id
}
"
)).
to
have_content
'feature'
...
...
@@ -197,7 +197,7 @@ feature 'Issues > Labels bulk assignment', feature: true do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
end
it
'
existing label is kept
and new label is present'
do
it
'
keeps existing label
and new label is present'
do
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'bug'
check
'check_all_issues'
...
...
@@ -222,7 +222,7 @@ feature 'Issues > Labels bulk assignment', feature: true do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
end
it
'
existing label is kept
and new label is present'
do
it
'
keeps existing label
and new label is present'
do
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'bug'
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'bug'
expect
(
find
(
"#issue_
#{
issue2
.
id
}
"
)).
to
have_content
'feature'
...
...
@@ -252,7 +252,7 @@ feature 'Issues > Labels bulk assignment', feature: true do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
end
it
'
labels are kept
'
do
it
'
keeps labels
'
do
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'bug'
expect
(
find
(
"#issue_
#{
issue1
.
id
}
"
)).
to
have_content
'First Release'
expect
(
find
(
"#issue_
#{
issue2
.
id
}
"
)).
to
have_content
'feature'
...
...
spec/features/issues/filter_by_labels_spec.rb
View file @
519275c1
...
...
@@ -37,25 +37,25 @@ feature 'Issue filtering by Labels', feature: true do
wait_for_ajax
end
it
'sho
uld show
issue "Bugfix1" and "Bugfix2" in issues list'
do
it
'sho
ws
issue "Bugfix1" and "Bugfix2" in issues list'
do
expect
(
page
).
to
have_content
"Bugfix1"
expect
(
page
).
to
have_content
"Bugfix2"
end
it
'
should
not show "Feature1" in issues list'
do
it
'
does
not show "Feature1" in issues list'
do
expect
(
page
).
not_to
have_content
"Feature1"
end
it
'sho
uld show
label "bug" in filtered-labels'
do
it
'sho
ws
label "bug" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"bug"
end
it
'
should
not show label "feature" and "enhancement" in filtered-labels'
do
it
'
does
not show label "feature" and "enhancement" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"feature"
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"enhancement"
end
it
'
should remove
label "bug"'
do
it
'
removes
label "bug"'
do
find
(
'.js-label-filter-remove'
).
click
wait_for_ajax
expect
(
find
(
'.filtered-labels'
,
visible:
false
)).
to
have_no_content
"bug"
...
...
@@ -71,20 +71,20 @@ feature 'Issue filtering by Labels', feature: true do
wait_for_ajax
end
it
'sho
uld show
issue "Feature1" in issues list'
do
it
'sho
ws
issue "Feature1" in issues list'
do
expect
(
page
).
to
have_content
"Feature1"
end
it
'
should
not show "Bugfix1" and "Bugfix2" in issues list'
do
it
'
does
not show "Bugfix1" and "Bugfix2" in issues list'
do
expect
(
page
).
not_to
have_content
"Bugfix2"
expect
(
page
).
not_to
have_content
"Bugfix1"
end
it
'sho
uld show
label "feature" in filtered-labels'
do
it
'sho
ws
label "feature" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"feature"
end
it
'
should
not show label "bug" and "enhancement" in filtered-labels'
do
it
'
does
not show label "bug" and "enhancement" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"bug"
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"enhancement"
end
...
...
@@ -99,20 +99,20 @@ feature 'Issue filtering by Labels', feature: true do
wait_for_ajax
end
it
'sho
uld show
issue "Bugfix2" in issues list'
do
it
'sho
ws
issue "Bugfix2" in issues list'
do
expect
(
page
).
to
have_content
"Bugfix2"
end
it
'
should
not show "Feature1" and "Bugfix1" in issues list'
do
it
'
does
not show "Feature1" and "Bugfix1" in issues list'
do
expect
(
page
).
not_to
have_content
"Feature1"
expect
(
page
).
not_to
have_content
"Bugfix1"
end
it
'sho
uld show
label "enhancement" in filtered-labels'
do
it
'sho
ws
label "enhancement" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"enhancement"
end
it
'
should
not show label "feature" and "bug" in filtered-labels'
do
it
'
does
not show label "feature" and "bug" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"bug"
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"feature"
end
...
...
@@ -128,21 +128,21 @@ feature 'Issue filtering by Labels', feature: true do
wait_for_ajax
end
it
'
should
not show "Bugfix1" or "Feature1" in issues list'
do
it
'
does
not show "Bugfix1" or "Feature1" in issues list'
do
expect
(
page
).
not_to
have_content
"Bugfix1"
expect
(
page
).
not_to
have_content
"Feature1"
end
it
'sho
uld show
label "enhancement" and "feature" in filtered-labels'
do
it
'sho
ws
label "enhancement" and "feature" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"enhancement"
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"feature"
end
it
'
should
not show label "bug" in filtered-labels'
do
it
'
does
not show label "bug" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"bug"
end
it
'
should remove
label "enhancement"'
do
it
'
removes
label "enhancement"'
do
find
(
'.js-label-filter-remove'
,
match: :first
).
click
wait_for_ajax
expect
(
find
(
'.filtered-labels'
)).
to
have_no_content
"enhancement"
...
...
@@ -159,20 +159,20 @@ feature 'Issue filtering by Labels', feature: true do
wait_for_ajax
end
it
'sho
uld show
issue "Bugfix2" in issues list'
do
it
'sho
ws
issue "Bugfix2" in issues list'
do
expect
(
page
).
to
have_content
"Bugfix2"
end
it
'
should
not show "Feature1"'
do
it
'
does
not show "Feature1"'
do
expect
(
page
).
not_to
have_content
"Feature1"
end
it
'sho
uld show
label "bug" and "enhancement" in filtered-labels'
do
it
'sho
ws
label "bug" and "enhancement" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"bug"
expect
(
find
(
'.filtered-labels'
)).
to
have_content
"enhancement"
end
it
'
should
not show label "feature" in filtered-labels'
do
it
'
does
not show label "feature" in filtered-labels'
do
expect
(
find
(
'.filtered-labels'
)).
not_to
have_content
"feature"
end
end
...
...
@@ -191,7 +191,7 @@ feature 'Issue filtering by Labels', feature: true do
end
end
it
'
should allow
user to remove filtered labels'
do
it
'
allows
user to remove filtered labels'
do
first
(
'.js-label-filter-remove'
).
click
wait_for_ajax
...
...
@@ -201,7 +201,7 @@ feature 'Issue filtering by Labels', feature: true do
end
context
'dropdown filtering'
,
js:
true
do
it
'
should filter
by label name'
do
it
'
filters
by label name'
do
page
.
within
'.labels-filter'
do
click_button
'Label'
wait_for_ajax
...
...
spec/features/issues/filter_by_milestone_spec.rb
View file @
519275c1
...
...
@@ -15,7 +15,7 @@ feature 'Issue filtering by Milestone', feature: true do
end
context
'filters by upcoming milestone'
,
js:
true
do
it
'
should
not show issues with no expiry'
do
it
'
does
not show issues with no expiry'
do
create
(
:issue
,
project:
project
)
create
(
:issue
,
project:
project
,
milestone:
milestone
)
...
...
@@ -25,7 +25,7 @@ feature 'Issue filtering by Milestone', feature: true do
expect
(
page
).
to
have_css
(
'.issue'
,
count:
0
)
end
it
'sho
uld show
issues in future'
do
it
'sho
ws
issues in future'
do
milestone
=
create
(
:milestone
,
project:
project
,
due_date:
Date
.
tomorrow
)
create
(
:issue
,
project:
project
)
create
(
:issue
,
project:
project
,
milestone:
milestone
)
...
...
@@ -36,7 +36,7 @@ feature 'Issue filtering by Milestone', feature: true do
expect
(
page
).
to
have_css
(
'.issue'
,
count:
1
)
end
it
'
should
not show issues in past'
do
it
'
does
not show issues in past'
do
milestone
=
create
(
:milestone
,
project:
project
,
due_date:
Date
.
yesterday
)
create
(
:issue
,
project:
project
)
create
(
:issue
,
project:
project
,
milestone:
milestone
)
...
...
spec/features/issues/filter_issues_spec.rb
View file @
519275c1
...
...
@@ -26,17 +26,17 @@ describe 'Filter issues', feature: true do
end
context
'assignee'
,
js:
true
do
it
'
should update
to current user'
do
it
'
updates
to current user'
do
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
end
it
'
should
not change when closed link is clicked'
do
it
'
does
not change when closed link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"Closed"
).
click
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
end
it
'
should
not change when all link is clicked'
do
it
'
does
not change when all link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"All"
).
click
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
...
...
@@ -56,17 +56,17 @@ describe 'Filter issues', feature: true do
end
context
'milestone'
,
js:
true
do
it
'
should update
to current milestone'
do
it
'
updates
to current milestone'
do
expect
(
find
(
'.js-milestone-select .dropdown-toggle-text'
)).
to
have_content
(
milestone
.
title
)
end
it
'
should
not change when closed link is clicked'
do
it
'
does
not change when closed link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"Closed"
).
click
expect
(
find
(
'.js-milestone-select .dropdown-toggle-text'
)).
to
have_content
(
milestone
.
title
)
end
it
'
should
not change when all link is clicked'
do
it
'
does
not change when all link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"All"
).
click
expect
(
find
(
'.js-milestone-select .dropdown-toggle-text'
)).
to
have_content
(
milestone
.
title
)
...
...
@@ -81,7 +81,7 @@ describe 'Filter issues', feature: true do
wait_for_ajax
end
it
'
should filter
by any label'
do
it
'
filters
by any label'
do
find
(
'.dropdown-menu-labels a'
,
text:
'Any Label'
).
click
page
.
first
(
'.labels-filter .dropdown-title .dropdown-menu-close-icon'
).
click
wait_for_ajax
...
...
@@ -89,7 +89,7 @@ describe 'Filter issues', feature: true do
expect
(
find
(
'.labels-filter'
)).
to
have_content
'Label'
end
it
'
should filter
by no label'
do
it
'
filters
by no label'
do
find
(
'.dropdown-menu-labels a'
,
text:
'No Label'
).
click
page
.
first
(
'.labels-filter .dropdown-title .dropdown-menu-close-icon'
).
click
wait_for_ajax
...
...
@@ -100,7 +100,7 @@ describe 'Filter issues', feature: true do
expect
(
find
(
'.js-label-select .dropdown-toggle-text'
)).
to
have_content
(
'No Label'
)
end
it
'
should filter
by no label'
do
it
'
filters
by no label'
do
find
(
'.dropdown-menu-labels a'
,
text:
label
.
title
).
click
page
.
within
'.labels-filter'
do
expect
(
page
).
to
have_content
label
.
title
...
...
@@ -128,19 +128,19 @@ describe 'Filter issues', feature: true do
end
context
'assignee and label'
,
js:
true
do
it
'
should update
to current assignee and label'
do
it
'
updates
to current assignee and label'
do
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
expect
(
find
(
'.js-label-select .dropdown-toggle-text'
)).
to
have_content
(
label
.
title
)
end
it
'
should
not change when closed link is clicked'
do
it
'
does
not change when closed link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"Closed"
).
click
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
expect
(
find
(
'.js-label-select .dropdown-toggle-text'
)).
to
have_content
(
label
.
title
)
end
it
'
should
not change when all link is clicked'
do
it
'
does
not change when all link is clicked'
do
find
(
'.issues-state-filters a'
,
text:
"All"
).
click
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
...
...
@@ -168,7 +168,7 @@ describe 'Filter issues', feature: true do
end
context
'only text'
,
js:
true
do
it
'
should filter
issues by searched text'
do
it
'
filters
issues by searched text'
do
fill_in
'issue_search'
,
with:
'Bug'
page
.
within
'.issues-list'
do
...
...
@@ -176,7 +176,7 @@ describe 'Filter issues', feature: true do
end
end
it
'
should
not show any issues'
do
it
'
does
not show any issues'
do
fill_in
'issue_search'
,
with:
'testing'
page
.
within
'.issues-list'
do
...
...
@@ -186,7 +186,7 @@ describe 'Filter issues', feature: true do
end
context
'text and dropdown options'
,
js:
true
do
it
'
should filter
by text and label'
do
it
'
filters
by text and label'
do
fill_in
'issue_search'
,
with:
'Bug'
page
.
within
'.issues-list'
do
...
...
@@ -204,7 +204,7 @@ describe 'Filter issues', feature: true do
end
end
it
'
should filter
by text and milestone'
do
it
'
filters
by text and milestone'
do
fill_in
'issue_search'
,
with:
'Bug'
page
.
within
'.issues-list'
do
...
...
@@ -221,7 +221,7 @@ describe 'Filter issues', feature: true do
end
end
it
'
should filter
by text and assignee'
do
it
'
filters
by text and assignee'
do
fill_in
'issue_search'
,
with:
'Bug'
page
.
within
'.issues-list'
do
...
...
@@ -238,7 +238,7 @@ describe 'Filter issues', feature: true do
end
end
it
'
should filter
by text and author'
do
it
'
filters
by text and author'
do
fill_in
'issue_search'
,
with:
'Bug'
page
.
within
'.issues-list'
do
...
...
@@ -269,7 +269,7 @@ describe 'Filter issues', feature: true do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
end
it
'
should be
able to filter and sort issues'
do
it
'
is
able to filter and sort issues'
do
click_button
'Label'
wait_for_ajax
page
.
within
'.labels-filter'
do
...
...
spec/features/issues/issue_sidebar_spec.rb
View file @
519275c1
...
...
@@ -17,7 +17,7 @@ feature 'Issue Sidebar', feature: true do
end
describe
'when clicking on edit labels'
,
js:
true
do
it
'
dropdown has a
n option to create a new label'
do
it
'
shows dropdow
n option to create a new label'
do
find
(
'.block.labels .edit-link'
).
click
page
.
within
(
'.block.labels'
)
do
...
...
@@ -27,7 +27,7 @@ feature 'Issue Sidebar', feature: true do
end
context
'creating a new label'
,
js:
true
do
it
'option to crate a new label is present'
do
it
'
shows
option to crate a new label is present'
do
page
.
within
(
'.block.labels'
)
do
find
(
'.edit-link'
).
click
...
...
@@ -35,7 +35,7 @@ feature 'Issue Sidebar', feature: true do
end
end
it
'dropdown switches to "create label" section'
do
it
'
shows
dropdown switches to "create label" section'
do
page
.
within
(
'.block.labels'
)
do
find
(
'.edit-link'
).
click
click_link
'Create new'
...
...
@@ -44,7 +44,7 @@ feature 'Issue Sidebar', feature: true do
end
end
it
'
new label is added
'
do
it
'
adds new label
'
do
page
.
within
(
'.block.labels'
)
do
find
(
'.edit-link'
).
click
sleep
1
...
...
spec/features/issues/new_branch_button_spec.rb
View file @
519275c1
...
...
@@ -41,7 +41,7 @@ feature 'Start new branch from an issue', feature: true do
end
context
"for visiters"
do
it
'
no button is shown
'
,
js:
true
do
it
'
shows no buttons
'
,
js:
true
do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
expect
(
page
).
not_to
have_css
(
'#new-branch'
)
...
...
spec/features/issues/todo_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ feature 'Manually create a todo item from issue', feature: true, js: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'
should create
todo when clicking button'
do
it
'
creates
todo when clicking button'
do
page
.
within
'.issuable-sidebar'
do
click_button
'Add Todo'
expect
(
page
).
to
have_content
'Mark Done'
...
...
@@ -28,7 +28,7 @@ feature 'Manually create a todo item from issue', feature: true, js: true do
end
end
it
'
should mark
a todo as done'
do
it
'
marks
a todo as done'
do
page
.
within
'.issuable-sidebar'
do
click_button
'Add Todo'
click_button
'Mark Done'
...
...
spec/features/issues/update_issues_spec.rb
View file @
519275c1
...
...
@@ -13,7 +13,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
end
context
'status'
,
js:
true
do
it
's
hould be set
to closed'
do
it
's
ets
to closed'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
find
(
'#check_all_issues'
).
click
...
...
@@ -24,7 +24,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
expect
(
page
).
to
have_selector
(
'.issue'
,
count:
0
)
end
it
's
hould be set
to open'
do
it
's
ets
to open'
do
create_closed
visit
namespace_project_issues_path
(
project
.
namespace
,
project
,
state:
'closed'
)
...
...
@@ -38,7 +38,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
end
context
'assignee'
,
js:
true
do
it
'
should update
to current user'
do
it
'
updates
to current user'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
find
(
'#check_all_issues'
).
click
...
...
@@ -52,7 +52,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
end
end
it
'
should update
to unassigned'
do
it
'
updates
to unassigned'
do
create_assigned
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
...
...
@@ -68,7 +68,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
context
'milestone'
,
js:
true
do
let
(
:milestone
)
{
create
(
:milestone
,
project:
project
)
}
it
'
should update
milestone'
do
it
'
updates
milestone'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
find
(
'#check_all_issues'
).
click
...
...
@@ -80,7 +80,7 @@ feature 'Multiple issue updating from issues#index', feature: true do
expect
(
find
(
'.issue'
)).
to
have_content
milestone
.
title
end
it
's
hould set
to no milestone'
do
it
's
ets
to no milestone'
do
create_with_milestone
visit
namespace_project_issues_path
(
project
.
namespace
,
project
)
...
...
spec/features/issues_spec.rb
View file @
519275c1
...
...
@@ -26,7 +26,7 @@ describe 'Issues', feature: true do
find
(
'.js-zen-enter'
).
click
end
it
'
should open
new issue popup'
do
it
'
opens
new issue popup'
do
expect
(
page
).
to
have_content
(
"Issue #
#{
issue
.
iid
}
"
)
end
...
...
@@ -71,7 +71,7 @@ describe 'Issues', feature: true do
visit
new_namespace_project_issue_path
(
project
.
namespace
,
project
)
end
it
's
hould save
with due date'
do
it
's
aves
with due date'
do
date
=
Date
.
today
.
at_beginning_of_month
fill_in
'issue_title'
,
with:
'bug 345'
...
...
@@ -99,7 +99,7 @@ describe 'Issues', feature: true do
visit
edit_namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
's
hould save
with due date'
do
it
's
aves
with due date'
do
date
=
Date
.
today
.
at_beginning_of_month
expect
(
find
(
'#issuable-due-date'
).
value
).
to
eq
date
.
to_s
...
...
@@ -155,7 +155,7 @@ describe 'Issues', feature: true do
let
(
:issue
)
{
@issue
}
it
'
should allow
filtering by issues with no specified assignee'
do
it
'
allows
filtering by issues with no specified assignee'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
,
assignee_id:
IssuableFinder
::
NONE
)
expect
(
page
).
to
have_content
'foobar'
...
...
@@ -163,7 +163,7 @@ describe 'Issues', feature: true do
expect
(
page
).
not_to
have_content
'gitlab'
end
it
'
should allow
filtering by a specified assignee'
do
it
'
allows
filtering by a specified assignee'
do
visit
namespace_project_issues_path
(
project
.
namespace
,
project
,
assignee_id:
@user
.
id
)
expect
(
page
).
not_to
have_content
'foobar'
...
...
@@ -514,7 +514,7 @@ describe 'Issues', feature: true do
visit
new_namespace_project_issue_path
(
project
.
namespace
,
project
)
end
it
'
should upload
file when dragging into textarea'
do
it
'
uploads
file when dragging into textarea'
do
drop_in_dropzone
test_image_file
# Wait for the file to upload
...
...
@@ -562,7 +562,7 @@ describe 'Issues', feature: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'
should add
due date to issue'
do
it
'
adds
due date to issue'
do
page
.
within
'.due_date'
do
click_link
'Edit'
...
...
@@ -574,7 +574,7 @@ describe 'Issues', feature: true do
end
end
it
'
should remove
due date from issue'
do
it
'
removes
due date from issue'
do
page
.
within
'.due_date'
do
click_link
'Edit'
...
...
spec/features/login_spec.rb
View file @
519275c1
...
...
@@ -131,7 +131,7 @@ feature 'Login', feature: true do
expect_any_instance_of
(
Object
).
to
receive
(
:omniauth_authorize_path
).
with
(
:user
,
"saml"
).
and_return
(
'/users/auth/saml'
)
end
it
'sho
uld show
2FA prompt after OAuth login'
do
it
'sho
ws
2FA prompt after OAuth login'
do
stub_omniauth_config
(
enabled:
true
,
auto_link_saml_user:
true
,
allow_single_sign_on:
[
'saml'
],
providers:
[
saml_config
])
user
=
create
(
:omniauth_user
,
:two_factor
,
extern_uid:
'my-uid'
,
provider:
'saml'
)
login_via
(
'saml'
,
user
,
'my-uid'
)
...
...
spec/features/merge_requests/award_spec.rb
View file @
519275c1
...
...
@@ -11,7 +11,7 @@ feature 'Merge request awards', js: true, feature: true do
visit
namespace_project_merge_request_path
(
project
.
namespace
,
project
,
merge_request
)
end
it
'
should add
award to merge request'
do
it
'
adds
award to merge request'
do
first
(
'.js-emoji-btn'
).
click
expect
(
page
).
to
have_selector
(
'.js-emoji-btn.active'
)
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'1'
...
...
@@ -20,7 +20,7 @@ feature 'Merge request awards', js: true, feature: true do
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'1'
end
it
'
should remove
award from merge request'
do
it
'
removes
award from merge request'
do
first
(
'.js-emoji-btn'
).
click
find
(
'.js-emoji-btn.active'
).
click
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'0'
...
...
@@ -29,7 +29,7 @@ feature 'Merge request awards', js: true, feature: true do
expect
(
first
(
'.js-emoji-btn'
)).
to
have_content
'0'
end
it
'
should only have
one menu on the page'
do
it
'
has only
one menu on the page'
do
first
(
'.js-add-award'
).
click
expect
(
page
).
to
have_selector
(
'.emoji-menu'
)
...
...
@@ -42,7 +42,7 @@ feature 'Merge request awards', js: true, feature: true do
visit
namespace_project_merge_request_path
(
project
.
namespace
,
project
,
merge_request
)
end
it
'
should
not see award menu button'
do
it
'
does
not see award menu button'
do
expect
(
page
).
not_to
have_selector
(
'.js-award-holder'
)
end
end
...
...
spec/features/merge_requests/edit_mr_spec.rb
View file @
519275c1
...
...
@@ -14,7 +14,7 @@ feature 'Edit Merge Request', feature: true do
end
context
'editing a MR'
do
it
'
form should have class js-quick-submit
'
do
it
'
has class js-quick-submit in form
'
do
expect
(
page
).
to
have_selector
(
'.js-quick-submit'
)
end
end
...
...
spec/features/merge_requests/filter_by_milestone_spec.rb
View file @
519275c1
...
...
@@ -21,7 +21,7 @@ feature 'Merge Request filtering by Milestone', feature: true do
end
context
'filters by upcoming milestone'
,
js:
true
do
it
'
should
not show issues with no expiry'
do
it
'
does
not show issues with no expiry'
do
create
(
:merge_request
,
:with_diffs
,
source_project:
project
)
create
(
:merge_request
,
:simple
,
source_project:
project
,
milestone:
milestone
)
...
...
@@ -31,7 +31,7 @@ feature 'Merge Request filtering by Milestone', feature: true do
expect
(
page
).
to
have_css
(
'.merge-request'
,
count:
0
)
end
it
'sho
uld show
issues in future'
do
it
'sho
ws
issues in future'
do
milestone
=
create
(
:milestone
,
project:
project
,
due_date:
Date
.
tomorrow
)
create
(
:merge_request
,
:with_diffs
,
source_project:
project
)
create
(
:merge_request
,
:simple
,
source_project:
project
,
milestone:
milestone
)
...
...
@@ -42,7 +42,7 @@ feature 'Merge Request filtering by Milestone', feature: true do
expect
(
page
).
to
have_css
(
'.merge-request'
,
count:
1
)
end
it
'
should
not show issues in past'
do
it
'
does
not show issues in past'
do
milestone
=
create
(
:milestone
,
project:
project
,
due_date:
Date
.
yesterday
)
create
(
:merge_request
,
:with_diffs
,
source_project:
project
)
create
(
:merge_request
,
:simple
,
source_project:
project
,
milestone:
milestone
)
...
...
spec/features/merge_requests/merge_when_build_succeeds_spec.rb
View file @
519275c1
...
...
@@ -73,7 +73,7 @@ feature 'Merge When Build Succeeds', feature: true, js: true do
end
context
'Build is not active'
do
it
"
should
not allow for enabling"
do
it
"
does
not allow for enabling"
do
visit_merge_request
(
merge_request
)
expect
(
page
).
not_to
have_link
"Merge When Build Succeeds"
end
...
...
spec/features/milestone_spec.rb
View file @
519275c1
...
...
@@ -13,7 +13,7 @@ feature 'Milestone', feature: true do
end
feature
'Create a milestone'
do
scenario
'sho
uld show
an informative message for a new issue'
do
scenario
'sho
ws
an informative message for a new issue'
do
visit
new_namespace_project_milestone_path
(
project
.
namespace
,
project
)
page
.
within
'.milestone-form'
do
fill_in
"milestone_title"
,
with:
'8.7'
...
...
@@ -25,7 +25,7 @@ feature 'Milestone', feature: true do
end
feature
'Open a milestone with closed issues'
do
scenario
'sho
uld show
an informative message'
do
scenario
'sho
ws
an informative message'
do
create
(
:issue
,
title:
"Bugfix1"
,
project:
project
,
milestone:
milestone
,
state:
"closed"
)
visit
namespace_project_milestone_path
(
project
.
namespace
,
project
,
milestone
)
...
...
spec/features/notes_on_merge_requests_spec.rb
View file @
519275c1
...
...
@@ -23,7 +23,7 @@ describe 'Comments', feature: true do
subject
{
page
}
describe
'the note form'
do
it
'
should be
valid'
do
it
'
is
valid'
do
is_expected
.
to
have_css
(
'.js-main-target-form'
,
visible:
true
,
count:
1
)
expect
(
find
(
'.js-main-target-form input[type=submit]'
).
value
).
to
eq
(
'Comment'
)
...
...
@@ -39,7 +39,7 @@ describe 'Comments', feature: true do
end
end
it
'
should have
enable submit button and preview button'
do
it
'
has
enable submit button and preview button'
do
page
.
within
(
'.js-main-target-form'
)
do
expect
(
page
).
not_to
have_css
(
'.js-comment-button[disabled]'
)
expect
(
page
).
to
have_css
(
'.js-md-preview-button'
,
visible:
true
)
...
...
@@ -57,7 +57,7 @@ describe 'Comments', feature: true do
end
end
it
'
should be
added and form reset'
do
it
'
is
added and form reset'
do
is_expected
.
to
have_content
(
'This is awsome!'
)
page
.
within
(
'.js-main-target-form'
)
do
expect
(
page
).
to
have_no_field
(
'note[note]'
,
with:
'This is awesome!'
)
...
...
@@ -70,7 +70,7 @@ describe 'Comments', feature: true do
end
describe
'when editing a note'
,
js:
true
do
it
'
should contain
the hidden edit form'
do
it
'
contains
the hidden edit form'
do
page
.
within
(
"#note_
#{
note
.
id
}
"
)
do
is_expected
.
to
have_css
(
'.note-edit-form'
,
visible:
false
)
end
...
...
@@ -82,7 +82,7 @@ describe 'Comments', feature: true do
find
(
".js-note-edit"
).
click
end
it
'sho
uld show
the note edit form and hide the note body'
do
it
'sho
ws
the note edit form and hide the note body'
do
page
.
within
(
"#note_
#{
note
.
id
}
"
)
do
expect
(
find
(
'.current-note-edit-form'
,
visible:
true
)).
to
be_visible
expect
(
find
(
'.note-edit-form'
,
visible:
true
)).
to
be_visible
...
...
@@ -234,7 +234,7 @@ describe 'Comments', feature: true do
end
end
it
'
should be added
as discussion'
do
it
'
adds
as discussion'
do
is_expected
.
to
have_content
(
'Another comment on line 10'
)
is_expected
.
to
have_css
(
'.notes_holder'
)
is_expected
.
to
have_css
(
'.notes_holder .note'
,
count:
1
)
...
...
spec/features/participants_autocomplete_spec.rb
View file @
519275c1
...
...
@@ -12,17 +12,17 @@ feature 'Member autocomplete', feature: true do
end
shared_examples
"open suggestions"
do
it
'
suggestions are displayed
'
do
it
'
displays suggestions
'
do
expect
(
page
).
to
have_selector
(
'.atwho-view'
,
visible:
true
)
end
it
'
author is suggested
'
do
it
'
suggests author
'
do
page
.
within
(
'.atwho-view'
,
visible:
true
)
do
expect
(
page
).
to
have_content
(
author
.
username
)
end
end
it
'
participant is suggested
'
do
it
'
suggests participant
'
do
page
.
within
(
'.atwho-view'
,
visible:
true
)
do
expect
(
page
).
to
have_content
(
participant
.
username
)
end
...
...
spec/features/pipelines_spec.rb
View file @
519275c1
...
...
@@ -82,11 +82,11 @@ describe "Pipelines" do
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
)
}
it
'
not be
cancelable'
do
it
'
is not
cancelable'
do
expect
(
page
).
not_to
have_link
(
'Cancel'
)
end
it
'
pipeline is
running'
do
it
'
has pipeline
running'
do
expect
(
page
).
to
have_selector
(
'.ci-running'
)
end
end
...
...
@@ -96,11 +96,11 @@ describe "Pipelines" do
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
)
}
it
'
not be
retryable'
do
it
'
is not
retryable'
do
expect
(
page
).
not_to
have_link
(
'Retry'
)
end
it
'
pipeline is failed
'
do
it
'
has failed pipeline
'
do
expect
(
page
).
to
have_selector
(
'.ci-failed'
)
end
end
...
...
@@ -147,7 +147,7 @@ describe "Pipelines" do
before
{
visit
namespace_project_pipeline_path
(
project
.
namespace
,
project
,
pipeline
)
}
it
'show
ing
a list of builds'
do
it
'show
s
a list of builds'
do
expect
(
page
).
to
have_content
(
'Test'
)
expect
(
page
).
to
have_content
(
@success
.
id
)
expect
(
page
).
to
have_content
(
'Deploy'
)
...
...
spec/features/profile_spec.rb
View file @
519275c1
...
...
@@ -15,7 +15,7 @@ describe 'Profile account page', feature: true do
it
{
expect
(
page
).
to
have_content
(
'Remove account'
)
}
it
'
should delete
the account'
do
it
'
deletes
the account'
do
expect
{
click_link
'Delete account'
}.
to
change
{
User
.
count
}.
by
(
-
1
)
expect
(
current_path
).
to
eq
(
new_user_session_path
)
end
...
...
@@ -27,7 +27,7 @@ describe 'Profile account page', feature: true do
visit
profile_account_path
end
it
'
should
not have option to remove account'
do
it
'
does
not have option to remove account'
do
expect
(
page
).
not_to
have_content
(
'Remove account'
)
expect
(
current_path
).
to
eq
(
profile_account_path
)
end
...
...
spec/features/projects/labels/update_prioritization_spec.rb
View file @
519275c1
...
...
@@ -87,7 +87,7 @@ feature 'Prioritize labels', feature: true do
end
context
'as a guest'
do
it
'
can
not prioritize labels'
do
it
'
does
not prioritize labels'
do
user
=
create
(
:user
)
guest
=
create
(
:user
)
project
=
create
(
:project
,
name:
'test'
,
namespace:
user
.
namespace
)
...
...
@@ -102,7 +102,7 @@ feature 'Prioritize labels', feature: true do
end
context
'as a non signed in user'
do
it
'
can
not prioritize labels'
do
it
'
does
not prioritize labels'
do
user
=
create
(
:user
)
project
=
create
(
:project
,
name:
'test'
,
namespace:
user
.
namespace
)
...
...
spec/features/projects_spec.rb
View file @
519275c1
...
...
@@ -44,7 +44,7 @@ feature 'Project', feature: true do
visit
edit_namespace_project_path
(
project
.
namespace
,
project
)
end
it
'
should remove
fork'
do
it
'
removes
fork'
do
expect
(
page
).
to
have_content
'Remove fork relationship'
remove_with_confirm
(
'Remove fork relationship'
,
project
.
path
)
...
...
@@ -65,7 +65,7 @@ feature 'Project', feature: true do
visit
edit_namespace_project_path
(
project
.
namespace
,
project
)
end
it
'
should remove
project'
do
it
'
removes
project'
do
expect
{
remove_with_confirm
(
'Remove project'
,
project
.
path
)
}.
to
change
{
Project
.
count
}.
by
(
-
1
)
end
end
...
...
@@ -82,7 +82,7 @@ feature 'Project', feature: true do
visit
namespace_project_path
(
project
.
namespace
,
project
)
end
it
'click
toggle and show
dropdown'
,
js:
true
do
it
'click
s toggle and shows
dropdown'
,
js:
true
do
find
(
'.js-projects-dropdown-toggle'
).
click
expect
(
page
).
to
have_css
(
'.dropdown-menu-projects .dropdown-content li'
,
count:
1
)
end
...
...
@@ -102,7 +102,7 @@ feature 'Project', feature: true do
visit
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
end
it
'click
toggle and show
dropdown'
do
it
'click
s toggle and shows
dropdown'
do
find
(
'.js-projects-dropdown-toggle'
).
click
expect
(
page
).
to
have_css
(
'.dropdown-menu-projects .dropdown-content li'
,
count:
2
)
...
...
spec/features/search_spec.rb
View file @
519275c1
...
...
@@ -12,7 +12,7 @@ describe "Search", feature: true do
visit
search_path
end
it
'
top right search form is not present
'
do
it
'
does not show top right search form
'
do
expect
(
page
).
not_to
have_selector
(
'.search'
)
end
...
...
@@ -76,16 +76,16 @@ describe "Search", feature: true do
visit
namespace_project_path
(
project
.
namespace
,
project
)
end
it
'
top right search form is present
'
do
it
'
shows top right search form
'
do
expect
(
page
).
to
have_selector
(
'#search'
)
end
it
'
top right search form contains location badge
'
do
it
'
contains location badge in top right search form
'
do
expect
(
page
).
to
have_selector
(
'.has-location-badge'
)
end
context
'clicking the search field'
,
js:
true
do
it
'sho
uld show
category search dropdown'
do
it
'sho
ws
category search dropdown'
do
page
.
find
(
'#search'
).
click
expect
(
page
).
to
have_selector
(
'.dropdown-header'
,
text:
/
#{
project
.
name
}
/i
)
...
...
@@ -97,7 +97,7 @@ describe "Search", feature: true do
page
.
find
(
'#search'
).
click
end
it
'
should take
user to her issues page when issues assigned is clicked'
do
it
'
takes
user to her issues page when issues assigned is clicked'
do
find
(
'.dropdown-menu'
).
click_link
'Issues assigned to me'
sleep
2
...
...
@@ -105,7 +105,7 @@ describe "Search", feature: true do
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
end
it
'
should take
user to her issues page when issues authored is clicked'
do
it
'
takes
user to her issues page when issues authored is clicked'
do
find
(
'.dropdown-menu'
).
click_link
"Issues I've created"
sleep
2
...
...
@@ -113,7 +113,7 @@ describe "Search", feature: true do
expect
(
find
(
'.js-author-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
end
it
'
should take
user to her MR page when MR assigned is clicked'
do
it
'
takes
user to her MR page when MR assigned is clicked'
do
find
(
'.dropdown-menu'
).
click_link
'Merge requests assigned to me'
sleep
2
...
...
@@ -121,7 +121,7 @@ describe "Search", feature: true do
expect
(
find
(
'.js-assignee-search .dropdown-toggle-text'
)).
to
have_content
(
user
.
name
)
end
it
'
should take
user to her MR page when MR authored is clicked'
do
it
'
takes
user to her MR page when MR authored is clicked'
do
find
(
'.dropdown-menu'
).
click_link
"Merge requests I've created"
sleep
2
...
...
@@ -137,7 +137,7 @@ describe "Search", feature: true do
end
end
it
'
should
not display the category search dropdown'
do
it
'
does
not display the category search dropdown'
do
expect
(
page
).
not_to
have_selector
(
'.dropdown-header'
,
text:
/
#{
project
.
name
}
/i
)
end
end
...
...
spec/features/todos/todos_spec.rb
View file @
519275c1
...
...
@@ -24,7 +24,7 @@ describe 'Dashboard Todos', feature: true do
visit
dashboard_todos_path
end
it
'
todo is
present'
do
it
'
has todo
present'
do
expect
(
page
).
to
have_selector
(
'.todos-list .todo'
,
count:
1
)
end
...
...
spec/features/variables_spec.rb
View file @
519275c1
...
...
@@ -13,13 +13,13 @@ describe 'Project variables', js: true do
visit
namespace_project_variables_path
(
project
.
namespace
,
project
)
end
it
'sho
uld show
list of variables'
do
it
'sho
ws
list of variables'
do
page
.
within
(
'.variables-table'
)
do
expect
(
page
).
to
have_content
(
variable
.
key
)
end
end
it
'
should add
new variable'
do
it
'
adds
new variable'
do
fill_in
(
'variable_key'
,
with:
'key'
)
fill_in
(
'variable_value'
,
with:
'key value'
)
click_button
(
'Add new variable'
)
...
...
@@ -29,7 +29,7 @@ describe 'Project variables', js: true do
end
end
it
'
should delete
variable'
do
it
'
deletes
variable'
do
page
.
within
(
'.variables-table'
)
do
find
(
'.btn-variable-delete'
).
click
end
...
...
@@ -37,7 +37,7 @@ describe 'Project variables', js: true do
expect
(
page
).
not_to
have_selector
(
'variables-table'
)
end
it
'
should edit
variable'
do
it
'
edits
variable'
do
page
.
within
(
'.variables-table'
)
do
find
(
'.btn-variable-edit'
).
click
end
...
...
spec/finders/merge_requests_finder_spec.rb
View file @
519275c1
...
...
@@ -18,13 +18,13 @@ describe MergeRequestsFinder do
end
describe
"#execute"
do
it
'
should filter
by scope'
do
it
'
filters
by scope'
do
params
=
{
scope:
'authored'
,
state:
'opened'
}
merge_requests
=
MergeRequestsFinder
.
new
(
user
,
params
).
execute
expect
(
merge_requests
.
size
).
to
eq
(
2
)
end
it
'
should filter
by project'
do
it
'
filters
by project'
do
params
=
{
project_id:
project1
.
id
,
scope:
'authored'
,
state:
'opened'
}
merge_requests
=
MergeRequestsFinder
.
new
(
user
,
params
).
execute
expect
(
merge_requests
.
size
).
to
eq
(
1
)
...
...
spec/finders/notes_finder_spec.rb
View file @
519275c1
...
...
@@ -19,12 +19,12 @@ describe NotesFinder do
note2
end
it
'
should find
all notes'
do
it
'
finds
all notes'
do
notes
=
NotesFinder
.
new
.
execute
(
project
,
user
,
params
)
expect
(
notes
.
size
).
to
eq
(
2
)
end
it
'
should raise
an exception for an invalid target_type'
do
it
'
raises
an exception for an invalid target_type'
do
params
.
merge!
(
target_type:
'invalid'
)
expect
{
NotesFinder
.
new
.
execute
(
project
,
user
,
params
)
}.
to
raise_error
(
'invalid target_type'
)
end
...
...
spec/helpers/application_helper_spec.rb
View file @
519275c1
...
...
@@ -54,7 +54,7 @@ describe ApplicationHelper do
describe
'project_icon'
do
let
(
:avatar_file_path
)
{
File
.
join
(
Rails
.
root
,
'spec'
,
'fixtures'
,
'banana_sample.gif'
)
}
it
'
should return
an url for the avatar'
do
it
'
returns
an url for the avatar'
do
project
=
create
(
:project
,
avatar:
File
.
open
(
avatar_file_path
))
avatar_url
=
"http://localhost/uploads/project/avatar/
#{
project
.
id
}
/banana_sample.gif"
...
...
@@ -62,7 +62,7 @@ describe ApplicationHelper do
to
eq
"<img src=
\"
#{
avatar_url
}
\"
alt=
\"
Banana sample
\"
/>"
end
it
'
should give
uploaded icon when present'
do
it
'
gives
uploaded icon when present'
do
project
=
create
(
:project
)
allow_any_instance_of
(
Project
).
to
receive
(
:avatar_in_git
).
and_return
(
true
)
...
...
@@ -76,14 +76,14 @@ describe ApplicationHelper do
describe
'avatar_icon'
do
let
(
:avatar_file_path
)
{
File
.
join
(
Rails
.
root
,
'spec'
,
'fixtures'
,
'banana_sample.gif'
)
}
it
'
should return
an url for the avatar'
do
it
'
returns
an url for the avatar'
do
user
=
create
(
:user
,
avatar:
File
.
open
(
avatar_file_path
))
expect
(
helper
.
avatar_icon
(
user
.
email
).
to_s
).
to
match
(
"/uploads/user/avatar/
#{
user
.
id
}
/banana_sample.gif"
)
end
it
'
should return
an url for the avatar with relative url'
do
it
'
returns
an url for the avatar with relative url'
do
stub_config_setting
(
relative_url_root:
'/gitlab'
)
# Must be stubbed after the stub above, and separately
stub_config_setting
(
url:
Settings
.
send
(
:build_gitlab_url
))
...
...
@@ -94,14 +94,14 @@ describe ApplicationHelper do
to
match
(
"/gitlab/uploads/user/avatar/
#{
user
.
id
}
/banana_sample.gif"
)
end
it
'
should call
gravatar_icon when no User exists with the given email'
do
it
'
calls
gravatar_icon when no User exists with the given email'
do
expect
(
helper
).
to
receive
(
:gravatar_icon
).
with
(
'foo@example.com'
,
20
,
2
)
helper
.
avatar_icon
(
'foo@example.com'
,
20
,
2
)
end
describe
'using a User'
do
it
'
should return
an URL for the avatar'
do
it
'
returns
an URL for the avatar'
do
user
=
create
(
:user
,
avatar:
File
.
open
(
avatar_file_path
))
expect
(
helper
.
avatar_icon
(
user
).
to_s
).
...
...
@@ -146,7 +146,7 @@ describe ApplicationHelper do
to
match
(
'https://secure.gravatar.com'
)
end
it
'
should return
custom gravatar path when gravatar_url is set'
do
it
'
returns
custom gravatar path when gravatar_url is set'
do
stub_gravatar_setting
(
plain_url:
'http://example.local/?s=%{size}&hash=%{hash}'
)
expect
(
gravatar_icon
(
user_email
,
20
)).
...
...
@@ -266,19 +266,19 @@ describe ApplicationHelper do
allow
(
helper
).
to
receive
(
:current_user
).
and_return
(
user
)
end
it
'
should preserve
encoding'
do
it
'
preserves
encoding'
do
expect
(
content
.
encoding
.
name
).
to
eq
(
'UTF-8'
)
expect
(
helper
.
render_markup
(
'foo.rst'
,
content
).
encoding
.
name
).
to
eq
(
'UTF-8'
)
end
it
"
should delegate
to #markdown when file name corresponds to Markdown"
do
it
"
delegates
to #markdown when file name corresponds to Markdown"
do
expect
(
helper
).
to
receive
(
:gitlab_markdown?
).
with
(
'foo.md'
).
and_return
(
true
)
expect
(
helper
).
to
receive
(
:markdown
).
and_return
(
'NOEL'
)
expect
(
helper
.
render_markup
(
'foo.md'
,
content
)).
to
eq
(
'NOEL'
)
end
it
"
should delegate
to #asciidoc when file name corresponds to AsciiDoc"
do
it
"
delegates
to #asciidoc when file name corresponds to AsciiDoc"
do
expect
(
helper
).
to
receive
(
:asciidoc?
).
with
(
'foo.adoc'
).
and_return
(
true
)
expect
(
helper
).
to
receive
(
:asciidoc
).
and_return
(
'NOEL'
)
...
...
spec/helpers/blob_helper_spec.rb
View file @
519275c1
...
...
@@ -17,19 +17,19 @@ describe BlobHelper do
end
describe
'#highlight'
do
it
'
should return
plaintext for unknown lexer context'
do
it
'
returns
plaintext for unknown lexer context'
do
result
=
helper
.
highlight
(
blob_name
,
no_context_content
)
expect
(
result
).
to
eq
(
%[<pre class="code highlight"><code><span id="LC1" class="line">:type "assem"))</span></code></pre>]
)
end
it
'
should highlight
single block'
do
it
'
highlights
single block'
do
expected
=
%Q[<pre class="code highlight"><code><span id="LC1" class="line"><span class="p">(</span><span class="nb">make-pathname</span> <span class="ss">:defaults</span> <span class="nv">name</span></span>
<span id="LC2" class="line"><span class="ss">:type</span> <span class="s">"assem"</span><span class="p">))</span></span></code></pre>]
expect
(
helper
.
highlight
(
blob_name
,
blob_content
)).
to
eq
(
expected
)
end
it
'
should highlight
multi-line comments'
do
it
'
highlights
multi-line comments'
do
result
=
helper
.
highlight
(
blob_name
,
multiline_content
)
html
=
Nokogiri
::
HTML
(
result
)
lines
=
html
.
search
(
'.s'
)
...
...
@@ -49,7 +49,7 @@ describe BlobHelper do
<span id="LC4" class="line"> ddd</span></code></pre>)
end
it
'
should highlight
each line properly'
do
it
'
highlights
each line properly'
do
result
=
helper
.
highlight
(
blob_name
,
blob_content
)
expect
(
result
).
to
eq
(
expected
)
end
...
...
@@ -62,7 +62,7 @@ describe BlobHelper do
let
(
:expected_svg_path
)
{
File
.
join
(
Rails
.
root
,
'spec'
,
'fixtures'
,
'sanitized.svg'
)
}
let
(
:expected
)
{
open
(
expected_svg_path
).
read
}
it
'
should retain
essential elements'
do
it
'
retains
essential elements'
do
blob
=
OpenStruct
.
new
(
data:
data
)
expect
(
sanitize_svg
(
blob
).
data
).
to
eq
(
expected
)
end
...
...
spec/helpers/diff_helper_spec.rb
View file @
519275c1
...
...
@@ -32,16 +32,16 @@ describe DiffHelper do
end
describe
'diff_options'
do
it
'
should return
no collapse false'
do
it
'
returns
no collapse false'
do
expect
(
diff_options
).
to
include
(
no_collapse:
false
)
end
it
'
should return
no collapse true if expand_all_diffs'
do
it
'
returns
no collapse true if expand_all_diffs'
do
allow
(
controller
).
to
receive
(
:params
)
{
{
expand_all_diffs:
true
}
}
expect
(
diff_options
).
to
include
(
no_collapse:
true
)
end
it
'
should return
no collapse true if action name diff_for_path'
do
it
'
returns
no collapse true if action name diff_for_path'
do
allow
(
controller
).
to
receive
(
:action_name
)
{
'diff_for_path'
}
expect
(
diff_options
).
to
include
(
no_collapse:
true
)
end
...
...
@@ -60,11 +60,11 @@ describe DiffHelper do
end
describe
'#diff_line_content'
do
it
'
should return
non breaking space when line is empty'
do
it
'
returns
non breaking space when line is empty'
do
expect
(
diff_line_content
(
nil
)).
to
eq
(
' '
)
end
it
'
should return
the line itself'
do
it
'
returns
the line itself'
do
expect
(
diff_line_content
(
diff_file
.
diff_lines
.
first
.
text
)).
to
eq
(
'@@ -6,12 +6,18 @@ module Popen'
)
expect
(
diff_line_content
(
diff_file
.
diff_lines
.
first
.
type
)).
to
eq
(
'match'
)
...
...
spec/helpers/emails_helper_spec.rb
View file @
519275c1
...
...
@@ -8,37 +8,37 @@ describe EmailsHelper do
end
context
'when time limit is less than 2 hours'
do
it
'
should display
the time in hours using a singular unit'
do
it
'
displays
the time in hours using a singular unit'
do
validate_time_string
(
1
.
hour
,
'1 hour'
)
end
end
context
'when time limit is 2 or more hours'
do
it
'
should display
the time in hours using a plural unit'
do
it
'
displays
the time in hours using a plural unit'
do
validate_time_string
(
2
.
hours
,
'2 hours'
)
end
end
context
'when time limit contains fractions of an hour'
do
it
'
should round
down to the nearest hour'
do
it
'
rounds
down to the nearest hour'
do
validate_time_string
(
96
.
minutes
,
'1 hour'
)
end
end
context
'when time limit is 24 or more hours'
do
it
'
should display
the time in days using a singular unit'
do
it
'
displays
the time in days using a singular unit'
do
validate_time_string
(
24
.
hours
,
'1 day'
)
end
end
context
'when time limit is 2 or more days'
do
it
'
should display
the time in days using a plural unit'
do
it
'
displays
the time in days using a plural unit'
do
validate_time_string
(
2
.
days
,
'2 days'
)
end
end
context
'when time limit contains fractions of a day'
do
it
'
should round
down to the nearest day'
do
it
'
rounds
down to the nearest day'
do
validate_time_string
(
57
.
hours
,
'2 days'
)
end
end
...
...
spec/helpers/events_helper_spec.rb
View file @
519275c1
...
...
@@ -6,34 +6,34 @@ describe EventsHelper do
allow
(
helper
).
to
receive
(
:current_user
).
and_return
(
double
)
end
it
'
should display
one line of plain text without alteration'
do
it
'
displays
one line of plain text without alteration'
do
input
=
'A short, plain note'
expect
(
helper
.
event_note
(
input
)).
to
match
(
input
)
expect
(
helper
.
event_note
(
input
)).
not_to
match
(
/\.\.\.\z/
)
end
it
'
should display
inline code'
do
it
'
displays
inline code'
do
input
=
'A note with `inline code`'
expected
=
'A note with <code>inline code</code>'
expect
(
helper
.
event_note
(
input
)).
to
match
(
expected
)
end
it
'
should truncate
a note with multiple paragraphs'
do
it
'
truncates
a note with multiple paragraphs'
do
input
=
"Paragraph 1
\n\n
Paragraph 2"
expected
=
'Paragraph 1...'
expect
(
helper
.
event_note
(
input
)).
to
match
(
expected
)
end
it
'
should display
the first line of a code block'
do
it
'
displays
the first line of a code block'
do
input
=
"```
\n
Code block
\n
with two lines
\n
```"
expected
=
%r{<pre.+><code>Code block
\.\.\.
</code></pre>}
expect
(
helper
.
event_note
(
input
)).
to
match
(
expected
)
end
it
'
should truncate
a single long line of text'
do
it
'
truncates
a single long line of text'
do
text
=
'The quick brown fox jumped over the lazy dog twice'
# 50 chars
input
=
text
*
4
expected
=
(
text
*
2
).
sub
(
/.{3}/
,
'...'
)
...
...
@@ -41,7 +41,7 @@ describe EventsHelper do
expect
(
helper
.
event_note
(
input
)).
to
match
(
expected
)
end
it
'
should preserve
a link href when link text is truncated'
do
it
'
preserves
a link href when link text is truncated'
do
text
=
'The quick brown fox jumped over the lazy dog'
# 44 chars
input
=
"
#{
text
}#{
text
}#{
text
}
"
# 133 chars
link_url
=
'http://example.com/foo/bar/baz'
# 30 chars
...
...
@@ -52,7 +52,7 @@ describe EventsHelper do
expect
(
helper
.
event_note
(
input
)).
to
match
(
expected_link_text
)
end
it
'
should preserve
code color scheme'
do
it
'
preserves
code color scheme'
do
input
=
"```ruby
\n
def test
\n
'hello world'
\n
end
\n
```"
expected
=
'<pre class="code highlight js-syntax-highlight ruby">'
\
"<code><span class=
\"
k
\"
>def</span> <span class=
\"
nf
\"
>test</span>
\n
"
\
...
...
spec/helpers/gitlab_markdown_helper_spec.rb
View file @
519275c1
...
...
@@ -26,17 +26,17 @@ describe GitlabMarkdownHelper do
describe
"referencing multiple objects"
do
let
(
:actual
)
{
"
#{
merge_request
.
to_reference
}
->
#{
commit
.
to_reference
}
->
#{
issue
.
to_reference
}
"
}
it
"
should link
to the merge request"
do
it
"
links
to the merge request"
do
expected
=
namespace_project_merge_request_path
(
project
.
namespace
,
project
,
merge_request
)
expect
(
helper
.
markdown
(
actual
)).
to
match
(
expected
)
end
it
"
should link
to the commit"
do
it
"
links
to the commit"
do
expected
=
namespace_project_commit_path
(
project
.
namespace
,
project
,
commit
)
expect
(
helper
.
markdown
(
actual
)).
to
match
(
expected
)
end
it
"
should link
to the issue"
do
it
"
links
to the issue"
do
expected
=
namespace_project_issue_path
(
project
.
namespace
,
project
,
issue
)
expect
(
helper
.
markdown
(
actual
)).
to
match
(
expected
)
end
...
...
@@ -47,7 +47,7 @@ describe GitlabMarkdownHelper do
let
(
:second_project
)
{
create
(
:project
,
:public
)
}
let
(
:second_issue
)
{
create
(
:issue
,
project:
second_project
)
}
it
'
should link
to the issue'
do
it
'
links
to the issue'
do
expected
=
namespace_project_issue_path
(
second_project
.
namespace
,
second_project
,
second_issue
)
expect
(
markdown
(
actual
,
project:
second_project
)).
to
match
(
expected
)
end
...
...
@@ -58,7 +58,7 @@ describe GitlabMarkdownHelper do
let
(
:commit_path
)
{
namespace_project_commit_path
(
project
.
namespace
,
project
,
commit
)
}
let
(
:issues
)
{
create_list
(
:issue
,
2
,
project:
project
)
}
it
'
should handle
references nested in links with all the text'
do
it
'
handles
references nested in links with all the text'
do
actual
=
helper
.
link_to_gfm
(
"This should finally fix
#{
issues
[
0
].
to_reference
}
and
#{
issues
[
1
].
to_reference
}
for real"
,
commit_path
)
doc
=
Nokogiri
::
HTML
.
parse
(
actual
)
...
...
@@ -88,7 +88,7 @@ describe GitlabMarkdownHelper do
expect
(
doc
.
css
(
'a'
)[
4
].
text
).
to
eq
' for real'
end
it
'
should forward
HTML options'
do
it
'
forwards
HTML options'
do
actual
=
helper
.
link_to_gfm
(
"Fixed in
#{
commit
.
id
}
"
,
commit_path
,
class:
'foo'
)
doc
=
Nokogiri
::
HTML
.
parse
(
actual
)
...
...
@@ -110,7 +110,7 @@ describe GitlabMarkdownHelper do
expect
(
act
).
to
eq
%Q(<a href="/foo">
#{
issues
[
0
].
to_reference
}
</a>)
end
it
'
should replace
commit message with emoji to link'
do
it
'
replaces
commit message with emoji to link'
do
actual
=
link_to_gfm
(
':book:Book'
,
'/foo'
)
expect
(
actual
).
to
eq
%Q(<img class="emoji" title=":book:" alt=":book:" src="http://localhost/assets/1F4D6.png" height="20" width="20" align="absmiddle"><a href="/foo">Book</a>)
...
...
@@ -125,7 +125,7 @@ describe GitlabMarkdownHelper do
helper
.
instance_variable_set
(
:@project_wiki
,
@wiki
)
end
it
"
should use
Wiki pipeline for markdown files"
do
it
"
uses
Wiki pipeline for markdown files"
do
allow
(
@wiki
).
to
receive
(
:format
).
and_return
(
:markdown
)
expect
(
helper
).
to
receive
(
:markdown
).
with
(
'wiki content'
,
pipeline: :wiki
,
project_wiki:
@wiki
,
page_slug:
"nested/page"
)
...
...
@@ -133,7 +133,7 @@ describe GitlabMarkdownHelper do
helper
.
render_wiki_content
(
@wiki
)
end
it
"
should use
Asciidoctor for asciidoc files"
do
it
"
uses
Asciidoctor for asciidoc files"
do
allow
(
@wiki
).
to
receive
(
:format
).
and_return
(
:asciidoc
)
expect
(
helper
).
to
receive
(
:asciidoc
).
with
(
'wiki content'
)
...
...
@@ -141,7 +141,7 @@ describe GitlabMarkdownHelper do
helper
.
render_wiki_content
(
@wiki
)
end
it
"
should use
the Gollum renderer for all other file types"
do
it
"
uses
the Gollum renderer for all other file types"
do
allow
(
@wiki
).
to
receive
(
:format
).
and_return
(
:rdoc
)
formatted_content_stub
=
double
(
'formatted_content'
)
expect
(
formatted_content_stub
).
to
receive
(
:html_safe
)
...
...
spec/helpers/graph_helper_spec.rb
View file @
519275c1
...
...
@@ -6,7 +6,7 @@ describe GraphHelper do
let
(
:commit
)
{
project
.
commit
(
"master"
)
}
let
(
:graph
)
{
Network
::
Graph
.
new
(
project
,
'master'
,
commit
,
''
)
}
it
'filter our refs used by GitLab'
do
it
'filter
s
our refs used by GitLab'
do
allow
(
commit
).
to
receive
(
:ref_names
).
and_return
([
'refs/merge-requests/abc'
,
'master'
,
'refs/tmp/xyz'
])
self
.
instance_variable_set
(
:@graph
,
graph
)
refs
=
get_refs
(
project
.
repository
,
commit
)
...
...
spec/helpers/groups_helper_spec.rb
View file @
519275c1
...
...
@@ -4,7 +4,7 @@ describe GroupsHelper do
describe
'group_icon'
do
avatar_file_path
=
File
.
join
(
Rails
.
root
,
'spec'
,
'fixtures'
,
'banana_sample.gif'
)
it
'
should return
an url for the avatar'
do
it
'
returns
an url for the avatar'
do
group
=
create
(
:group
)
group
.
avatar
=
File
.
open
(
avatar_file_path
)
group
.
save!
...
...
@@ -12,7 +12,7 @@ describe GroupsHelper do
to
match
(
"/uploads/group/avatar/
#{
group
.
id
}
/banana_sample.gif"
)
end
it
'
should give
default avatar_icon when no avatar is present'
do
it
'
gives
default avatar_icon when no avatar is present'
do
group
=
create
(
:group
)
group
.
save!
expect
(
group_icon
(
group
.
path
)).
to
match
(
'group_avatar.png'
)
...
...
spec/helpers/issues_helper_spec.rb
View file @
519275c1
...
...
@@ -10,18 +10,19 @@ describe IssuesHelper do
let
(
:ext_expected
)
{
issues_url
.
gsub
(
':id'
,
issue
.
iid
.
to_s
).
gsub
(
':project_id'
,
ext_project
.
id
.
to_s
)
}
let
(
:int_expected
)
{
polymorphic_path
([
@project
.
namespace
,
project
,
issue
])
}
it
"
should return
internal path if used internal tracker"
do
it
"
returns
internal path if used internal tracker"
do
@project
=
project
expect
(
url_for_issue
(
issue
.
iid
)).
to
match
(
int_expected
)
end
it
"
should return
path to external tracker"
do
it
"
returns
path to external tracker"
do
@project
=
ext_project
expect
(
url_for_issue
(
issue
.
iid
)).
to
match
(
ext_expected
)
end
it
"
should return
empty string if project nil"
do
it
"
returns
empty string if project nil"
do
@project
=
nil
expect
(
url_for_issue
(
issue
.
iid
)).
to
eq
""
...
...
@@ -45,7 +46,7 @@ describe IssuesHelper do
allow
(
Gitlab
.
config
).
to
receive
(
:issues_tracker
).
and_return
(
nil
)
end
it
"
should return
external path"
do
it
"
returns
external path"
do
expect
(
url_for_issue
(
issue
.
iid
)).
to
match
(
ext_expected
)
end
end
...
...
spec/helpers/notes_helper_spec.rb
View file @
519275c1
...
...
@@ -21,7 +21,7 @@ describe NotesHelper do
end
describe
"#notes_max_access_for_users"
do
it
'return human access levels'
do
it
'return
s
human access levels'
do
expect
(
helper
.
note_max_access_for_user
(
owner_note
)).
to
eq
(
'Owner'
)
expect
(
helper
.
note_max_access_for_user
(
master_note
)).
to
eq
(
'Master'
)
expect
(
helper
.
note_max_access_for_user
(
reporter_note
)).
to
eq
(
'Reporter'
)
...
...
spec/helpers/search_helper_spec.rb
View file @
519275c1
...
...
@@ -42,7 +42,7 @@ describe SearchHelper do
expect
(
search_autocomplete_opts
(
project
.
name
).
size
).
to
eq
(
1
)
end
it
"
should
not include the public group"
do
it
"
does
not include the public group"
do
group
=
create
(
:group
)
expect
(
search_autocomplete_opts
(
group
.
name
).
size
).
to
eq
(
0
)
end
...
...
spec/helpers/submodule_helper_spec.rb
View file @
519275c1
...
...
@@ -17,35 +17,35 @@ describe SubmoduleHelper do
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:protocol
).
and_return
(
'http'
)
# set this just to be sure
end
it
'
should detect
ssh on standard port'
do
it
'
detects
ssh on standard port'
do
allow
(
Gitlab
.
config
.
gitlab_shell
).
to
receive
(
:ssh_port
).
and_return
(
22
)
# set this just to be sure
allow
(
Gitlab
.
config
.
gitlab_shell
).
to
receive
(
:ssh_path_prefix
).
and_return
(
Settings
.
send
(
:build_gitlab_shell_ssh_path_prefix
))
stub_url
([
config
.
user
,
'@'
,
config
.
host
,
':gitlab-org/gitlab-ce.git'
].
join
(
''
))
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
namespace_project_path
(
'gitlab-org'
,
'gitlab-ce'
),
namespace_project_tree_path
(
'gitlab-org'
,
'gitlab-ce'
,
'hash'
)
])
end
it
'
should detect
ssh on non-standard port'
do
it
'
detects
ssh on non-standard port'
do
allow
(
Gitlab
.
config
.
gitlab_shell
).
to
receive
(
:ssh_port
).
and_return
(
2222
)
allow
(
Gitlab
.
config
.
gitlab_shell
).
to
receive
(
:ssh_path_prefix
).
and_return
(
Settings
.
send
(
:build_gitlab_shell_ssh_path_prefix
))
stub_url
([
'ssh://'
,
config
.
user
,
'@'
,
config
.
host
,
':2222/gitlab-org/gitlab-ce.git'
].
join
(
''
))
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
namespace_project_path
(
'gitlab-org'
,
'gitlab-ce'
),
namespace_project_tree_path
(
'gitlab-org'
,
'gitlab-ce'
,
'hash'
)
])
end
it
'
should detect
http on standard port'
do
it
'
detects
http on standard port'
do
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:port
).
and_return
(
80
)
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:url
).
and_return
(
Settings
.
send
(
:build_gitlab_url
))
stub_url
([
'http://'
,
config
.
host
,
'/gitlab-org/gitlab-ce.git'
].
join
(
''
))
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
namespace_project_path
(
'gitlab-org'
,
'gitlab-ce'
),
namespace_project_tree_path
(
'gitlab-org'
,
'gitlab-ce'
,
'hash'
)
])
end
it
'
should detect
http on non-standard port'
do
it
'
detects
http on non-standard port'
do
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:port
).
and_return
(
3000
)
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:url
).
and_return
(
Settings
.
send
(
:build_gitlab_url
))
stub_url
([
'http://'
,
config
.
host
,
':3000/gitlab-org/gitlab-ce.git'
].
join
(
''
))
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
namespace_project_path
(
'gitlab-org'
,
'gitlab-ce'
),
namespace_project_tree_path
(
'gitlab-org'
,
'gitlab-ce'
,
'hash'
)
])
end
it
'
should work
with relative_url_root'
do
it
'
works
with relative_url_root'
do
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:port
).
and_return
(
80
)
# set this just to be sure
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:relative_url_root
).
and_return
(
'/gitlab/root'
)
allow
(
Gitlab
.
config
.
gitlab
).
to
receive
(
:url
).
and_return
(
Settings
.
send
(
:build_gitlab_url
))
...
...
@@ -55,22 +55,22 @@ describe SubmoduleHelper do
end
context
'submodule on github.com'
do
it
'
should detect
ssh'
do
it
'
detects
ssh'
do
stub_url
(
'git@github.com:gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://github.com/gitlab-org/gitlab-ce'
,
'https://github.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should detect
http'
do
it
'
detects
http'
do
stub_url
(
'http://github.com/gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://github.com/gitlab-org/gitlab-ce'
,
'https://github.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should detect
https'
do
it
'
detects
https'
do
stub_url
(
'https://github.com/gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://github.com/gitlab-org/gitlab-ce'
,
'https://github.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should return
original with non-standard url'
do
it
'
returns
original with non-standard url'
do
stub_url
(
'http://github.com/gitlab-org/gitlab-ce'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
repo
.
submodule_url_for
,
nil
])
...
...
@@ -80,22 +80,22 @@ describe SubmoduleHelper do
end
context
'submodule on gitlab.com'
do
it
'
should detect
ssh'
do
it
'
detects
ssh'
do
stub_url
(
'git@gitlab.com:gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://gitlab.com/gitlab-org/gitlab-ce'
,
'https://gitlab.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should detect
http'
do
it
'
detects
http'
do
stub_url
(
'http://gitlab.com/gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://gitlab.com/gitlab-org/gitlab-ce'
,
'https://gitlab.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should detect
https'
do
it
'
detects
https'
do
stub_url
(
'https://gitlab.com/gitlab-org/gitlab-ce.git'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
'https://gitlab.com/gitlab-org/gitlab-ce'
,
'https://gitlab.com/gitlab-org/gitlab-ce/tree/hash'
])
end
it
'
should return
original with non-standard url'
do
it
'
returns
original with non-standard url'
do
stub_url
(
'http://gitlab.com/gitlab-org/gitlab-ce'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
repo
.
submodule_url_for
,
nil
])
...
...
@@ -105,7 +105,7 @@ describe SubmoduleHelper do
end
context
'submodule on unsupported'
do
it
'
should return
original'
do
it
'
returns
original'
do
stub_url
(
'http://mygitserver.com/gitlab-org/gitlab-ce'
)
expect
(
submodule_links
(
submodule_item
)).
to
eq
([
repo
.
submodule_url_for
,
nil
])
...
...
spec/helpers/tree_helper_spec.rb
View file @
519275c1
...
...
@@ -12,7 +12,7 @@ describe TreeHelper do
context
"on a directory containing more than one file/directory"
do
let
(
:tree_item
)
{
double
(
name:
"files"
,
path:
"files"
)
}
it
"
should return
the directory name"
do
it
"
returns
the directory name"
do
expect
(
flatten_tree
(
tree_item
)).
to
match
(
'files'
)
end
end
...
...
@@ -20,7 +20,7 @@ describe TreeHelper do
context
"on a directory containing only one directory"
do
let
(
:tree_item
)
{
double
(
name:
"foo"
,
path:
"foo"
)
}
it
"
should return
the flattened path"
do
it
"
returns
the flattened path"
do
expect
(
flatten_tree
(
tree_item
)).
to
match
(
'foo/bar'
)
end
end
...
...
spec/lib/ci/charts_spec.rb
View file @
519275c1
...
...
@@ -7,12 +7,12 @@ describe Ci::Charts, lib: true do
FactoryGirl
.
create
(
:ci_build
,
pipeline:
@pipeline
)
end
it
'
should return
build times in minutes'
do
it
'
returns
build times in minutes'
do
chart
=
Ci
::
Charts
::
BuildTime
.
new
(
@pipeline
.
project
)
expect
(
chart
.
build_times
).
to
eq
([
2
])
end
it
'
should handle
nil build times'
do
it
'
handles
nil build times'
do
create
(
:ci_pipeline
,
duration:
nil
,
project:
@pipeline
.
project
)
chart
=
Ci
::
Charts
::
BuildTime
.
new
(
@pipeline
.
project
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment