コード例 #1
0
 def test_pdc_api_get(self, session):
     """ Ensure that an API request to PDC works as expected.
     """
     session.get.return_value.status_code = 200
     expected_json = {
         "count":
         1,
         "next":
         None,
         "previous":
         None,
         "results": [{
             "id": 1,
             "sla": "security_fixes",
             "branch": {
                 "id": 1,
                 "name": "2.7",
                 "global_component": "python",
                 "type": "rpm",
                 "active": True,
                 "critical_path": True
             },
             "eol": "2018-04-27"
         }]
     }
     session.get.return_value.json.return_value = expected_json
     rv = util.pdc_api_get(
         'http://domain.local/rest_api/v1/component-branch-slas/')
     assert rv == expected_json, rv
コード例 #2
0
    def test_pdc_api_get_500_error(self, session):
        """ Ensure that an API request to PDC that triggers a 500 error
        raises the expected error message.
        """
        session.get.return_value.status_code = 500
        try:
            util.pdc_api_get(
                'http://domain.local/rest_api/v1/component-branch-slas/')
            assert False, 'Did not raise a RuntimeError'
        except RuntimeError as error:
            actual_error = six.text_type(error)

        expected_error = (
            'Bodhi failed to get a resource from PDC at the following URL '
            '"http://domain.local/rest_api/v1/component-branch-slas/". The '
            'status code was "500".')
        assert actual_error == expected_error, actual_error
コード例 #3
0
    def test_pdc_api_get_non_500_error_no_json(self, session):
        """ Ensure that an API request to PDC that raises an error that is
        not a 500 error and has no JSON returns an error.
        """
        session.get.return_value.status_code = 404
        session.get.return_value.json.side_effect = ValueError('Not JSON')
        try:
            util.pdc_api_get(
                'http://domain.local/rest_api/v1/component-branch-slas/3/')
            assert False, 'Did not raise a RuntimeError'
        except RuntimeError as error:
            actual_error = six.text_type(error)

        expected_error = (
            'Bodhi failed to get a resource from PDC at the following URL '
            '"http://domain.local/rest_api/v1/component-branch-slas/3/". The '
            'status code was "404". The error was "".')
        assert actual_error == expected_error, actual_error
コード例 #4
0
    def test_pdc_api_get_non_500_error(self, session):
        """ Ensure that an API request to PDC that raises an error that is
        not a 500 error returns the returned JSON.
        """
        session.get.return_value.status_code = 404
        session.get.return_value.json.return_value = {"detail": "Not found."}
        try:
            util.pdc_api_get(
                'http://domain.local/rest_api/v1/component-branch-slas/3/')
            assert False, 'Did not raise a RuntimeError'
        except RuntimeError as error:
            actual_error = six.text_type(error)

        expected_error = (
            'Bodhi failed to get a resource from PDC at the following URL '
            '"http://domain.local/rest_api/v1/component-branch-slas/3/". The '
            'status code was "404". The error was '
            '"{\'detail\': \'Not found.\'}".')
        assert actual_error == expected_error, actual_error