From: Jelte Jansen Date: Mon, 21 Jan 2013 10:58:26 +0000 (+0100) Subject: [2595] Additional tests for ssl socket wrapping code X-Git-Tag: bind10-1.0.0-rc-release~76^2~8^2~4^2~1^2~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e273dedf8a3875ddb241b796c19144d14819f5d8;p=thirdparty%2Fkea.git [2595] Additional tests for ssl socket wrapping code --- diff --git a/src/bin/cmdctl/tests/cmdctl_test.py b/src/bin/cmdctl/tests/cmdctl_test.py index 849a34f733..f660bf127e 100644 --- a/src/bin/cmdctl/tests/cmdctl_test.py +++ b/src/bin/cmdctl/tests/cmdctl_test.py @@ -513,16 +513,29 @@ class TestSecureHTTPServer(unittest.TestCase): def test_wrap_sock_in_ssl_context(self): sock = socket.socket() + # Bad files should result in a socket.error raised by our own + # code in the basic file checks self.assertRaises(socket.error, self.server._wrap_socket_in_ssl_context, sock, 'no_such_file', 'no_such_file') - sock1 = socket.socket() - self.server._wrap_socket_in_ssl_context(sock1, - BUILD_FILE_PATH + 'cmdctl-keyfile.pem', + # Using a non-certificate file would cause an SSLError, which + # is caught by our code which then raises a basic socket.error + self.assertRaises(socket.error, + self.server._wrap_socket_in_ssl_context, + sock, + BUILD_FILE_PATH + 'cmdctl.py', BUILD_FILE_PATH + 'cmdctl-certfile.pem') + # Should succeed + sock1 = socket.socket() + ssl_sock = self.server._wrap_socket_in_ssl_context(sock1, + BUILD_FILE_PATH + 'cmdctl-keyfile.pem', + BUILD_FILE_PATH + 'cmdctl-certfile.pem') + self.assertIsInstance(ssl_sock, ssl.SSLSocket) + + class TestFuncNotInClass(unittest.TestCase): def test_check_port(self): self.assertRaises(OptionValueError, check_port, None, 'port', -1, None)