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
3e693d08
Commit
3e693d08
authored
Nov 26, 2020
by
Coung Ngo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add issue header actions rspec
parent
bb0453f3
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
183 additions
and
0 deletions
+183
-0
spec/features/issues/issue_header_spec.rb
spec/features/issues/issue_header_spec.rb
+183
-0
No files found.
spec/features/issues/issue_header_spec.rb
0 → 100644
View file @
3e693d08
# frozen_string_literal: true
require
'spec_helper'
RSpec
.
describe
'issue header'
,
:js
do
let_it_be
(
:user
)
{
create
(
:user
)
}
let_it_be
(
:project
)
{
create
(
:project
)
}
let_it_be
(
:issue
)
{
create
(
:issue
,
project:
project
)
}
let_it_be
(
:closed_issue
)
{
create
(
:issue
,
:closed
,
project:
project
)
}
let_it_be
(
:closed_locked_issue
)
{
create
(
:issue
,
:closed
,
:locked
,
project:
project
)
}
context
'when user has permission to update'
do
before
do
project
.
add_maintainer
(
user
)
sign_in
(
user
)
end
context
'within the issue actions dropdown menu'
do
before
do
visit
project_issue_path
(
project
,
issue
)
# Click on the ellipsis icon
click_button
'Issue actions'
end
it
'has "New issue" item'
do
expect
(
page
).
to
have_link
'New issue'
end
it
'has "Report abuse" item'
do
expect
(
page
).
to
have_link
'Report abuse'
end
it
'does not have "Submit as spam" item'
do
expect
(
page
).
not_to
have_link
'Submit as spam'
end
end
context
'when the issue is open'
do
before
do
visit
project_issue_path
(
project
,
issue
)
end
it
'has a "Close issue" button'
do
expect
(
page
).
to
have_button
'Close issue'
end
end
context
'when the issue is closed'
do
before
do
visit
project_issue_path
(
project
,
closed_issue
)
end
it
'has a "Reopen issue" button'
do
expect
(
page
).
to
have_button
'Reopen issue'
end
end
context
'when the issue is closed and locked'
do
before
do
visit
project_issue_path
(
project
,
closed_locked_issue
)
end
it
'does not have a "Reopen issue" button'
do
expect
(
page
).
not_to
have_button
'Reopen issue'
end
end
context
'when the current user is the issue author'
do
let
(
:authored_issue
)
{
create
(
:issue
,
project:
project
)
}
before
do
authored_issue
.
update!
(
author:
user
)
visit
project_issue_path
(
project
,
authored_issue
)
end
it
'does not show "Report abuse" link in dropdown'
do
click_button
'Issue actions'
expect
(
page
).
not_to
have_link
'Report abuse'
end
end
end
context
'when user is admin and the project is set up for spam'
do
let_it_be
(
:admin
)
{
create
(
:admin
)
}
let_it_be
(
:user_agent_detail
)
{
create
(
:user_agent_detail
,
subject:
issue
)
}
before
do
stub_application_setting
(
akismet_enabled:
true
)
project
.
add_maintainer
(
admin
)
sign_in
(
admin
)
end
context
'within the issue actions dropdown menu'
do
before
do
visit
project_issue_path
(
project
,
issue
)
# Click on the ellipsis icon
click_button
'Issue actions'
end
it
'has "Submit as spam" item '
do
expect
(
page
).
to
have_link
'Submit as spam'
end
end
end
context
'when user does not have permission to update'
do
before
do
project
.
add_guest
(
user
)
sign_in
(
user
)
end
context
'within the issue actions dropdown menu'
do
before
do
visit
project_issue_path
(
project
,
issue
)
# Click on the ellipsis icon
click_button
'Issue actions'
end
it
'has "New issue" item'
do
expect
(
page
).
to
have_link
'New issue'
end
it
'has "Report abuse" item'
do
expect
(
page
).
to
have_link
'Report abuse'
end
it
'does not have "Submit as spam" item'
do
expect
(
page
).
not_to
have_link
'Submit as spam'
end
end
context
'when the issue is open'
do
before
do
visit
project_issue_path
(
project
,
issue
)
end
it
'does not have a "Close issue" button'
do
expect
(
page
).
not_to
have_button
'Close issue'
end
end
context
'when the issue is closed'
do
before
do
visit
project_issue_path
(
project
,
closed_issue
)
end
it
'does not have a "Reopen issue" button'
do
expect
(
page
).
not_to
have_button
'Reopen issue'
end
end
context
'when the issue is closed and locked'
do
before
do
visit
project_issue_path
(
project
,
closed_locked_issue
)
end
it
'does not have a "Reopen issue" button'
do
expect
(
page
).
not_to
have_button
'Reopen issue'
end
end
context
'when the current user is the issue author'
do
let
(
:authored_issue
)
{
create
(
:issue
,
project:
project
)
}
before
do
authored_issue
.
update!
(
author:
user
)
visit
project_issue_path
(
project
,
authored_issue
)
end
it
'does not show "Report abuse" link in dropdown'
do
click_button
'Issue actions'
expect
(
page
).
not_to
have_link
'Report abuse'
end
end
end
end
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