コード例 #1
0
ファイル: test_core.py プロジェクト: aliyun/tea-python
 def test_async_stream_upload(self):
     request = TeaRequest()
     request.method = 'POST'
     request.protocol = 'http'
     request.headers['host'] = "127.0.0.1:8888"
     loop = asyncio.get_event_loop()
     task = asyncio.ensure_future(TeaCore.async_do_action(request))
     f = TeaStream()
     request.body = f
     loop.run_until_complete(task)
     self.assertEqual(b'{"result": "tea test"}', task.result().body)
コード例 #2
0
ファイル: test_core.py プロジェクト: aliyun/tea-python
    def test_async_do_action(self):
        request = TeaRequest()
        request.headers['host'] = "www.alibabacloud.com"
        request.protocol = 'https'
        request.pathname = "/s/zh"
        request.query["k"] = "ecs"
        option = {
            "readTimeout": 20000,
            "connectTimeout": 10000,
            "httpProxy": None,
            "httpsProxy": None,
            "noProxy": None,
            "maxIdleConns": None,
            "retry": {
                "retryable": None,
                "maxAttempts": None
            },
            "backoff": {
                "policy": None,
                "period": None
            },
            "ignoreSSL": None
        }
        loop = asyncio.get_event_loop()
        task = asyncio.ensure_future(TeaCore.async_do_action(request, option))
        loop.run_until_complete(task)
        response = task.result()
        self.assertTrue(response.headers.get('server'))
        self.assertIsNotNone(bytes.decode(response.body))

        request.protocol = 'http'
        option['httpProxy'] = 'http://127.0.0.1'
        try:
            loop.run_until_complete(TeaCore.async_do_action(request, option))
            assert False
        except Exception as e:
            self.assertIsInstance(e, RetryError)