Example #1
0
def test_get_args(json_response, text_response, malformed_response):
    err = GlobusAPIError(json_response.r)
    assert err._get_args() == ("400", "Json Error", "json error message")
    err = GlobusAPIError(text_response.r)
    assert err._get_args() == ("401", "Error", "error message")
    err = GlobusAPIError(malformed_response.r)
    assert err._get_args() == ("403", "Error", "{")
Example #2
0
    def test_raw_text(self):
        """
        Gets raw text from both json and text responses, confirms results
        """
        # json
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.json_response)
        self.assertEqual(apiErr.exception.raw_text, json.dumps(self.json_data))

        # text
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.text_response)
        self.assertEqual(apiErr.exception.raw_text, self.text_data)
Example #3
0
    def test_raw_json(self):
        """
        Confirms the GlobusAPIError can get raw json from the json responses,
        and defaults to text for the text response
        """
        # json
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.json_response)
        self.assertEqual(apiErr.exception.raw_json, self.json_data)

        # text
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.text_response)
        self.assertEqual(apiErr.exception.raw_json, None)

        # malformed
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.malformed_response)
        self.assertEqual(apiErr.exception.raw_json, None)
Example #4
0
def test_get_args(json_response, text_response, malformed_response):
    err = GlobusAPIError(json_response.r)
    assert err._get_args() == ("400", "Json Error", "json error message")
    err = GlobusAPIError(text_response.r)
    assert err._get_args() == ("401", "Error", "error message")
    err = GlobusAPIError(malformed_response.r)
    assert err._get_args() == ("403", "Error", "{")
Example #5
0
    def test_get_args(self):
        """
        Gets args from json text and malformed responses, confirms results
        Implicitly tests _load_from_json and _load_from_text
        """

        # json
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.json_response)
        expected = ("400", "Json Error", "json error message")
        self.assertEqual(apiErr.exception._get_args(), expected)

        # text
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.text_response)
        expected = ("401", "Error", "error message")
        self.assertEqual(apiErr.exception._get_args(), expected)

        # malformed
        with self.assertRaises(GlobusAPIError) as apiErr:
            raise GlobusAPIError(self.malformed_response)
        expected = ("403", "Error", "{")
        self.assertEqual(apiErr.exception._get_args(), expected)
Example #6
0
def test_raw_json_fail(text_response, malformed_response):
    err = GlobusAPIError(text_response.r)
    assert err.raw_json is None

    err = GlobusAPIError(malformed_response.r)
    assert err.raw_json is None
Example #7
0
def test_raw_json_works(json_response):
    err = GlobusAPIError(json_response.r)
    assert err.raw_json == json_response.data
Example #8
0
def test_raw_text_works(json_response, text_response):
    err = GlobusAPIError(json_response.r)
    assert err.raw_text == json.dumps(json_response.data)
    err = GlobusAPIError(text_response.r)
    assert err.raw_text == text_response.data