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
0
Merge Requests
0
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
Léo-Paul Géneau
gitlab-ce
Commits
aed0f088
Commit
aed0f088
authored
Oct 18, 2018
by
Tomasz Maczukin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add tests for shared/runners/show.html.haml view
parent
019701ce
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
165 additions
and
0 deletions
+165
-0
spec/factories/ci/runners.rb
spec/factories/ci/runners.rb
+10
-0
spec/views/shared/runners/show.html.haml_spec.rb
spec/views/shared/runners/show.html.haml_spec.rb
+155
-0
No files found.
spec/factories/ci/runners.rb
View file @
aed0f088
...
@@ -47,5 +47,15 @@ FactoryBot.define do
...
@@ -47,5 +47,15 @@ FactoryBot.define do
trait
:ref_protected
do
trait
:ref_protected
do
access_level
:ref_protected
access_level
:ref_protected
end
end
trait
:tagged_only
do
run_untagged
false
tag_list
%w(tag1 tag2)
end
trait
:locked
do
locked
true
end
end
end
end
end
spec/views/shared/runners/show.html.haml_spec.rb
0 → 100644
View file @
aed0f088
# frozen_string_literal: true
require
'spec_helper'
describe
'shared/runners/show.html.haml'
do
include
PageLayoutHelper
let
(
:runner
)
do
create
(
:ci_runner
,
name:
'test runner'
,
version:
'11.4.0'
,
ip_address:
'127.1.2.3'
,
revision:
'abcd1234'
,
architecture:
'amd64'
)
end
before
do
assign
(
:runner
,
runner
)
end
subject
do
render
rendered
end
describe
'Page title'
do
before
do
expect_any_instance_of
(
PageLayoutHelper
).
to
receive
(
:page_title
).
with
(
"
#{
runner
.
description
}
#
#{
runner
.
id
}
"
,
'Runners'
)
end
it
'sets proper page title'
do
render
end
end
describe
'Runner id and type'
do
context
'when runner is of type instance'
do
it
{
is_expected
.
to
have_content
(
"Runner #
#{
runner
.
id
}
Shared"
)
}
end
context
'when runner is of type group'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:group
)
}
it
{
is_expected
.
to
have_content
(
"Runner #
#{
runner
.
id
}
Group"
)
}
end
context
'when runner is of type project'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:project
)
}
it
{
is_expected
.
to
have_content
(
"Runner #
#{
runner
.
id
}
Specific"
)
}
end
end
describe
'Active value'
do
context
'when runner is active'
do
it
{
is_expected
.
to
have_content
(
'Active Yes'
)
}
end
context
'when runner is inactive'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:inactive
)
}
it
{
is_expected
.
to
have_content
(
'Active No'
)
}
end
end
describe
'Protected value'
do
context
'when runner is not protected'
do
it
{
is_expected
.
to
have_content
(
'Protected No'
)
}
end
context
'when runner is protected'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:ref_protected
)
}
it
{
is_expected
.
to
have_content
(
'Protected Yes'
)
}
end
end
describe
'Can run untagged jobs value'
do
context
'when runner run untagged job is set'
do
it
{
is_expected
.
to
have_content
(
'Can run untagged jobs Yes'
)
}
end
context
'when runner run untagged job is unset'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:tagged_only
)
}
it
{
is_expected
.
to
have_content
(
'Can run untagged jobs No'
)
}
end
end
describe
'Locked to this project value'
do
context
'when runner locked is not set'
do
it
{
is_expected
.
to
have_content
(
'Locked to this project No'
)
}
context
'when runner is of type group'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:group
)
}
it
{
is_expected
.
not_to
have_content
(
'Locked to this project'
)
}
end
end
context
'when runner locked is set'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:locked
)
}
it
{
is_expected
.
to
have_content
(
'Locked to this project Yes'
)
}
context
'when runner is of type group'
do
let
(
:runner
)
{
create
(
:ci_runner
,
:group
,
:locked
)
}
it
{
is_expected
.
not_to
have_content
(
'Locked to this project'
)
}
end
end
end
describe
'Tags value'
do
context
'when runner does not have tags'
do
it
{
is_expected
.
to
have_content
(
'Tags'
)
}
it
{
is_expected
.
not_to
have_selector
(
'span.badge.badge-primary'
)}
end
context
'when runner have tags'
do
let
(
:runner
)
{
create
(
:ci_runner
,
tag_list:
%w(tag2 tag3 tag1)
)
}
it
{
is_expected
.
to
have_content
(
'Tags tag1 tag2 tag3'
)
}
it
{
is_expected
.
to
have_selector
(
'span.badge.badge-primary'
)}
end
end
describe
'Metadata values'
do
it
{
is_expected
.
to
have_content
(
"Name
#{
runner
.
name
}
"
)
}
it
{
is_expected
.
to
have_content
(
"Version
#{
runner
.
version
}
"
)
}
it
{
is_expected
.
to
have_content
(
"IP Address
#{
runner
.
ip_address
}
"
)
}
it
{
is_expected
.
to
have_content
(
"Revision
#{
runner
.
revision
}
"
)
}
it
{
is_expected
.
to
have_content
(
"Platform
#{
runner
.
platform
}
"
)
}
it
{
is_expected
.
to
have_content
(
"Architecture
#{
runner
.
architecture
}
"
)
}
it
{
is_expected
.
to
have_content
(
"Description
#{
runner
.
description
}
"
)
}
end
describe
'Maximum job timeout value'
do
let
(
:runner
)
{
create
(
:ci_runner
,
maximum_timeout:
5400
)
}
it
{
is_expected
.
to
have_content
(
'Maximum job timeout 1h 30m'
)
}
end
describe
'Last contact value'
do
context
'when runner have not contacted yet'
do
it
{
is_expected
.
to
have_content
(
'Last contact Never'
)
}
end
context
'when runner have already contacted'
do
let
(
:runner
)
{
create
(
:ci_runner
,
contacted_at:
DateTime
.
now
-
6
.
days
)
}
let
(
:expected_contacted_at
)
{
I18n
.
localize
(
runner
.
contacted_at
,
format:
"%b %d, %Y"
)
}
it
{
is_expected
.
to
have_content
(
"Last contact
#{
expected_contacted_at
}
"
)
}
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