Alex Gaynor | de1906a | 2014-08-12 16:12:54 -0700 | [diff] [blame] | 1 | from OpenSSL._util import exception_from_error_queue, lib |
| 2 | from OpenSSL.test.util import TestCase |
| 3 | |
| 4 | |
Jean-Paul Calderone | 174c692 | 2015-04-11 07:26:15 -0400 | [diff] [blame] | 5 | class ErrorTests(TestCase): |
| 6 | """ |
| 7 | Tests for handling of certain OpenSSL error cases. |
| 8 | """ |
Alex Gaynor | 27f55ed | 2014-08-15 11:24:26 -0700 | [diff] [blame] | 9 | def test_exception_from_error_queue_nonexistent_reason(self): |
Alex Gaynor | 9823239 | 2014-08-15 11:23:00 -0700 | [diff] [blame] | 10 | """ |
Jean-Paul Calderone | 174c692 | 2015-04-11 07:26:15 -0400 | [diff] [blame] | 11 | :py:func:`exception_from_error_queue` raises ``ValueError`` when it |
| 12 | encounters an OpenSSL error code which does not have a reason string. |
Alex Gaynor | 9823239 | 2014-08-15 11:23:00 -0700 | [diff] [blame] | 13 | """ |
Alex Gaynor | bae2dc3 | 2014-08-14 13:44:54 -0700 | [diff] [blame] | 14 | lib.ERR_put_error(lib.ERR_LIB_EVP, 0, 1112, b"", 10) |
Hynek Schlawack | e69d845 | 2015-09-05 09:51:09 +0200 | [diff] [blame^] | 15 | exc = self.assertRaises( |
| 16 | ValueError, exception_from_error_queue, ValueError |
| 17 | ) |
Alex Gaynor | de1906a | 2014-08-12 16:12:54 -0700 | [diff] [blame] | 18 | self.assertEqual(exc.args[0][0][2], "") |