aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/python/grpcio_test/grpc_interop/_secure_interop_test.py
diff options
context:
space:
mode:
authorGravatar Nathaniel Manista <nathaniel@google.com>2015-07-31 09:43:33 -0700
committerGravatar Nathaniel Manista <nathaniel@google.com>2015-07-31 09:43:33 -0700
commit5f8d05bb9c72d950ca35e27a8da8a303765c85cb (patch)
tree05b0e5ea029416c296aeeeb3909e78cdfcc72bdf /src/python/grpcio_test/grpc_interop/_secure_interop_test.py
parent5d405bd3ec5fbff80f6ab58a72ad670800370418 (diff)
parent623b7aee4ac6471e3af13cd2256ad7605e54d983 (diff)
Merge pull request #2698 from soltanmm/reorganize-python
Reorganize src/python.
Diffstat (limited to 'src/python/grpcio_test/grpc_interop/_secure_interop_test.py')
-rw-r--r--src/python/grpcio_test/grpc_interop/_secure_interop_test.py64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/python/grpcio_test/grpc_interop/_secure_interop_test.py b/src/python/grpcio_test/grpc_interop/_secure_interop_test.py
new file mode 100644
index 0000000000..a2682dee99
--- /dev/null
+++ b/src/python/grpcio_test/grpc_interop/_secure_interop_test.py
@@ -0,0 +1,64 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+"""Secure client-server interoperability as a unit test."""
+
+import unittest
+
+from grpc.early_adopter import implementations
+
+from grpc_interop import _interop_test_case
+from grpc_interop import methods
+from grpc_interop import resources
+
+_SERVER_HOST_OVERRIDE = 'foo.test.google.fr'
+
+
+class SecureInteropTest(
+ _interop_test_case.InteropTestCase,
+ unittest.TestCase):
+
+ def setUp(self):
+ self.server = implementations.server(
+ methods.SERVICE_NAME, methods.SERVER_METHODS, 0,
+ private_key=resources.private_key(),
+ certificate_chain=resources.certificate_chain())
+ self.server.start()
+ port = self.server.port()
+ self.stub = implementations.stub(
+ methods.SERVICE_NAME, methods.CLIENT_METHODS, 'localhost', port,
+ secure=True, root_certificates=resources.test_root_certificates(),
+ server_host_override=_SERVER_HOST_OVERRIDE)
+
+ def tearDown(self):
+ self.server.stop()
+
+
+if __name__ == '__main__':
+ unittest.main(verbosity=2)