Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
workspaces
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ssa
workspaces
Merge requests
!90
Add forgotten test file for the new capability request Pyramid views
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Add forgotten test file for the new capability request Pyramid views
add-forgotten-capability-request-tests
into
main
Overview
0
Commits
1
Pipelines
1
Changes
1
Merged
Nathan Hertz
requested to merge
add-forgotten-capability-request-tests
into
main
4 years ago
Overview
0
Commits
1
Pipelines
1
Changes
1
Expand
Forgot to add them in the previous MR!
0
0
Merge request reports
Compare
main
main (base)
and
latest version
latest version
39e95772
1 commit,
4 years ago
1 file
+
104
−
0
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
services/capability/test/test_capability_request_views.py
0 → 100644
+
104
−
0
Options
"""
Tests that test the view functionality of our capability request REST API.
The logic can be found in `capability/views/capability.py`.
"""
from
pyramid.config
import
Configurator
from
pyramid.httpexceptions
import
(
HTTPBadRequest
,
HTTPExpectationFailed
,
HTTPNotFound
,
HTTPPreconditionFailed
,
)
from
pyramid.testing
import
DummyRequest
def
test_view_capability_request
(
test_config
:
Configurator
,
request_null_capability
:
DummyRequest
):
"""
Tests the view_capability_request view to make sure it properly returns the info of a capability request
:param test_config: Dummy Pyramid Configurator object set up for testing
:param request_null_capability: Dummy Pyramid request object set up with mocked DB access
supporting the null capability
"""
from
capability.views.capability_request
import
view_capability_request
expected_response
=
(
'
{
"
id
"
: 0,
"
capability_name
"
:
"
null
"
,
"
state
"
:
"
Created
"
,
"
parameters
"
:
"
-g
"
}
'
)
request_null_capability
.
matchdict
[
"
capability_name
"
]
=
"
null
"
request_null_capability
.
matchdict
[
"
request_id
"
]
=
0
response
=
view_capability_request
(
request_null_capability
)
assert
response
.
status_code
==
200
assert
response
.
json_body
==
expected_response
def
test_view_capability_request_not_found
(
test_config
:
Configurator
,
request_null_capability
:
DummyRequest
):
"""
Tests the view_capability_request view to make sure it properly returns a 404 Not Found exception
when a capability request does not exist
:param test_config: Dummy Pyramid Configurator object set up for testing
:param request_null_capability: Dummy Pyramid request object set up with mocked DB access
supporting the null capability
"""
from
capability.views.capability_request
import
view_capability_request
request_null_capability
.
matchdict
[
"
capability_name
"
]
=
"
null
"
request_null_capability
.
matchdict
[
"
request_id
"
]
=
-
1
response
=
view_capability_request
(
request_null_capability
)
assert
response
.
status_code
==
404
assert
type
(
response
)
is
HTTPNotFound
def
test_create_capability_request
(
test_config
:
Configurator
,
request_null_capability
:
DummyRequest
):
"""
Tests the create capability view to make sure it properly supports creation of capabilities
:param test_config: Dummy Pyramid Configurator object set up for testing
:param request_null_capability: Dummy Pyramid request object set up with mocked DB access
supporting the null capability
"""
from
capability.views.capability_request
import
create_capability_request
request_null_capability
.
json_body
=
{
"
parameters
"
:
"
-g
"
,
"
versions
"
:
[]}
# Assert test capability not in list of capabilities (mocked)
assert
not
request_null_capability
.
capability_info
.
lookup_capability_request
(
1
)
response
=
create_capability_request
(
request_null_capability
)
assert
response
.
status_code
==
200
expected_response
=
(
'
{
"
id
"
: 1,
"
capability_name
"
:
"
null
"
,
"
state
"
:
"
Created
"
,
"
parameters
"
:
"
-g
"
}
'
)
assert
response
.
json_body
==
expected_response
# Assert test capability has been added to list of capabilities (mocked)
assert
request_null_capability
.
capability_info
.
lookup_capability_request
(
1
)
def
test_create_capability_request_error
(
test_config
:
Configurator
,
request_null_capability
:
DummyRequest
):
"""
Tests that the create_capability_request view correctly responds with exceptions given bad input
:param test_config: Dummy Pyramid Configurator object set up for testing
:param request_null_capability: Dummy Pyramid request object set up with mocked DB access
supporting the null capability
"""
from
capability.views.capability_request
import
create_capability_request
request_null_capability
.
json_body
=
{
"
bad
"
:
"
param
"
}
response_bad_params
=
create_capability_request
(
request_null_capability
)
assert
response_bad_params
.
status_code
==
400
assert
type
(
response_bad_params
)
is
HTTPBadRequest
request_null_capability
.
matchdict
[
"
capability_name
"
]
=
"
does_not_exist
"
request_null_capability
.
json_body
=
{
"
parameters
"
:
"
-g
"
,
"
versions
"
:
[]}
response_does_not_exist
=
create_capability_request
(
request_null_capability
)
assert
response_does_not_exist
.
status_code
==
412
assert
type
(
response_does_not_exist
)
is
HTTPPreconditionFailed
Loading