Unit tests for scm_request_processor done
Unit tests are now covering 100% of current code. Signed-off-by: Michal Konečný <mkonecny@redhat.com>
This commit is contained in:
parent
03b815c112
commit
d5f38f16d6
1 changed files with 128 additions and 0 deletions
|
@ -2626,3 +2626,131 @@ class TestValidateReviewBug:
|
|||
call({"username": user}, "packager"),
|
||||
call({"username": user}, "packager"),
|
||||
])
|
||||
|
||||
|
||||
class TestValidEpelPackage:
|
||||
"""
|
||||
Test class for `toddlers.plugins.scm_request_processor.SCMRequestProcessor.valid_epel_package` method.
|
||||
"""
|
||||
|
||||
def setup(self):
|
||||
"""
|
||||
Initialize toddler.
|
||||
"""
|
||||
self.toddler = scm_request_processor.SCMRequestProcessor()
|
||||
self.toddler.pagure_io = Mock()
|
||||
self.toddler.dist_git = Mock()
|
||||
self.toddler.requests_session = Mock()
|
||||
|
||||
def test_valid_epel_package_bad_response(self):
|
||||
"""
|
||||
Assert that method will raise error when bad response is retrieved.
|
||||
"""
|
||||
# Preparation
|
||||
name = "package"
|
||||
branch = "epel8"
|
||||
|
||||
mock_response = Mock()
|
||||
mock_response.status_code = 500
|
||||
self.toddler.requests_session.get.return_value = mock_response
|
||||
|
||||
error = "Couldn't retrieve the list of official EL packages"
|
||||
|
||||
# Method to test
|
||||
with pytest.raises(ValidationError, match=error):
|
||||
self.toddler.valid_epel_package(name=name, branch=branch)
|
||||
|
||||
# Asserts
|
||||
self.toddler.requests_session.get.assert_called_with(
|
||||
"https://infrastructure.fedoraproject.org/repo/json/pkg_el8.json"
|
||||
)
|
||||
|
||||
def test_valid_epel_package_epel6_noarch(self):
|
||||
"""
|
||||
Assert that method will return False when epel6 noarch package is introduced.
|
||||
"""
|
||||
# Preparation
|
||||
name = "package"
|
||||
branch = "epel6"
|
||||
|
||||
mock_response = Mock()
|
||||
mock_response.status_code = 200
|
||||
mock_response.json.return_value = {
|
||||
"arches": ["noarch", "ppc", "i386"],
|
||||
"packages": {
|
||||
name: {
|
||||
"arch": ["noarch"]
|
||||
}
|
||||
}
|
||||
}
|
||||
self.toddler.requests_session.get.return_value = mock_response
|
||||
|
||||
# Method to test
|
||||
result = self.toddler.valid_epel_package(name=name, branch=branch)
|
||||
|
||||
# Asserts
|
||||
self.toddler.requests_session.get.assert_called_with(
|
||||
"https://infrastructure.fedoraproject.org/repo/json/pkg_el6.json"
|
||||
)
|
||||
|
||||
assert result is False
|
||||
|
||||
def test_valid_epel_package_epel7_noarch(self):
|
||||
"""
|
||||
Assert that method will return False when epel7 noarch package is introduced.
|
||||
"""
|
||||
# Preparation
|
||||
name = "package"
|
||||
branch = "epel7"
|
||||
|
||||
mock_response = Mock()
|
||||
mock_response.status_code = 200
|
||||
mock_response.json.return_value = {
|
||||
"arches": ["noarch", "ppc", "i386"],
|
||||
"packages": {
|
||||
name: {
|
||||
"arch": ["noarch"]
|
||||
}
|
||||
}
|
||||
}
|
||||
self.toddler.requests_session.get.return_value = mock_response
|
||||
|
||||
# Method to test
|
||||
result = self.toddler.valid_epel_package(name=name, branch=branch)
|
||||
|
||||
# Asserts
|
||||
self.toddler.requests_session.get.assert_called_with(
|
||||
"https://infrastructure.fedoraproject.org/repo/json/pkg_el7.json"
|
||||
)
|
||||
|
||||
assert result is False
|
||||
|
||||
def test_valid_epel_package_valid_package(self):
|
||||
"""
|
||||
Assert that method will return True when package is valid.
|
||||
"""
|
||||
# Preparation
|
||||
name = "package"
|
||||
branch = "epel8"
|
||||
|
||||
mock_response = Mock()
|
||||
mock_response.status_code = 200
|
||||
mock_response.json.return_value = {
|
||||
"arches": ["noarch", "ppc", "i386"],
|
||||
"packages": {
|
||||
name: {
|
||||
"arch": ["x86_64"]
|
||||
}
|
||||
}
|
||||
}
|
||||
self.toddler.requests_session.get.return_value = mock_response
|
||||
|
||||
# Method to test
|
||||
result = self.toddler.valid_epel_package(name=name, branch=branch)
|
||||
|
||||
# Asserts
|
||||
self.toddler.requests_session.get.assert_called_with(
|
||||
"https://infrastructure.fedoraproject.org/repo/json/pkg_el8.json"
|
||||
)
|
||||
|
||||
assert result is True
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue