BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
c1bc5c58
Commit
c1bc5c58
authored
May 13, 2016
by
Kamil Trzcinski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added pipelines spec
parent
886bfb0a
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
124 additions
and
6 deletions
+124
-6
_commit.html.haml
app/views/projects/ci/commits/_commit.html.haml
+1
-1
pipelines_spec.rb
spec/features/pipelines_spec.rb
+123
-5
No files found.
app/views/projects/ci/commits/_commit.html.haml
View file @
c1bc5c58
...
...
@@ -55,7 +55,7 @@
.controls.hidden-xs.pull-right
-
artifacts
=
commit
.
builds
.
latest
.
select
{
|
b
|
b
.
artifacts?
}
-
if
artifacts
.
present?
.dropdown.inline
.dropdown.inline
.build-artifacts
%button
.dropdown-toggle.btn
{
type:
'button'
,
'data-toggle'
=>
'dropdown'
}
=
icon
(
'download'
)
%b
.caret
...
...
spec/features/pipelines_spec.rb
View file @
c1bc5c58
...
...
@@ -5,21 +5,139 @@ describe "Pipelines" do
let
(
:project
)
{
create
(
:empty_project
)
}
let
(
:user
)
{
create
(
:user
)
}
before
{
login_as
(
user
)
}
describe
"GET /:project/pipelines"
do
before
do
login_as
(
user
)
project
.
team
<<
[
user
,
:developer
]
end
describe
'GET /:project/pipelines'
do
let!
(
:pipeline
)
{
create
(
:ci_commit
,
project:
project
,
ref:
'master'
,
status:
'running'
)
}
[
:all
,
:running
,
:branches
].
each
do
|
scope
|
context
"displaying
#{
scope
}
"
do
let
(
:project
)
{
create
(
:project
)
}
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
,
scope:
scope
)
}
it
{
expect
(
page
).
to
have_content
(
pipeline
.
short_sha
)
}
end
end
context
'cancelable pipeline'
do
let!
(
:running
)
{
create
(
:ci_build
,
:running
,
commit:
pipeline
,
stage:
'test'
,
commands:
'test'
)
}
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
)
}
it
{
expect
(
page
).
to
have_link
(
'Cancel'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.ci-running'
)
}
context
'when canceling'
do
before
{
click_link
(
'Cancel'
)
}
it
{
expect
(
page
).
to_not
have_link
(
'Cancel'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.ci-canceled'
)
}
end
end
context
'retryable pipelines'
do
let!
(
:failed
)
{
create
(
:ci_build
,
:failed
,
commit:
pipeline
,
stage:
'test'
,
commands:
'test'
)
}
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
)
}
it
{
expect
(
page
).
to
have_link
(
'Retry'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.ci-failed'
)
}
context
'when retrying'
do
before
{
click_link
(
'Retry'
)
}
it
{
expect
(
page
).
to_not
have_link
(
'Retry'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.ci-running'
)
}
end
end
context
'downloadable pipelines'
do
before
{
visit
namespace_project_pipelines_path
(
project
.
namespace
,
project
)
}
context
'with artifacts'
do
let!
(
:with_artifacts
)
{
create
(
:ci_build
,
:success
,
:artifacts
,
commit:
pipeline
,
name:
'rspec tests'
,
stage:
'test'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.build-artifacts'
)
}
it
{
expect
(
page
).
to
have_link
(
with_artifacts
.
name
)
}
end
context
'without artifacts'
do
let!
(
:without_artifacts
)
{
create
(
:ci_build
,
:success
,
commit:
pipeline
,
name:
'rspec'
,
stage:
'test'
)
}
it
{
expect
(
page
).
to_not
have_selector
(
'.build-artifacts'
)
}
end
end
end
describe
"GET /:project/pipelines/:id"
do
describe
'GET /:project/pipelines/:id'
do
let
(
:pipeline
)
{
create
(
:ci_commit
,
project:
project
,
ref:
'master'
)
}
before
do
create
(
:ci_build
,
:success
,
commit:
pipeline
)
@success
=
create
(
:ci_build
,
:success
,
commit:
pipeline
,
stage:
'build'
)
@failed
=
create
(
:ci_build
,
:failed
,
commit:
pipeline
,
stage:
'test'
,
commands:
'test'
)
@running
=
create
(
:ci_build
,
:running
,
commit:
pipeline
,
stage:
'deploy'
)
@external
=
create
(
:generic_commit_status
,
:success
,
commit:
pipeline
,
stage:
'external'
)
end
before
{
visit
namespace_project_pipeline_path
(
project
.
namespace
,
project
,
pipeline
)
}
it
{
expect
(
page
).
to
()}
it
'showing a list of builds'
do
expect
(
page
).
to
have_content
(
'Tests'
)
expect
(
page
).
to
have_content
(
@success
.
id
)
expect
(
page
).
to
have_content
(
'Deploy'
)
expect
(
page
).
to
have_content
(
@failed
.
id
)
expect
(
page
).
to
have_content
(
@running
.
id
)
expect
(
page
).
to
have_content
(
@external
.
id
)
expect
(
page
).
to
have_content
(
'Retry failed'
)
expect
(
page
).
to
have_content
(
'Cancel running'
)
end
context
'retrying builds'
do
it
{
expect
(
page
).
to_not
have_content
(
'retried'
)
}
context
'when retrying'
do
before
{
click_on
'Retry failed'
}
it
{
expect
(
page
).
to_not
have_content
(
'Retry failed'
)
}
it
{
expect
(
page
).
to
have_content
(
'retried'
)
}
end
end
context
'canceling builds'
do
it
{
expect
(
page
).
to_not
have_selector
(
'.ci-canceled'
)
}
context
'when canceling'
do
before
{
click_on
'Cancel running'
}
it
{
expect
(
page
).
to_not
have_content
(
'Cancel running'
)
}
it
{
expect
(
page
).
to
have_selector
(
'.ci-canceled'
)
}
end
end
end
describe
'POST /:project/pipelines'
do
let
(
:project
)
{
create
(
:project
)
}
before
{
visit
new_namespace_project_pipeline_path
(
project
.
namespace
,
project
)
}
context
'for valid commit'
do
before
{
fill_in
(
'Create for'
,
with:
'master'
)
}
it
{
expect
{
click_on
'Create pipeline'
}.
to
change
{
Ci
::
Commit
.
count
}.
by
(
1
)
}
end
context
'for invalid commit'
do
before
do
fill_in
(
'Create for'
,
with:
'invalid reference'
)
click_on
'Create pipeline'
end
it
{
expect
(
page
).
to
have_content
(
'Reference not found'
)
}
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