From e64f05ebf307cf26fcaa85b3169e0a17ee67475f Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Fri, 5 May 2023 11:18:43 +0000 Subject: automatic import of python-tornado-httpclient-mock --- .gitignore | 1 + python-tornado-httpclient-mock.spec | 226 ++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 228 insertions(+) create mode 100644 python-tornado-httpclient-mock.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..4accdae 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/tornado-httpclient-mock-0.2.3.tar.gz diff --git a/python-tornado-httpclient-mock.spec b/python-tornado-httpclient-mock.spec new file mode 100644 index 0000000..2d225ff --- /dev/null +++ b/python-tornado-httpclient-mock.spec @@ -0,0 +1,226 @@ +%global _empty_manifest_terminate_build 0 +Name: python-tornado-httpclient-mock +Version: 0.2.3 +Release: 1 +Summary: A library for mocking requests in Tornado HTTP client +License: http://www.apache.org/licenses/LICENSE-2.0 +URL: https://github.com/SuminAndrew/tornado-httpclient-mock +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2b/70/884e2d3565874c8e075dd763258481379173f9bccf90967af6f14e7d66e6/tornado-httpclient-mock-0.2.3.tar.gz +BuildArch: noarch + +Requires: python3-tornado + +%description +## tornado-httpclient-mock +A library for mocking requests in Tornado HTTP client + +[![Build Status](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock.svg?branch=master)](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock) +[![codecov](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock/branch/master/graph/badge.svg)](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock) + +This library can be used to patch `AsyncHTTPClient.fetch_impl` method to stub requests to external resources. + +`tornado_mock.httpclient.patch_http_client` does this patching on `AsyncHTTPClient` instance. +After that you can use `tornado_mock.httpclient.set_stub` method to setup an appropriate responses to the requests. + +```python +from tornado import gen +from tornado.httpclient import AsyncHTTPClient +from tornado.testing import AsyncHTTPTestCase +from tornado.web import Application, RequestHandler + +from tornado_mock.httpclient import get_response_stub, patch_http_client, set_stub + + +class TestHandler(RequestHandler): + @gen.coroutine + def get(self, *args, **kwargs): + response1 = yield self.application.http_client.fetch('http://example.com/path?query') + self.write(response1.body) + + response2 = yield self.application.http_client.fetch('http://test.com/path') + self.finish(response2.body) + + +class HTTPClientMockTest(AsyncHTTPTestCase): + def get_app(self): + app = Application([('/test', TestHandler)]) + self.app_http_client = app.http_client = AsyncHTTPClient(force_instance=True) + return app + + def test_mock(self): + patch_http_client(self.app_http_client) + + def get_response(request): + return get_response_stub(request, buffer='STUB2') + + set_stub(self.app_http_client, 'http://example.com/path', response_body='STUB1') + set_stub(self.app_http_client, 'http://test.com/path', response_function=get_response) + + self.assertEqual(self.fetch('/test').body, b'STUB1STUB2') +``` + +For more information see docstrings in [httpclient.py](tornado_mock/httpclient.py). + + + + +%package -n python3-tornado-httpclient-mock +Summary: A library for mocking requests in Tornado HTTP client +Provides: python-tornado-httpclient-mock +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-tornado-httpclient-mock +## tornado-httpclient-mock +A library for mocking requests in Tornado HTTP client + +[![Build Status](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock.svg?branch=master)](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock) +[![codecov](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock/branch/master/graph/badge.svg)](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock) + +This library can be used to patch `AsyncHTTPClient.fetch_impl` method to stub requests to external resources. + +`tornado_mock.httpclient.patch_http_client` does this patching on `AsyncHTTPClient` instance. +After that you can use `tornado_mock.httpclient.set_stub` method to setup an appropriate responses to the requests. + +```python +from tornado import gen +from tornado.httpclient import AsyncHTTPClient +from tornado.testing import AsyncHTTPTestCase +from tornado.web import Application, RequestHandler + +from tornado_mock.httpclient import get_response_stub, patch_http_client, set_stub + + +class TestHandler(RequestHandler): + @gen.coroutine + def get(self, *args, **kwargs): + response1 = yield self.application.http_client.fetch('http://example.com/path?query') + self.write(response1.body) + + response2 = yield self.application.http_client.fetch('http://test.com/path') + self.finish(response2.body) + + +class HTTPClientMockTest(AsyncHTTPTestCase): + def get_app(self): + app = Application([('/test', TestHandler)]) + self.app_http_client = app.http_client = AsyncHTTPClient(force_instance=True) + return app + + def test_mock(self): + patch_http_client(self.app_http_client) + + def get_response(request): + return get_response_stub(request, buffer='STUB2') + + set_stub(self.app_http_client, 'http://example.com/path', response_body='STUB1') + set_stub(self.app_http_client, 'http://test.com/path', response_function=get_response) + + self.assertEqual(self.fetch('/test').body, b'STUB1STUB2') +``` + +For more information see docstrings in [httpclient.py](tornado_mock/httpclient.py). + + + + +%package help +Summary: Development documents and examples for tornado-httpclient-mock +Provides: python3-tornado-httpclient-mock-doc +%description help +## tornado-httpclient-mock +A library for mocking requests in Tornado HTTP client + +[![Build Status](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock.svg?branch=master)](https://travis-ci.org/SuminAndrew/tornado-httpclient-mock) +[![codecov](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock/branch/master/graph/badge.svg)](https://codecov.io/gh/SuminAndrew/tornado-httpclient-mock) + +This library can be used to patch `AsyncHTTPClient.fetch_impl` method to stub requests to external resources. + +`tornado_mock.httpclient.patch_http_client` does this patching on `AsyncHTTPClient` instance. +After that you can use `tornado_mock.httpclient.set_stub` method to setup an appropriate responses to the requests. + +```python +from tornado import gen +from tornado.httpclient import AsyncHTTPClient +from tornado.testing import AsyncHTTPTestCase +from tornado.web import Application, RequestHandler + +from tornado_mock.httpclient import get_response_stub, patch_http_client, set_stub + + +class TestHandler(RequestHandler): + @gen.coroutine + def get(self, *args, **kwargs): + response1 = yield self.application.http_client.fetch('http://example.com/path?query') + self.write(response1.body) + + response2 = yield self.application.http_client.fetch('http://test.com/path') + self.finish(response2.body) + + +class HTTPClientMockTest(AsyncHTTPTestCase): + def get_app(self): + app = Application([('/test', TestHandler)]) + self.app_http_client = app.http_client = AsyncHTTPClient(force_instance=True) + return app + + def test_mock(self): + patch_http_client(self.app_http_client) + + def get_response(request): + return get_response_stub(request, buffer='STUB2') + + set_stub(self.app_http_client, 'http://example.com/path', response_body='STUB1') + set_stub(self.app_http_client, 'http://test.com/path', response_function=get_response) + + self.assertEqual(self.fetch('/test').body, b'STUB1STUB2') +``` + +For more information see docstrings in [httpclient.py](tornado_mock/httpclient.py). + + + + +%prep +%autosetup -n tornado-httpclient-mock-0.2.3 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-tornado-httpclient-mock -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot - 0.2.3-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..edcb5df --- /dev/null +++ b/sources @@ -0,0 +1 @@ +04128a0960b8445f1ea02fe87c27fbfc tornado-httpclient-mock-0.2.3.tar.gz -- cgit v1.2.3