Пример #1
0
    def test_server_credentials(self):
        root_certificates = b'Trust starts here. Really.'
        first_private_key = b'This is a really bad private key, yo.'
        first_certificate_chain = b'Trust me! Do I not look trustworty?'
        second_private_key = b'This is another bad private key, yo.'
        second_certificate_chain = b'Look into my eyes; you can totes trust me.'

        _c.init()

        server_credentials = _c.ServerCredentials(
            None, ((first_private_key, first_certificate_chain), ))
        del server_credentials
        server_credentials = _c.ServerCredentials(
            root_certificates,
            ((first_private_key, first_certificate_chain), ))
        del server_credentials
        server_credentials = _c.ServerCredentials(root_certificates, (
            (first_private_key, first_certificate_chain),
            (second_private_key, second_certificate_chain),
        ))
        del server_credentials
        with self.assertRaises(TypeError):
            _c.ServerCredentials(root_certificates, first_private_key,
                                 second_certificate_chain)

        _c.shut_down()
Пример #2
0
  def test_secure_server(self):
    _c.init()

    server_credentials = _c.ServerCredentials(
        'root certificate', (('private key', 'certificate chain'),))

    completion_queue = _c.CompletionQueue()
    server = _c.Server(completion_queue, server_credentials)
    server.add_http2_addr('[::]:0')
    server.start()
    thread = threading.Thread(target=completion_queue.get, args=(_FUTURE,))
    thread.start()
    time.sleep(1)
    server.stop()
    completion_queue.stop()
    for _ in range(_IDEMPOTENCE_DEMONSTRATION):
      event = completion_queue.get(time.time() + _TIMEOUT)
      self.assertIs(event.kind, _datatypes.Event.Kind.STOP)
    thread.join()
    del server
    del completion_queue

    _c.shut_down()